Vim: Как изменить цвет подсветки для поисковых хитов и выбора быстрого исправления - PullRequest
105 голосов
/ 18 августа 2011

Я использую цветовую схему пустыни, которая использует белый текст на оранжевом фоне для выделения результатов поиска. Тот же шаблон используется для выбранной записи в окне быстрого исправления.

Белое на оранжевом плохо читается. Как мне изменить это в .vimrc?

Редактировать: Спасибо за быстрый ответ, за схему пустыни Я сейчас использую следующую модификацию подсветки поиска:

highlight Search guibg='Purple' guifg='NONE'

Фиолетовый цвет довольно легко обнаружить визуально, и он ИМХО не используется для окрашивания синтаксиса в схеме пустыни.

Ответы [ 3 ]

145 голосов
/ 18 августа 2011

Посмотрите на $VIMRUNTIME/colors/desert.vim.Цветовые сопоставления определяются с помощью команды hi[ghlight].Подсветка поиска определяется как

hi Search guibg=peru guifg=wheat

для графического интерфейса пользователя и

hi Search cterm=NONE ctermfg=grey ctermbg=blue

для терминалов.

Вы можете переопределить эту настройку в вашем .vimrc, используя тот жекоманда после выбора colorscheme.Введите :h hi для справки.

36 голосов
/ 17 декабря 2017

Для меня я также должен добавить hlsearch в syntax on в ~/.vimrc

set hlsearch
hi Search ctermbg=LightYellow
hi Search ctermfg=Red

Внутри VIM вы также можете сделать: :highlight Search ctermfg=yellow, чтобы изменить его на лету.

  • ctermfg для цвета переднего плана
  • ctermbg для фона

Доступные цвета на странице документации vi :

*cterm-colors*

NR-16   NR-8    COLOR NAME 
0       0       Black
1       4       DarkBlue
2       2       DarkGreen
3       6       DarkCyan
4       1       DarkRed
5       5       DarkMagenta
6       3       Brown, DarkYellow
7       7       LightGray, LightGrey, Gray, Grey
8       0*      DarkGray, DarkGrey
9       4*      Blue, LightBlue
10      2*      Green, LightGreen
11      6*      Cyan, LightCyan
12      1*      Red, LightRed
13      5*      Magenta, LightMagenta
14      3*      Yellow, LightYellow
15      7*      White
4 голосов
/ 09 февраля 2018

В моем случае строка в окне QuickFix показала нечитаемый серый на голубом, который отличался от моих результатов поиска (более приятный черный на персиковом) Это было подтверждено командой

:hi

, который показал форматирование QuickFixLine и Search как установленное на

QuickFixLine   xxx term=reverse guibg=Cyan
Search         xxx term=reverse ctermfg=0 ctermbg=222 guifg=#000000 guibg=#FFE792

, где xxx имел типовой формат,

Я добавил следующую строку к своему ~/.vimrc

hi QuickFixLine term=reverse ctermbg=52

и теперь в моем терминальном окне у меня более приятный темно-красный фон. Выполнение hi: показывает добавление изменения цвета фона для моего ternimal:

QuickFixLine   xxx term=reverse ctermbg=52 guibg=Cyan

(vim 8 на MacOS High Sierra в iTerm2, с темой Молокаи)

...