Infelizmente, o vim não tem nenhum mecanismo para exibir uma linha vertical após uma coluna como você deseja (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 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>Hpara alternar as colunas acima de 80 sendo realçadas.
'colorcolumn' é uma lista separada por vírgulas de colunas da tela que são 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 por '+' ou '-', que é adicionado ou subtraído da 'largura do texto'.
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
Acho que é bom observar aqui que a cor é determinada automaticamente pela cor de realce, a menos que você a defina manualmente como no exemplo.
Alex Hart,
Observe que a highlightconfiguração deve ser definida após qualquer colorschemecomando, pois isso anularia a cor de destaque.
c4urself de
7
Eu escolhi brilhante, queime seu cérebro vermelho ... porque você sabe ... comprimento da linha
Ron Dahlgren
Você conhece uma maneira de ter duas cores diferentes para a coluna colorida? Eu gostaria de ter dois: um simples com 80 caracteres para o código e um muito fraco com 72 caracteres para texto corrido / comentários.
Alice
Seria bom mencionar que textwidthtambém faz o vim quebrar quando você está digitando.
pintos
12
Existe outra maneira de notificar sobre a longa fila.
destaque OverLength ctermbg = red ctermfg = white guibg = # 592929
match OverLength /\%81v.*/
Respostas:
Editar: Para Vim> = 7.3 veja a resposta abaixo .
Infelizmente, o vim não tem nenhum mecanismo para exibir uma linha vertical após uma coluna como você deseja (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 no seu
.vimrc
):Então você pode usar
<Leader>H
para alternar as colunas acima de 80 sendo realçadas.fonte
Novo no Vim 7.3:
Exemplo dos documentos:
Você também pode usar números absolutos:
fonte
highlight
configuração deve ser definida após qualquercolorscheme
comando, pois isso anularia a cor de destaque.textwidth
também faz o vim quebrar quando você está digitando.Existe outra maneira de notificar sobre a longa fila.
Preocupações com o layout da coluna Vim 80
fonte
Eu uso o
match ErrorMsg '\%>80v.\+'
qual destacará qualquer coisa acima de 80 caracteres com vermelho.Coloquei esse comando em meu python.vim e ruby.vim em ~ / .vim / after / ftplugin /.
fonte
Várias respostas aqui http://vim.wikia.com/wiki/Highlight_long_lines autocommand simples
fonte