Cambiar el color de fondo en vim en una columna determinada
Pregunta
Me gustaría poder resaltar el margen de ajuste / ancho del texto en vim cambiando el color de fondo (¿o tal vez solo una línea?). Muchos IDEs tienen esto. Me burlé de lo que estoy hablando:
¿Alguien sabe si esto se puede hacer en macvim o gvim?
Solución
Prueba esto:
:match ErrorMsg '\%>80v.\+'
Se resaltará el texto más allá de 80 caracteres, puede reemplazar '80' con cualquier ancho de envoltura que tenga. Sin embargo, solo resaltará los caracteres que exceden el ancho, y luego solo en líneas que en realidad son más largas que el ancho.
Consulte http://vim.wikia.com/wiki/Highlight_long_lines para obtener más información, pero casi todos logran lo mismo.
Otros consejos
Desde Vim 7.3 es posible tener columnas resaltadas de esta manera:
Para establecerlo en el ancho de texto actual
:
:set cc=+1
O puede establecerlo en un valor predefinido:
:set cc=80
Puede cambiar su color de esta manera:
:hi ColorColumn ctermbg=lightgrey guibg=lightgrey
Consulte la ayuda para obtener más detalles:
:help colorcolumn
autocmd FileType * execute "setlocal colorcolumn=" . join(range(&textwidth,250), ',')
highlight ColorColumn guibg=#303030 ctermbg=0
¡El gran problema con esto es que el resaltado de la columna de color tiene mayor prioridad que hlsearch! Así que, básicamente, no podrá ver los elementos de búsqueda resaltados más allá de ese margen ...