Avez-vous déjà rencontré un problème dans un fichier YAML, Python ou tout autre fichier qui met l'accent sur l'indentation ?
Et plus tard, vous vous êtes rendu compte que tout dans le fichier était correct, à l'exception de l'indentation et avez vu qu'il y avait une ligne indentée avec 3 espaces au lieu de 4 espaces ?
Cela arrive souvent. La plupart des IDE vous permettent de visualiser les caractères spéciaux et d'identifier la fin de ligne, les espaces et les tabulations. Vim n'est derrière aucun autre IDE. Il peut également vous montrer ces caractères cachés.
Personnages cachés dans Vim
Les caractères cachés dans Vim peuvent être considérés comme des "espaces blancs". Vous trouverez ci-dessous les caractères que Vim considère comme masqués pour une meilleure lisibilité.
eol
(fin de ligne)tab
trail
(caractère espace avant un caractère de saut de ligne)extends
(caractère dans la dernière colonne pour montrer que la ligne suivante est la continuation du retour à la ligne)precedes
(caractère dans la première colonne pour montrer que cette ligne est la continuation de la ligne précédente sous forme de retour à la ligne)conceal
nbsp
(caractère espace insécable)
Activer la visibilité des caractères masqués
Pour activer temporairement la visibilité des caractères masqués, vous pouvez utiliser la commande suivante.
:set list
Pour annuler ce changement, vous pouvez masquer à nouveau les caractères masqués en utilisant la commande ci-dessous.
:set nolist
Comme vous pouvez le voir, en activant l'option de liste, il y a maintenant $
caractère indiquant une nouvelle ligne ou un saut de ligne.
Pour rendre ce changement permanent, ajoutez la ligne suivante à votre fichier 'vimrc'.
set list
Modifier les caractères masqués
Lorsque vous activez la visibilité des caractères, Vim dispose d'un ensemble prédéfini. Comme vous l'avez vu dans le gif ci-dessus, activer la visibilité à l'aide de set list
, le caractère de retour à la ligne était indiqué par le signe dollar $
.
Mais que se passe-t-il si vous ne voulez pas le signe dollar ? Que faire si vous voulez qu'un caractère différent indique un saut de ligne ?
Vous trouverez ci-dessous un exemple de la façon dont vous pouvez utiliser différents caractères pour chaque caractère masqué.
:set listchars=eol:^,tab:-,trail:!,extends:>,precedes:<
Le caractère que vous souhaitez utiliser pour indiquer la fin de ligne (eol) doit être saisi après eol:
dans l'exemple de commande ci-dessus.
Si vous regardez la vidéo, j'ai copié des espaces et les ai collés à la toute fin de la ligne (également appelés "espaces de fin") et ils sont maintenant affichés sous la forme !
points d'exclamation.
Notez également comment la valeur par défaut eol
caractère changé de $
symbole dollar en ^
symbole circonflexe.
Si vous voulez rendre cela permanent, vous pouvez ajouter la même commande que vous avez exécutée dans votre 'vimrc' comme suit :
set listchars=eol:^,tab:-,trail:!,extends:>,precedes:<
Conclusion
Cet article explique comment activer (et désactiver) la visibilité des caractères masqués. Nous expliquons également comment modifier les symboles indiquant la présence d'un caractère masqué.
Si vous souhaitez en savoir plus que les bases de Vim, je vous recommande fortement d'utiliser ce programme de Jovica Ilic.