Comment afficher les caractères cachés dans vim?

38

Comment puis-je configurer vim pour afficher des caractères cachés tels que des tabulations ou des espaces UNIQUEMENT pendant la saisie de ces caractères? Je ne veux pas que les tabulations et / ou les espaces soient remplacés par des caractères spéciaux comme "& gt;" ou "_" lorsque le fichier est écrit.

    
posée dan0 01.11.2011 - 19:10
la source

3 réponses

43

Vous pouvez utiliser les commandes

:set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<
:set list

pour afficher tous les caractères qui ne sont pas blancs. Donc, les espaces sont la seule chose qui ne s'affiche pas.

Si vous devez absolument marquer des espaces, vous devez essayer quelque chose de moins agréable. Quelque chose comme

:%s/ /█/g

Remplacera tous les espaces par un caractère de bloc. Ensuite, vous devez le défaire avant d’écrire. Vous pouvez reconfigurer votre commande d'écriture do

cmap :w :%s/█/ /g<CR>:w

Juste une suggestion. Je n'ai pas essayé ça cependant.

    
réponse donnée Kris Harper 01.11.2011 - 20:09
la source
3

Dans mon cas, je devais me battre nbsp ,

:set listchars=nbsp:☠,tab:▸␣
:set list

Vous pouvez également utiliser ␣ au lieu de ☠

Voici un exemple où la configuration vim ci-dessus met en évidence les espaces "invisibles" et en plus, elle met en évidence les onglets (couleur rouge parce que j'utilise le plug-in vim trailing-whitespace)

    
réponse donnée Andrey Arapov 07.10.2015 - 09:47
la source
3

Les versions plus récentes de vim peuvent également afficher des espaces. (Confirmé sur vim 7.4.1689).

:set list
:set listchars=tab:→\ ,space:·,nbsp:␣,trail:•,eol:¶,precedes:«,extends:»
    
réponse donnée wisbucky 08.06.2018 - 00:41
la source

Lire d'autres questions sur les étiquettes