Je peux faire une recherche de symboles dans l'espace de travail Python avec VSCode, mais cela a cessé de fonctionner depuis un certain temps. J'attendais qu'il revienne bientôt, mais je ne suis pas revenu, alors je l'ai recherché. Le principe est que VS Code a l'extension Python de Microsoft installée. https://marketplace.visualstudio.com/items?itemName=ms-python.python
La fonction de recherche de symboles dans l'espace de travail de l'extension Python était simplement désactivée par défaut. Si vous l'activez dans les paramètres, cela fonctionnera comme avant. Personnellement, je l'utilise car il est efficace et il y a peu de problèmes. https://github.com/microsoft/vscode-python/issues/9046
Ce n'est pas grave si vous définissez le paramètre python.workspaceSymbols.enabled
sur true.
À partir de l'interface utilisateur des paramètres, cela ressemble à ceci.
En activant ce paramètre, la recherche de symboles dans l'espace de travail fonctionnera.
La touche de raccourci pour rechercher des symboles dans l'espace de travail est «Ctrl + T». Dans la palette de commandes, il s'agit de «Aller au symbole dans le rythme Works».
Puisque la fonction d'extension de Python utilise ctags
pour la recherche de symboles dans l'espace de travail, il est nécessaire d'installer les ctags séparément afin de faire fonctionner cette fonction.
Pour Windows, vous pouvez télécharger le fichier exécutable ctags à partir de GitHub et le placer à un emplacement où le chemin passe. Vous pouvez également spécifier le chemin d'accès ctags dans les paramètres d'extension.
https://github.com/universal-ctags/ctags-win32/releases
La fonction de recherche de symboles crée automatiquement un fichier tags
dans le répertoire .vscode
de votre espace de travail. (Il semble que cette fonction a été désactivée par défaut à cause de cette spécification.)
Microsoft Python Language Server
Si vous utilisez Microsoft Python Language Server comme moteur d'IntelliSense, il semble que vous puissiez rechercher des symboles dans l'espace de travail sans utiliser de ctags.
Pour basculer vers Microsoft Python Language Server, définissez python.jediEnabled
sur false dans les paramètres d'extension Python. Si true, un outil d'analyse statique pour Python appelé Jedi
est utilisé. Jedi est utilisé par défaut.
https://pypi.org/project/jedi/
Personnellement, Jedi semble mieux fonctionner avec l'achèvement de la bibliothèque standard, j'utilise donc Jedi avec les paramètres par défaut.
Vous pouvez rechercher des symboles dans un fichier avec Aller au symbole dans l'éditeur
de Ctrl + Maj + O
. Cela n'utilise pas les ctags même si vous utilisez Jedi. (Cela fonctionne même si python.workspaceSymbols.enabled
est faux)
Je pense qu'il est bon de l'utiliser correctement avec la recherche dans l'espace de travail. De plus, si vous entrez :
au début, il sera trié par catégorie, ce qui est pratique.
Recommended Posts