Certains éditeurs de texte d'interface graphique ont une ligne verticale qui sert de marqueur de longueur de ligne (cela permet de conserver les lignes de moins de 80 caractères dans les fichiers de code source).
Est-il possible d'avoir quelque chose de similaire dans vim/gvim? Je connais l'option de règle vim, mais il n'est pas très pratique de la suivre visuellement sur un grand écran.
Edit: quand googler pour "colorcolumn" pour en savoir plus, j'ai constaté que cette question est un doublon de https://stackoverflow.com/questions/235439/vim-80-column-layout -concerns
Juste exécuter ceci
:set colorcolumn=72
Vous pouvez également préfixer l'argument avec -
ou +
pour mettre le marqueur avec autant de colonnes à gauche ou à droite de textwidth
et accepter une liste de colonnes séparée par des virgules. Je pense que l'option colorcolumn
n'est disponible que dans Vim 7.3. Voir
:help colorcolumn
Extrait du discours de Damian Conway "Plus instantanément meilleur, Vim" à OSCON 2013:
highlight ColorColumn ctermbg=Magenta
call matchadd('ColorColumn', '\%81v', 100)
Le caractère est mis en surbrillance en magenta (la capture d'écran est dans DarkCyan
) lorsque la ligne dépasse le maximum de 80 caractères.
Pour gVim: il est préférable de déplacer ces 2 lignes vers la dernière partie de votre fichier .vimrc
afin de vous assurer qu'il fonctionne.
Vous pouvez essayer ceci:
grep '.\{81\}' file
ou
set colorcolumn=80
(ou l'équivalent abrégé)
set cc=80
ou comme mentionné ci-dessus:
match ErrorMsg '\%>80v.\+'
Ci-dessous, une astuce maladroite de Hacking Vim: un livre de recettes pour tirer le meilleur parti du dernier éditeur de Vim de Kim Schultz.
Il met en surbrillance ErrorMsg
(généralement le rouge vif) des lignes comportant plus de 80 caractères. Fonctionne bien pour moi.
function! RemoveWidthLimitWarnigns()
silent! call matchdelete(4)
endfunction
function! InsertWidthLimitWarnings()
call RemoveWidthLimitWarnigns()
call matchadd("ErrorMsg", "\\%>79v.\\+", 10, 4)
endfunction