Встановіть кольори підсвічування vim-дужки


80

Я використовую, :set showmatchщоб виділити відповідну дужку або дужку, коли курсор перевищує одиницю.

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

Коли курсор знаходиться над другою фігурною дужкою:
Курсор над другою фігурною дужкою

і коли курсор знаходиться безпосередньо праворуч від фігурної дужки:
Курсор праворуч

Тут використовується моя кольорова схема терміналу, яка взята з Solarized . На жаль, трохи важко розібратися, яка саме підсвітка відповідає фігурній дужці, а яка курсор, коли фігурні дужки близько.

Чи є vimпараметр, за допомогою якого я можу змінити його колір, скажімо, на bold magentaANSI? Мене особливо не цікавить перепризначення моїх кольорів ANSI всередині терміналу або оболонки - я хотів би vimпараметр -specific, якщо він існує.

Відповіді:


104

Ви можете змінити кольори, наприклад, на синій на зелений

hi MatchParen cterm=none ctermbg=green ctermfg=blue

просто помістіть його у свій файл vimrc.

в основному, ctermвизначає стиль, який може бути none, underlineабо bold, в той час як ctermbgі ctermfgє, як це випливає з їх назв, кольором тла та переднього плану, тому змінюйте їх, як вам подобається.

у вашому випадку ви можете захотіти

hi MatchParen cterm=bold ctermbg=none ctermfg=magenta

10
Дякую за це! Якщо ви використовуєте графічний інтерфейс, це працює досить добре. "привіт MatchParen guibg = NONE guifg = blue gui = bold"
Роберт Валер,

2
Блін ... Я шукав це з 1 року! Велике спасибі
Yves Lange

1
Натрапив на цю відповідь, коли я шукав, як вимкнути цю функцію (MatchParen), бо кольори так дратували (молокай). Хтось повинен виправити за замовчуванням ...
JepZ

ви, хлопці, рятуйте мій день!
zx1986

1
thnx! Я використовую Neovim, і в моєму випадку мені довелося встановити hi MatchParen guifg=lightblue guibg=darkblue.
Іммануель Вайнахтен

7

Я використовую vividchalkкольорову схему macvim, і жодне з різних рішень, які я спробував, не працювало для мене. Але я шукав файл:

~/.vim/colors/vividchalk.vim

for, MatchParenі я знайшов цей рядок:

call s:hibg("MatchParen","#1100AA","DarkBlue",18)

Я прокоментував цей рядок, потім скопіював цей рядок і змінив його на:

 call s:hibg("MatchParen","#FF0000","Red",18)

якому вдалося виділити відповідні дужки червоним кольором, що набагато легше побачити. Сподіваюся, це допомагає комусь іншому.

Якщо ви хочете короткочасно перейти до відкриваючої дужки / батьківської дужки / дужки, коли ви вводите закриваючу дужку / батьківську дужку / дужку, додайте:

set showmatch

to ~ / .vimrc працював у мене.

Дуже зручний фокус - встановити курсор на дужку / батьківську / фігурну дужку, а потім набрати текст, %щоб перейти до відповідної дужки / батьківської / фігурної дужки. Це особливо корисно, коли відповідна дужка / батьківська дужка прокручується зі сторінки. Набравши %вдруге, ви повернетесь туди, звідки ви прийшли.


5

Спробуйте :!ls $VIMRUNTIME/colorsце стандартні кольорові схеми Vim supply. Потім змініть колірну схему, :colorscheme nameзнайдіть колірну схему, яка вам подобається, і скопіюйте колірну схему, :!cp $VIMRUNTIME/colors/<name>.vim ~/.vim/colors/new_name.vimвідредагуйте її та встановіть за допомогою команди кольорової схеми або краще додайте colorscheme nameу файл vimrc. Після змін у кольорі файл :colorscheme nameперезавантажує кольори Vim. Це зручно :vspvim, редагуйте файл кольорів в одній половині, перевіряйте зміни в іншій. Я використав відповідь nye17 та додав hi MatchParenрядок до мого color_file.vim, це працює просто чудово.
Посилання:
Vim help
Як керувати кольорами
Про кольори Termianl


0

Кольори, які я використовую для підсвічування vim, (з мого ~ / .vimrc):

" set sensible highlight matches that don't obscure the text
:highlight MatchParen cterm=underline ctermbg=black ctermfg=NONE
:highlight MatchParen gui=underline guibg=black guifg=NONE

НІКОЛИ не використовує колір символу з
:colourscheme ron(або якого ви коли-небудь віддаєте перевагу :!ls $VIMRUNTIME/colors)

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