Lepsze kolory, więc komentarze nie są ciemnoniebieskie w Vimie?

221

Przeważnie edytuję pliki Ruby, chociaż komentarze do plików skryptów powłoki również są #

Obecnie moje komentarze pokazują się jako ciemnoniebieskie na czarnym, co jest naprawdę trudne do odczytania.

Zobacz zrzut ekranu.

Jak mogę zmienić ich kolor?

Jestem gotów rozważyć różne schematy dla wszystkich kolorów, chociaż podoba mi się czarne tło.

Zrzut ekranu okna terminala z uruchomionym Vimem.  Komentarze są ciemnoniebieskie na czarnym tle, co czyni je mało widocznymi.

Michael Durrant
źródło
4
Lubię kontrastowe tło dla komentarzy - oddziela je od kodu, np. hi Comment ctermbg=gray ctermfg=darkblue. Możesz ustawić schemat kolorów, a następnie zmieniać go krok po kroku; umieść bity w osobnym pliku i sourcena końcu vimrc.
goldilocks
1
TL; DR Po prostu edytuj ~ / .vimrc i dodaj linię colorscheme desert
intotecho

Odpowiedzi:

229

Istnieje wiele schematów kolorów, które są zwykle dystrybuowane razem z vimem. Możesz je wybrać za pomocą :colorpolecenia.

Możesz zobaczyć dostępne schematy kolorów w colorsfolderze vima , na przykład w moim przypadku:

$ 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

Zwykle używam desert. Więc otwieram vim, a następnie wchodzę :color deserti wchodzę. Aby domyślnie mieć schemat kolorów przy każdym otwarciu vim, dodaj :color desertdo swojego ~/.vimrc.

(Michael, OP) To było dobre. Terminal wygląda jak:

Przykład VIM w pliku Ruby z podświetlaniem składni w różnych kolorach

powtórna rozgrywka
źródło
25
Możesz także przełączać dostępne kolory za pomocą TAB po wpisaniu :color.
Daddy32,
148

Ponieważ używasz ciemnego tła w swoim terminalu, wystarczy ustawić

:set background=dark

zamiast domyślnego

:set background=light

Kolory zostaną następnie automatycznie ustawione poprawnie.

Jeśli chcesz mieć to na stałe, dodaj linię

set background=dark

do twojego $HOME/.vimrcpliku.

Jofel
źródło
12
Chociaż zaakceptowana odpowiedź zawiera przydatne informacje, ta odpowiedź jest o wiele bardziej zwięzła na temat podstawowej przyczyny problemu dla osób takich jak ja, którzy wolą okno terminali o ciemnym temacie.
Mark Edington,
4
Niestety nadal używa tego prawie nieczytelnego ciemnoniebieskiego w niektórych miejscach.
rooby
2
@rooby Często możesz zmienić domyślne kolory w emulatorze terminala, zobacz także inne odpowiedzi.
jofel
3
Wydaje się dość dziwne, że debian (przynajmniej) domyślnie przyjmuje ciemne tło w oknie terminala, ale vim tej samej dystrybucji domyślnie przyjmuje jasne tło o terminalu.
James Bowery,
2
Myślę, że możesz także użyć bgzamiastbackground
abonet
26

Możesz to zrobić ręcznie za pomocą tego polecenia:

:hi Comment guifg=#ABCDEF

Gdzie ABCDEFjest odpowiedni kolorowy kod szesnastkowy .

Aby było trwałe, musisz dodać te linie do swojego ~/.vimrcpliku (na przykładzie zielony):

syntax on
:highlight Comment ctermfg=green
terdon
źródło
5
Możliwe jest również sprawdzenie aktualnych ustawień podświetlenia za pomocą :hilub :highlight(tj. Bez żadnych innych argumentów).
evilsoup
1
Możesz także zmienić inne typy, takie jak ciągi znaków w obsługiwanych typach dokumentów, na przykład:highlight String ctermfg=green
aggregate1166877
14

Jedną z opcji, którą znalazłem, były preferencje terminala (górne menu, a nie okno).

Ma to preferencje profilu, a następnie zakładkę koloru, np

wprowadź opis zdjęcia tutaj

Pomogła zmiana wpisu palety 5 z ciemnoniebieskiego na jasny liliowy. W końcu wybrałem xterm jako schemat kolorów i rozjaśniłem kolor komentarza npwprowadź opis zdjęcia tutaj

Michael Durrant
źródło
2
Moje jedyne pytanie brzmi teraz, czy mogę zapisać te preferencje w pliku, aby były dostępne dla nowej konfiguracji komputera.
Michael Durrant
2
Używam xterm i ustawiam niebieski kolor na coś smacznego dla moich oczu w .Xresources: „XTerm * color4: jasnoniebieski”.
holygeek
9

Miałem właśnie ten problem jakiś czas temu, rozwiązaniem jest umieszczenie następującej linii w pliku vimrc:

set t_Co=256

A następnie może być konieczne umieszczenie następujących elementów na końcu swojego ~ / .profile:

#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

a następnie możesz ustawić:

hi Comment      ctermfg=lightblue

w pliku vimrc, a następnie będziesz miał jasnoniebieskie komentarze.
vimrc 256: http://vim.wikia.com/wiki/256_colors_in_vim

Zauważyłem też, że ekran stał się nieco ładniejszy, ustawiając go na 256.

Hermann Ingjaldsson
źródło
7

Jeśli na ciemnym tle w Debianie, a następnie odkomentowanie set background=darkw /etc/vim/vimrcpomaga też.

Lub, jeśli nie chcesz ingerować w plik konfiguracyjny pakietu, raczej w (nowym)
/etc/vim/vimrc.local

Sójka
źródło
4

Oto ładne repozytorium git z ponad 700 schematami kolorów dla vima

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

sklonuj to do ~/.vim/

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

Przeglądaj schematy w vimie za pomocą

:colorscheme mrkn256

(zastąp mrkn256jedną z tych nazw ls ~/.vim/colors(bez .vimrozszerzenia))

Aby ustawić go na stałe, edytuj ~/.vimrcdodaj / zmień

colorscheme mrkn256
Michael D.
źródło
3

Może zbyt daleko od tematu, ale oto idzie

W systemie Windows 10 WSL (Windows Subsystem for Linux)

to zadziałało dla mnie (w .vimrc)

składnia włączona

colorscheme desert (lub dowolna kolorystyka)

W8WCA
źródło
-1
:colo desert

Używam tego polecenia na przykład do podświetlania komentarzy;)

basista
źródło