Vim - изменить подсветку текущей строки быстрого исправления. (QuickFixLine) - PullRequest
1 голос
/ 08 марта 2020

Как изменить подсветку QuickFixLine, чтобы в ней было несколько выделений в одной строке? Например:

Вместо выделения всей строки следующим образом: Quickfix window with currently highlighted line

Измените передний план подсветки быстрого кода следующим образом: How I would like it to be

Как я могу это сделать?

1 Ответ

2 голосов
/ 08 марта 2020

Вы не можете создать несколько выделений на одной строке с QuickFixLine, в общем случае.

Однако QuickFixLine применяется поверх выделения, которое уже существует в окне быстрого исправления (которое определяется правилами синтаксиса.)

Итак, если вы не касаетесь определенных атрибутов, назначенных правилами синтаксиса (в данном случае, цвета переднего плана), и вы ' перебирая только другие атрибуты (в данном случае цвет фона и настройку текста, выделенного жирным шрифтом), вы можете добиться именно того эффекта, который вам нужен.

Например, применение этой команды должно достичь эффекта, которого вы добились :

:hi QuickFixLine ctermfg=NONE cterm=bold guifg=NONE gui=bold

Вы можете сделать это постоянным, добавив правило в ваш vimr c, чтобы применить это изменение после изменения схемы цветов, с помощью:

augroup vimrc_colors
  au!
  au ColorScheme * hi QuickFixLine ctermfg=NONE cterm=bold guifg=NONE gui=bold
augroup END

Кажется, вы уже используя собственную тему, так что вы можете рассмотреть возможность ее изменения, чтобы не устанавливать цвет переднего плана, а вместо этого установить жирный атрибут:

hi QuickFixLine
   \ ctermbg=180 cterm=bold
   \ guibg=#334659 gui=bold
...