Vim est la syntaxe soulignant mon fichier d'une manière amusante, et je veux savoir quel fichier de syntaxe est responsable de ce comportement. Comment savoir quels fichiers de syntaxe ont été chargés par vim?
Vim est la syntaxe soulignant mon fichier d'une manière amusante, et je veux savoir quel fichier de syntaxe est responsable de ce comportement. Comment savoir quels fichiers de syntaxe ont été chargés par vim?
Réponses:
Pour savoir quels fichiers ont été chargés par Vim, exécutez
:scriptnames
:echo b:current_syntax
. Pour voir les éléments de syntaxe actuellement en vigueur, faites comme suggéré par Ingo et exécutez-les :syntax list
. Ce dernier peut être utile si les éléments de syntaxe de plusieurs fichiers de syntaxe sont en vigueur, comme indiqué par Ingo.
/usr/share/vim/vim73/filetype.vim
. Après avoir utilisé la commande ci-dessus, j’ai réalisé qu’il utilisait la version de MacVim sur ~/Applications/MacVim.app/Contents/Resources/vim/runtime/filetype.vim
. Si vous avez installé MacVim, assurez-vous de modifier le fichier correct.
/usr/share/vim/vim81/syntax/cf.vim
pour moi). J'ai installé un cf.vim personnalisé car le standard est daté. :scriptnames
montre les deux fichiers. La valeur par défaut est inférieure dans la liste de scripts. cependant, le premier est utilisé. Si vous regardez /usr/share/vim/vim81/syntax/cf.vim
, il y a un garde if exists("b:current_syntax") finish endif
. Donc, dans mon cas, cela a scriptnames
été utile, mais j'ai dû approfondir un peu.
La syntaxe du tampon actuel peut être interrogée via
:setlocal syntax?
Il correspond généralement (mais pas nécessairement) au type de fichier du tampon ( :setlocal filetype?
).
Pour un regard plus profond,
:syntax list
affiche toutes les définitions de syntaxe (certaines syntaxes (peuvent) incluent les syntaxes d'autres langages, par exemple, java
has html
pour le balisage de commentaire JavaDoc).
Vous pouvez voir quels types de fichiers sont actuellement utilisés et par
:verbose set ft ?
Le plugin manipulant le type de fichier est probablement situé à
:e $VIMRUNTIME\ftplugin