Dans la plupart des cas, je souhaite utiliser tabstop=4
lors de l'édition de fichiers. Mais pour certains types de fichiers, comme le fichier xml, je veux utiliser tabstop=2
.
J'ai ajouté
au filetypedetect FileType xml,html,xhtml,javascript set tabstop=2 softtabstop=2 shiftwidth=2
dans mon .vimrc
dossier. Cela fonctionne si je ne modifie qu'un seul fichier. Mais si j'édite plusieurs fichiers, il ne peut pas définir correctement les taquets de tabulation pour tous les tampons. Il semble que le type de fichier soit détecté et défini uniquement au démarrage, et ne change jamais depuis.
Je veux le FileType
définir à chaque fois que je change de tampon. Comment puis-je faire cela ?
Réponse acceptée :
Je ne sais pas pourquoi votre version ne fonctionne pas, mais je peux le faire en utilisant le call
option et mettre les paramètres dans une fonction comme celle-ci :
set tabstop=4
set softtabstop=4
set shiftwidth=4
function! setAltPrefs()
set tabstop=2
set softtabstop=2
set shiftwidth=2
endfunction
autocmd FileType xml,html,xhtml,javascript call setAltPrefs()
Cela devrait être déclenché chaque fois qu'un fichier est chargé dans un tampon ou que le type de fichier change. Le seul problème serait que vous rechangiez un tampon de l'un des types personnalisés en un autre qui ne devrait être que les valeurs par défaut. Dans ce cas rien ne changera. Vous devrez configurer une autre fonction pour qu'elle se déclenche sur tous les types de fichiers si vous avez besoin de couvrir ce cas d'utilisation.