Por que esses dois autocmd vim se sobrepõem?

0

Eu tenho essas duas configurações autocmd no meu .vimrc

autocmd FileType python highlight OverLength ctermbg=red ctermfg=white guibg=red
autocmd FileType python match OverLength /\%80v.\+/
autocmd FileType python highlight ExtraWhitespace ctermbg=blue guibg=blue
autocmd FileType python match ExtraWhitespace /\s\+$/

O primeiro mostrará a parte da linha com mais de 80 caracteres na cor de fundo vermelho.
Enquanto isso, o segundo mostrará espaço em branco extra no final da linha em azul.

O problema é que eles não podem trabalhar juntos!
Se eu habilitar os dois, apenas o segundo ExtraWhitespace funciona. Mas se eu comentei o ExtraWhitespace , OverLength começa a funcionar corretamente.

Por que isso aconteceu, como consertar isso?

    
por Zen 17.03.2015 / 15:56

1 resposta

2

Use :2match para o segundo (veja :help :2match para detalhes e observe também que :3match é usado para matchparen plugin):

autocmd FileType python highlight OverLength ctermbg=red ctermfg=white guibg=red
autocmd FileType python match OverLength /\%80v.\+/
autocmd FileType python highlight ExtraWhitespace ctermbg=blue guibg=blue
autocmd FileType python 2match ExtraWhitespace /\s\+$/
    
por 17.03.2015 / 17:05

Tags