Eu configurei a cor de fundo da linha atual para cinza claro assim:
hi CursorLine cterm=NONE ctermbg=253
(Observe que meu esquema de cores é preto e branco.)
No entanto, dessa forma, qualquer cor de fundo definida pelo realce da sintaxe é substituída por isso, ou seja, se uma palavra na linha atual for destacada, por exemplo, branco sobre vermelho, vejo o texto em cinza branco sobre claro. Só vejo que a linha (ou parte dela) deve ficar destacada em vermelho se eu mover o cursor para outra linha.
O que eu gostaria é que apenas a parte da linha atual para a qual nenhuma cor de fundo especial esteja definida seja destacada em cinza claro pela linha do cursor, mas que o realce da linha do cursor seja substituído pelo realce da sintaxe.
Isso é possível?
PS: O caso específico em que encontrei esse problema é a segunda linha em um arquivo tmp git commit, em que o texto na segunda linha é branco sobre vermelho (por qualquer motivo).
fonte
Respostas:
Certa vez, sugeri uma alteração na lista de discussão vim_dev , mas Bram foi contra, com o seguinte raciocínio:
Alternativa
Com a
matchadd()
função, você pode especificar um{priority}
que determina se o realce estará na frente ou atrás da linha do cursor. Infelizmente, isso é totalmente diferente do realce da sintaxe e tem um escopo diferente. Portanto, não ajuda com problemas de sintaxe, mas possibilita outros usos, por exemplo, realces no meu plug-in Mark .Gambiarra
Você pode manter a cor de fundo da sintaxe se usar o
reverse
atributo Por exemplo, em vez de definirfaça isso:
Infelizmente, agora você tem outro problema: A cor do texto (primeiro plano) muda de preto para a cor da linha do cursor. Isso funciona bem para o erro branco sobre vermelho, destacando você mencionando (passando para (brilhante) -cursorline-on-red), mas menos bem para o meu
Todo
exemplo (cursorline-on-Yellow). Além disso, oreverse
atributo não é suportado em todos os terminais.Sumário
Infelizmente, não há solução fácil. Apesar das deficiências, eu uso a solução alternativa acima (parabéns a @romainl, em cuja configuração eu vi isso pela primeira vez!)
fonte
:hi link
para grupos existentes (comoTodo
). Minha solução alternativa teria que alterar seu esquema de cores pessoal, diretamente ou no seu.vimrc
.