Vim konfiguruje kolorowanie numerów linii

95

Szukam sposobu na skonfigurowanie koloru używanego do numerowania linii (jak :set nuw :) w Vimie. Domyślny na większości platform wydaje się być żółty (który jest również używany w przypadku niektórych podświetlonych tokenów). Chciałbym jak pokolorować numery linii dim szary; gdzieś w pobliżu #555. Nie jestem jednak wybredna, każdy stonowany kolor byłby akceptowalny.

Daniel Śpiewak
źródło
Jeśli chcesz zachować stałe preferencje schematu kolorów na stałe w vimie i jeśli chcesz ustawić również numerację, to jest to takie proste, przejdź przez poniższy link i postępuj zgodnie z krokami, które są tak łatwe do zrobienia . jigarpra.blogspot.com/2020/03/…
Jgs pra

Odpowiedzi:

146

Próbować:

help hl-LineNr

Znalazłem to poprzez:

help 'number'

co jest sposobem na uzyskanie pomocy dotyczącej 'number'opcji, zamiast :numberpolecenia.

Aby faktycznie zmienić wyświetlany kolor:

:highlight LineNr ctermfg=grey

To zmieniłoby kolor pierwszego planu dla LineNr na terminalu znakowym na szary. Jeśli używasz gVim, możesz:

:highlight LineNr guifg=#050505
Greg Hewgill
źródło
1
Czy masz łącze do dostępnych nazw kolorów i / lub formatów kolorów obsługiwanych przez to polecenie?
devios1
3
Dzięki, to zadziałało dla mnie. Dodanie `` numeru zestawu '' i `` podświetlenia LineNr ctermfg = grey '' w oddzielnych wierszach na końcu mojego pliku ~ / .vimrc na Ubuntu 12.04 włączone szare numery linii za każdym razem, gdy otwieram plik za pomocą vim
James Nicholson
2
Siedem lat później wydaje się, że gVim radzi sobie z "szarym", ale nie obsługuje formatu liczb, który opisujesz. : wyróżnij LineNr guifg = szary pracował dla mnie.
horta
2
Jak zmienić ustawienia podświetlenia dla aktywnych LineNr? UPD: OdpowiedźCursorLineNr
Herrgott
1
Dziękuję za odpowiedź. Komenda :highlight LineNr ctermfg=greydziała na mnie, jednak dodanie highlight LineNr ctermfg=greyw ~/.vimrcpliku niczego nie zmienia. Czy ktoś ma pomysł?
ecjb
36

Aby trwale zmienić numery linii, dodaj poniższe do swojego .vimrc

highlight LineNr term=bold cterm=NONE ctermfg=DarkGrey ctermbg=NONE gui=NONE guifg=DarkGrey guibg=NONE

Oczywiście możesz zmienić ctermfgi guifgna dowolny kolor.

qasimalbaqali
źródło
1
Aby uzyskać akceptowaną odpowiedź do pracy w moim .vimrc, musiałem postępować zgodnie z twoją radą i dodać ją na dole. Czy możesz wyjaśnić, dlaczego musi znajdować się na dole?
ukryta nazwa użytkownika
@mikeyprog Naprawdę nie wiem dlaczego, ponieważ znalazłem odpowiedź online, ale myślę, że zastępuje ustawienia domyślne. Ponieważ odczytałby ustawienia od góry do dołu.
qasimalbaqali
Rozgryzłem to. W rzeczywistości jest on ustawiony w poleceniu colorscheme, więc będziesz musiał go przywołać po zaktualizowaniu swojego schematu kolorów.
ukryta nazwa użytkownika
1
Po prostu napotkałem ten sam problem, co @ hidden-username - i po prostu zdałem sobie sprawę, że to dlatego, że ustawiłem motywy, kolory itp. W środku mojego vimrc. Więc ... mając to na górze, zostało nadpisane. Nadpisany. Overrode?
dwanderson
W moim doświadczenia, highlightoświadczenie musi przyjść po syntax oni colorschemeinaczej to zastąpione przez wartości domyślnych podświetlaniem składni.
Fenyl
13

W MacVimie (z Vimem 7.3 w swoim rdzeniu) znalazłem CursorLineNrpracę:

hi CursorLineNr guifg=#050505

Roshambo
źródło
2
To ustawia tylko numer bieżącej linii: bardzo przydatne, ale prawdopodobnie nie to, co było wymagane. Zapytano o to pod adresem: stackoverflow.com/questions/8247243/…
Ciro Santilli 郝海东 冠状 病 六四 事件 法轮功
3

Nie podobały mi się kolory dostarczone przez wybrany schemat kolorów, więc zmodyfikowałem kolor numerów linii w ten sposób:

colorscheme trivial256    " for light background
hi LineNr       term=bold cterm=bold ctermfg=2 guifg=Grey guibg=Grey90
Jabba
źródło