1

Я пытаюсь настроить красивую подсветку для Vdebug.

Я посмотрел на источник, и он говорит, что мне нужно нацелиться на DbgBreakptLine (я не знаю, как они называются, но это то, что вы поставили после hi).

Но если я поставлю:

hi DbgBreakptLine ctermbg=NONE ctermfg=NONE

в моей цветовой схеме vim это ничего не делает. Однако вставка этого в сеанс имеет желаемый эффект. Я могу только заключить, что Vdebug сжимает выбранные мной стили, как-то превосходя их. Но как? Это работает после моей цветовой схемы? Я так не думаю, потому что первое, что делает мой .vimrc - загружает патоген, затем выбирает мою цветовую схему.

Учитывая это, я искал в интернете какие-либо решения для перезаписи конфигурации плагинов, но не смог найти ничего полезного.

Соответствующая часть моего .vimrc:

execute pathogen#infect()
call pathogen#helptags()

colorscheme maxbucknell

Обновить

Я посмотрел на этот вопрос и подумал, что я посмотрю на :scrip , который показывает, какие файлы загружаются когда. Конечно же, плагины загружаются после цветов. В идеале я бы хотел как-то настроить это, не меняя плагин, или сделать что-то хакерское, например, поместить команду в .vim/after .

1 ответ1

1

Вы заметили, что плагин на самом деле определяет стиль этой группы подсветки?

hi default DbgBreakptLine term=reverse ctermfg=White ctermbg=Green guifg=#ffffff guibg=#00ff00

Так как он получен после вашего ~/.vimrc и вашей схемы цветов, он переопределит любое правило с тем же именем.

К сожалению, это не очень чисто, поэтому у вас есть три варианта работы:

  • изменить цвета прямо в плагине,

  • переместите эти строки из плагина в цветовую схему и отредактируйте их по своему вкусу,

  • добавьте эти строки в ваш ~/.vimrc:

    augroup MyColors
        autocmd!
        autocmd ColorScheme * highlight DbgBreakptLine ctermbg=NONE ctermfg=NONE
    augroup END
    

Использование ~/.vim/after/ вовсе не является хаком: оно точно недокументировано , но обычно оно намного чище, чем эквивалентный беспорядок в вашем ~/.vimrc . Во всяком случае, я не уверен, что это работает для ваших конкретных потребностей. Вы можете попробовать этот плагин (никогда не пробовал), но я не уверен, что то, что вы хотите, заслуживает другого плагина в вашей настройке.

редактировать

Оказывается, вы можете сделать это с помощью ~/.vim/after/ но это решение на самом деле выглядит для меня довольно "смешно", поскольку в нем смешаны "плагины" и "схемы цветов". Как бы то ни было, просто поместите эту строку в ~/.vim/after/plugin/foo.vim (часть перед точкой имени файла не имеет значения):

hi DbgBreakptLine ctermbg=NONE ctermfg=NONE

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .