Cores melhores para que os comentários não sejam azul escuro no Vim?

221

Principalmente, edito arquivos Ruby, embora os comentários sobre os arquivos do shell script também sejam #

Atualmente, meus comentários são exibidos em azul escuro e preto, o que é realmente difícil de ler.

Veja a captura de tela.

Como posso mudar a cor deles?

Estou disposto a considerar esquemas diferentes para todas as cores, embora goste do fundo preto como base.

Uma captura de tela de uma janela de terminal com o Vim em execução.  Os comentários são azul escuro em fundo preto, dificultando sua visualização.

Michael Durrant
fonte
4
Eu gosto de um pano de fundo contrastante para comentários - isso os diferencia do código, por exemplo. hi Comment ctermbg=gray ctermfg=darkblue. Você pode definir seu esquema de cores e alterá-lo pouco a pouco; coloque os bits em um arquivo separado e sourceno seu vimrc no final.
Goldilocks
1
TL; DR Basta editar ~ / .vimrc e adicionar a linha colorscheme desert
intotecho

Respostas:

229

Existem muitos esquemas de cores que geralmente são distribuídos junto com o vim. Você pode selecioná-los com o :colorcomando

Você pode ver os esquemas de cores disponíveis na colorspasta do vim , por exemplo, no meu caso:

$ ls /usr/share/vim/vimNN/colors/ # where vimNN is vim version, e.g. vim74
blue.vim  darkblue.vim  default.vim  delek.vim  desert.vim  elflord.vim 
evening.vim  koehler.vim  morning.vim  murphy.vim  pablo.vim  peachpuff.vim
README.txt  ron.vim  shine.vim  slate.vim  torte.vim  zellner.vim

Eu costumo usar desert. Então eu abro vim, entro :color deserte entro. Para ter o esquema de cores por padrão sempre que você abrir vim, adicione :color desertao seu ~/.vimrc.

(Michael, OP) Isso foi bom. O terminal se parece com:

Exemplo de VIM em um arquivo Ruby mostrando destaque de sintaxe em várias cores

repetição
fonte
25
Você também pode percorrer as cores disponíveis com TAB após digitar :color.
precisa saber é o seguinte
148

Como você está usando um fundo escuro no seu terminal, basta configurar

:set background=dark

em vez do padrão

:set background=light

As cores são automaticamente definidas corretamente.

Se você quiser ter isso permanentemente, adicione a linha

set background=dark

para o seu $HOME/.vimrcarquivo.

jofel
fonte
12
Embora a resposta aceita tenha informações úteis, essa resposta é muito mais concisa sobre a causa raiz do problema para pessoas como eu que preferem uma janela de terminal com tema escuro.
Mark163 de
4
Infelizmente, isso ainda usa esse azul escuro quase ilegível em alguns lugares.
ROOBY
2
@rooby Freqüentemente, você pode alterar as cores padrão no emulador de terminal, veja também as outras respostas.
Jofel
3
Parece bastante estranho que o debian (pelo menos) tenha como padrão um fundo escuro para sua janela de terminal, mas o vim da mesma distribuição tenha como padrão uma suposição de fundo claro sobre o terminal.
James Bowery
2
Eu acho que você também pode simplesmente usar bgem vez debackground
abonet
26

Você pode fazer isso manualmente com este comando:

:hi Comment guifg=#ABCDEF

Onde ABCDEFestá um código hexadecimal de cor apropriado .

Para torná-lo permanente, você precisará adicionar essas linhas ao seu ~/.vimrcarquivo (usando verde como exemplo):

syntax on
:highlight Comment ctermfg=green
terdon
fonte
5
Também é possível ver suas configurações de destaque atuais com :hiou :highlight( ou seja, sem outros argumentos).
Evilsoup 30/08
1
Você também pode alterar outros tipos, tais como cordas em apoiar tipos de documentos, exemplo:highlight String ctermfg=green
aggregate1166877
14

Uma opção que encontrei foi nas preferências do terminal (menu superior, não na janela).

Possui preferências de perfil e, em seguida, uma guia de cores, por exemplo

insira a descrição da imagem aqui

Alterar a entrada 5 da paleta de azul escuro para lilás claro ajudou. Finalmente escolhi xterm como esquema de cores e iluminei a cor do comentário, por exemploinsira a descrição da imagem aqui

Michael Durrant
fonte
2
Minha única pergunta agora é se posso agora salvar essas preferências em um arquivo para que elas estejam lá para uma nova configuração da máquina.
Michael Durrant
2
Eu uso o xterm e defino a cor azul para algo agradável aos meus olhos em .Xresources: "XTerm * color4: light sky blue".
holygeek
9

Eu tive precisamente esse problema há pouco tempo, a solução é colocar a seguinte linha no seu arquivo vimrc:

set t_Co=256

E então você pode ter que colocar o seguinte no final do seu perfil ~ /.:

#set vim terminal to 256 colors.
if [ -e /usr/share/terminfo/x/xterm-256color ]; then
    export TERM='xterm-256color'
else
    export TERM='xterm-color'
fi

e então você pode definir:

hi Comment      ctermfg=lightblue

no seu arquivo vimrc e você terá comentários em azul claro.
vimrc 256: http://vim.wikia.com/wiki/256_colors_in_vim

Também notei que a tela ficou um pouco mais bonita, definindo-a como 256.

Hermann Ingjaldsson
fonte
7

Se em um fundo escuro em Debian, então descomentando set background=darkem /etc/vim/vimrcajuda também.

Ou, se você não quiser interferir no arquivo de configuração do pacote, em (um novo)
/etc/vim/vimrc.local

Jay
fonte
4

Aqui está um belo repositório git com mais de 700 esquemas de cores para vim

https://github.com/flazz/vim-colorschemes

cloná-lo para ~/.vim/

git clone https://github.com/flazz/vim-colorschemes ~/.vim/

Visualize esquemas no vim com

:colorscheme mrkn256

(substitua mrkn256por um desses nomes ls ~/.vim/colors(sem a .vimextensão))

Para defini-lo permanentemente, edite ~/.vimrcadicionar / alterar

colorscheme mrkn256
Michael D.
fonte
3

Talvez muito longe do tópico, mas aqui vai

Para Windows 10 WSL (Windows Subsystem for Linux)

isso funcionou para mim (em .vimrc)

sintaxe ativada

deserto de cores (ou qualquer esquema de cores)

W8WCA
fonte
-1
:colo desert

Eu uso este comando para destacar os comentários, por exemplo;)

baixista
fonte