Comment puis-je configurer vim pour qu'il affiche les caractères cachés comme les tabulations ou les espaces UNIQUEMENT pendant que ces caractères sont tapés ? Je ne veux pas que les tabulations et/ou les espaces soient remplacés par des caractères spéciaux comme ">" ou "_" lorsque le fichier est écrit.
Réponses
Trop de publicités?Vous pouvez utiliser les commandes
:set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<
:set list
pour afficher tous les caractères qui ne sont pas des espaces. Les espaces sont donc la seule chose qui ne s'affiche pas.
Si vous avez absolument besoin que les espaces soient également marqués, vous devrez essayer quelque chose de moins joli. Quelque chose comme
:%s/ //g
Remplacera tous les espaces par un caractère de bloc. Vous devrez alors l'annuler avant d'écrire. Vous pourriez remodifier votre commande d'écriture de la manière suivante
cmap :w :%s// /g<CR>:w
Juste une suggestion. Je n'ai pas encore essayé.
Dans mon cas, j'ai dû me battre nbsp ,
:set listchars=nbsp:,tab:
:set list
Vous pouvez également utiliser à la place de
Voici un exemple où la configuration de vim ci-dessus met en évidence les espaces "invisibles et bizarres" et, en plus, les tabulations. (couleur rouge car j'utilise le plugin vim trailing-whitespace)
Dans vim, il suffit de taper le motif de recherche, puis de scanner avec n ou N. Si la recherche échoue, il n'y a pas d'erreur. \r. Vous pouvez obtenir votre réponse en quelques secondes.
/\r or /\n
Si vous êtes configuré pour mettre en évidence les cibles de recherche, vous verrez même où se trouvent toutes les occurrences ou l'absence d'occurrences.