Respostas:
Primeiro, o Vim procura em suas pastas de tempo de execução um colors
diretório. Aqui é onde todos os esquemas de cores devem ser armazenados ( :help 'runtimepath'
)
Isso significa que você precisará de um arquivo que esteja na ~/.vim/colors
pasta. Os esquemas de cores padrão estão localizados em $VIMRUNTIME/colors
, onde $VIMRUNTIME
está normalmente /usr/share/vim/vim74
ou nos /usr/local/share/vim/vim74
diretórios, dependendo de como o Vim está instalado (substitua vim74 por vim73 pelo Vim versão 7.3)
Agora, para chegar à parte divertida.
Para começar a criar seu próprio esquema de cores, sugiro dar uma olhada nos esquemas de cores padrão e experimentar modificá-los.
Então copie o esquema de cores padrão da $VIMRUNTIME/colors
pasta para a sua ~/.vim/colors
pasta. Nomeie algo que se distinga do nome do esquema de cores padrão. Portanto, se você copiou o desert
esquema de cores que vem com o Vim por padrão, nomeie o arquivo como default_mod.vim
ou algo nesse sentido. Abra o arquivo colorscheme e altere let g:colors_name
para também se diferenciar do arquivo colorscheme padrão. Por convenção, esse deve ser o mesmo que o nome do arquivo colorscheme.
No colorscheme, tudo que você tem a fazer é dar às cores para ctermbg
, ctermfg
, guibg
, guifg
(para o fundo terminal, plano terminal, fundo gui, primeiro plano cores gui respectivamente) para os diferentes construído em grupos de destaque. Para verificar a lista de grupos de destaque que você pode modificar, confira :help highlight-default
. Opcionalmente, você também pode usar os atributos cterm
e gui
para especificar que deseja que um grupo de destaque fique em negrito ou itálico.
Por exemplo, isso definirá uma cor verde para uma String:
highlight String ctermbg=NONE ctermfg=107 guibg=NONE guifg=#95B47B
Você também pode usar os links de destaque para vincular um grupo de destaque a outro grupo. Isso é útil se você quiser que dois grupos de destaque sejam da mesma cor.
Por exemplo, você pode vincular o diffAdded
grupo de destaque ao grupo de destaque String definido acima:
highlight link diffAdded String
Confira sites como Vivify e Villustrator . Eles basicamente permitem criar ou ajustar graficamente um esquema e depois baixar os arquivos necessários.
Existem algumas ferramentas para tornar isso automático:
Outra ótima ferramenta é o RNB by romainl, que usa ERB . ERB (Embedded RuBy) é um recurso do Ruby que permite gerar algum texto a partir de modelos.
Portanto, o uso dessa ferramenta é bastante direto: primeiro você precisa definir diferentes variáveis correspondentes à nomenclatura do esquema de cores e, claro, ao conteúdo real (como as cores devem ser exibidas, quais grupos você deseja usar etc.). bastante direto porque o autor escreveu muitos comentários para ajudá-lo. Então tudo que você precisa fazer é deixar seu modelo personalizado erb e a ferramenta gerará os arquivos certos.