Vim: Як змінити колір виділення для пошукових запитів та вибору швидкого виправлення


123

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

Білий на помаранчевому не дуже читабельний. Як я можу змінити це у .vimrc?

Редагувати: Дякую за швидку відповідь, для пустельної схеми я зараз використовую таку модифікацію підсвітки пошуку:

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

Фіолетовий досить легко виявити візуально, і це IMHO не використовується для синтаксичного забарвлення в пустельній схемі.

Відповіді:


162

Подивіться $VIMRUNTIME/colors/desert.vim. Кольорові відображення визначаються там за допомогою hi[ghlight]команди. Виділення пошуку визначається як

hi Search guibg=peru guifg=wheat

для GUI та

hi Search cterm=NONE ctermfg=grey ctermbg=blue

для терміналів.

Ви можете змінити цей параметр у .vimrcцій же команді після вибору своєї colorscheme. Введіть :h hiдопомогу.


2
Гей! Ти просто дав мені ще одну підказку. Я завжди використовував: help замість: h;)
Юве

2
Я знайшов кольорову гамму торта, щоб гарно задовольнити свої потреби. : colorcheme torte
James Mills

13
Можливо, вам також знадобиться, :set hlsearchякщо результати пошуку взагалі не виділяються.
Джефф Аллен

Щоб зробити це один раз для вашого поточного сеансу vim і не зберегти зміни, просто запустіть його в колишньому режимі ( :) перед hiкомандою::hi Search cterm=NONE ctermfg=grey ctermbg=blue
Nitrodist

Я бачу, що це підкреслює всі випадки. Як ви змінюєте підсвітку екземпляра, на якому зараз перебуває курсор?
Коста

49

Для мене я також повинен додати 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

6

У моєму випадку рядок у вікні 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:показує додавання зміни кольору фону для мого терміналу:

QuickFixLine   xxx term=reverse ctermbg=52 guibg=Cyan

(vim 8 на MacOS High Sierra в iTerm2, з темою molokai)

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.