pagina oficial from cancel and vim

oficial - Margen derecho en Vim



vim cancel edit (4)

¿Hay alguna manera de hacer que Vim / gVim destaque el margen derecho en el documento actual? Acabo de comenzar a trabajar con Vim por un tiempo y me pareció molesto sin el margen derecho en la columna 80.


He escrito una función vimscript en mi .vimrc para alternar columna de color cuando presiono, 8 (coma seguido de 8, donde coma es el líder definido para comandos definidos por el usuario, y ocho es mi tecla mnemotécnica para ''mostrar un margen en el 80.ª columna):

" toggle colored right border after 80 chars set colorcolumn=81 let s:color_column_old = 0 function! s:ToggleColorColumn() if s:color_column_old == 0 let s:color_column_old = &colorcolumn windo let &colorcolumn = 0 else windo let &colorcolumn=s:color_column_old let s:color_column_old = 0 endif endfunction nnoremap <Leader>8 :call <SID>ToggleColorColumn()<cr>


He reescrito la respuesta de Jonathan Hartley para las versiones anteriores de Vim, como 7.2, ya que no hay colorcolumn de colorcolumn en los Vims anteriores.

highlight OverLength ctermbg=red ctermfg=white guibg=#592929 let s:OverLengthToggleVariable=0 function! ToggleOverLength() if s:OverLengthToggleVariable == 0 match OverLength //%81v./+/ let s:OverLengthToggleVariable=1 else match OverLength // let s:OverLengthToggleVariable=0 endif endfunction " I like <leader>h since highlight starts with h. nnoremap <leader>h :call ToggleOverLength()<cr>


No hay una manera simple de visualizar el borde vertical del textwidth -margin (en Vim 7.2 y anteriores). Sin embargo, uno puede resaltar todos los caracteres más allá del límite de 80 columnas usando el comando :match .

:match ErrorMsg //%>80v./+/

Entonces, la solución general es usar el siguiente autocontrol.

:autocmd BufWinEnter * call matchadd(''ErrorMsg'', ''/%>''.&l:textwidth.''v./+'', -1)


Vim 7.3 introdujo colorcolumn.

:set colorcolumn=80

Puede ser más fácil para ti recordar la forma abreviada.

:set cc=80