without - Como mostrar a linha vertical para quebrar a linha no Vim?




vim wrap without line breaks (4)

Estou interessado em encontrar uma maneira de mostrar uma linha vertical na coluna 80 no Vim (não GVim).

Eu usei o set wrap , mas eu só quero mostrar uma linha vertical para que eu possa enrolar a longa linha eu mesmo.


Edit: Para Vim> = 7.3 veja a resposta below .

Infelizmente o vim não tem nenhum mecanismo para exibir uma linha vertical depois de uma coluna como você quer (ao contrário, digamos, TextMate). No entanto, existem indicadores visuais alternativos que você pode usar para mostrar que uma linha é muito longa.

Aqui está o que eu uso (você pode colocar isso no seu .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

Então você pode usar <Leader>H para alternar as colunas acima de 80 sendo realçadas.


Eu uso match ErrorMsg '\%>80v.\+' Que irá destacar qualquer coisa mais de 80 caracteres com vermelho.

Eu coloquei esse comando no meu python.vim e ruby.vim em ~ / .vim / após / ftplugin /.


Novo no Vim 7.3:

'colorcolumn' é uma lista separada por vírgula de colunas de tela destacadas com ColorColumn. Útil para alinhar o texto. Tornará o redesenho da tela mais lento. A coluna da tela pode ser um número absoluto ou um número precedido de '+' ou '-', que é adicionado ou subtraído de 'textwidth'.

Exemplo dos documentos:

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

Você também pode usar números absolutos:

:set colorcolumn=80







word-wrap