2009-12-17 13 views
94

Estoy interesado en encontrar una manera de mostrar una línea vertical en la columna 80 en Vim (no GVim).¿Cómo mostrar la línea vertical para envolver la línea en Vim?

He usado set wrap, pero solo quiero mostrar una línea vertical para que pueda envolver la línea larga yo mismo.

+0

duplicado Posible de [Vim 80 de columna preocupaciones de diseño] (http://stackoverflow.com/questions/235439/vim-80-column-layout-concerns) –

Respuesta

12

Editar: Para Vim> = 7.3 ver respuesta below.

Desafortunadamente vim no tiene ningún mecanismo para mostrar una línea vertical después de una columna como desee (a diferencia, por ejemplo, TextMate). Sin embargo, hay indicadores visuales alternativos que puede usar para mostrar que una línea es demasiado larga.

Esto es lo que yo uso (se puede poner esto en su .vimrc):

nnoremap <Leader>H :call<SID>LongLineHLToggle()<cr> 
hi OverLength ctermbg=none cterm=none 
match OverLength /\%>80v/ 
fun! s:LongLineHLToggle() 
if !exists('w:longlinehl') 
    let w:longlinehl = matchadd('ErrorMsg', '.\%>80v', 0) 
    echo "Long lines highlighted" 
else 
    call matchdelete(w:longlinehl) 
    unl w:longlinehl 
    echo "Long lines unhighlighted" 
endif 
endfunction 

Por lo tanto, puede utilizar <Leader>H para alternar columnas más del 80 siendo destacado.

+0

¿Qué es ? – Will

+0

La representación del script vim de la clave del líder. Consulte [Mostrar configuración actual de la clave ] (http://stackoverflow.com/questions/10389205/show-current-leader-key-setting) – Rod

+0

@Will, [Aprenda Vimscript de la manera difícil] (http: //learnvimscriptthehardway.stevelosh .com /) es un buen recurso para aprender sobre el agujero de conejo vim. – jazzabeanie

11

Hay otra manera de notificar acerca de la larga fila.

destacado Overlength ctermbg = rojo = ctermfg guibg blanco = # 592929
partido Overlength /\%81v.*/

Vim 80 column layout concerns

5

utilizo match ErrorMsg '\%>80v.\+' que pondrá de relieve algo más de 80 caracteres con rojo.

Puse ese comando en mi python.vim y ruby.vim en ~/.vim/after/ftplugin /.

265

nuevo en Vim 7.3:

'colorcolumn' es una lista separada por comas de las columnas de pantallas que se destacó con ColorColumn. Útil para alinear texto. Will hace que el redibujado de la pantalla sea más lento. La columna de la pantalla puede ser un número absoluto o un número precedido por '+' o '-', que se agrega o se resta de 'textwidth'.

Ejemplo a partir de los documentos:

:set colorcolumn=+1  " highlight column after 'textwidth' 
:set colorcolumn=+1,+2,+3 " highlight three columns after 'textwidth' 
:highlight ColorColumn ctermbg=lightgrey guibg=lightgrey 

Puede utilizar números absolutos, así:

:set colorcolumn=80 
+3

Creo que es bueno tener en cuenta que el color se determina automáticamente por su color de resaltado a menos que lo ajuste manualmente como en el ejemplo. –

+0

Tenga en cuenta que la configuración de 'resaltado' debe establecerse _después_ de cualquier comando 'colorscheme', ya que eso anularía su color de resaltado. – c4urself

+5

Fui con brillante, quemadura-tu-cerebro-rojo ... porque sabes ... longitud de línea –

Cuestiones relacionadas