Eu tenho vários highlight
comandos no meu .vimrc
arquivo. No Vim 7.3, eles entraram em vigor imediatamente após o início do Vim. Após a atualização para o Vim 7.4, esse não é mais o caso. O Vim usa seu destaque padrão inicialmente. Quando carrego .vimrc
uma segunda vez executando source ~/.vimrc
, realçar funciona como eu quero.
Você poderá reproduzir esse problema usando as seguintes etapas:
Faça uma cópia do seu
.vimrc
arquivo.Substitua
~/.vimrc
por um arquivo que contenha apenas a linhahighlight Type ctermfg=28 cterm=bold
.Execute
vim dummy.c
em um terminal de 256 cores (por exemplo, Terminal GNOME).Digite
int
no buffer. Oint
deve aparecer em fonte regular e ser verde claro, o que não é o que eu quero.Enter
:source ~/.vimrc
. Agora oint
deve aparecer em negrito e ser colorido em verde escuro.
De acordo com o artigo Como controlar / configurar as cores do vim , não há problema em colocar apenas os highlight
comandos .vimrc
. O artigo diz que você deve colocar syntax enable
os highlight
comandos, mas isso não fez nenhuma diferença.
Minha primeira correção foi para preceder cada highlight
comando .vimrc
com autocmd VimEnter *
. Isso funcionou para alguns tipos de arquivos, mas não para outros (arquivos C são um exemplo).
Qual o motivo desse comportamento? Como posso highlight
executar os comandos quando o Vim é iniciado, de modo que eles tenham efeito para todos os buffers durante toda a sessão do Vim?
fonte
set compatible
no início de.vimrc
, o destaque da sintaxe funciona conforme o esperado. Então, isso realmente parece ser esse bug em ação.highlight
comandos comautocmd ColorScheme *
, que foram propostos como uma solução alternativa no relatório de erros. Ele ainda não funciona. WolfRespostas:
Essa não é uma resposta definitiva e seu problema parece com o problema 542 . Aparentemente, você pode contornar isso, escrevendo seu próprio esquema básico de cores, em vez de escrever essas
hi ...
instruções diretamente no seu .vimrc.fonte
Na verdade, você não deve colocar seus destaques personalizados no vimrc, mas nos arquivos de sintaxe alfandegária.
Esses arquivos devem estar localizados em
~/.vim/after/syntax/filetype.vim
ondefiletype
está o tipo de arquivo esperado. Se você está mais satisfeito com um arquivo de sintaxe, mas gostaria de adicionar alguns comandos, siga estas etapas (extraídas de:h mysyntaxfile-add
)::h mysyntaxfile
é um bom lugar para obter informações sobre como corrigir seus próprios arquivos de sintaxe. Aprenda também o Vimscript The Hard Way como vários capítulos sobre este tópico.fonte
.vimrc/highlighting.vim
, criei um diretório.vimrc/syntax/after
e adicionei vários links simbólicos do formulário * tipo de arquivo *.vim
que apontam.vimrc/highlighting.vim
para esse diretório. O destaque da sintaxe ainda não funciona.~/.vim/after/syntax
não~/.vimrc
.vim
e destaque de sintaxe não funcionou, provavelmente por causa deste erro 542.Pelo que vale, eu tive esse problema com o MacVim (8.1.950 (155)). Colocar a declaração de destaque depois
colorscheme
em .vimrc a corrigiu para mim. Por exemplo:->
fonte