Vim-Farbschema durch ein Plugin überschrieben

Vim-Farbschema durch ein Plugin überschrieben

Ich versuche, einige schönere Hervorhebungen für Vdebug einzurichten.

Ich habe mir dieQuelle, und es heißt, ich muss auf ein Ziel zielen DbgBreakptLine(ich weiß nicht, wie das heißt, aber es ist das, was Sie nach einfügen hi).

Aber wenn ich eingebe:

hi DbgBreakptLine ctermbg=NONE ctermfg=NONE

in meinem Vim-Farbschema tut es nichts. Das Einfügen in eine Sitzung hat jedoch den gewünschten Effekt. Ich kann nur zu dem Schluss kommen, dass Vdebug meine gewählten Stile irgendwie überlagert, indem es Vorrang erhält. Aber wie? Läuft es nach meinem Farbschema? Ich glaube nicht, denn das erste, was meine .vimrc tut, ist, Pathogen zu laden.Dannwählt mein Farbschema aus.

Vor diesem Hintergrund habe ich im Internet nach Lösungen zum Überschreiben der Konfiguration durch Plug-Ins gesucht, konnte jedoch nichts Hilfreiches finden.

Der relevante Teil meiner .vimrc:

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

colorscheme maxbucknell

Aktualisieren

Ich habe mir angesehendiese Frage, und dachte, ich schaue mir mal an :scrip, wo angezeigt wird, welche Dateien wann geladen werden. Natürlich werden Plugins nach den Farben geladen. Idealerweise hätte ich gerne eine Möglichkeit, dies anzupassen, ohne das Plugin zu ändern oder etwas Hackendes zu tun, wie den Befehl in einzufügen .vim/after.

Antwort1

Haben Sie bemerkt, dass das Plugin tatsächlich den Stil dieser Hervorhebungsgruppe definiert?

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

Da es bezogen wirdnachdein~/.vimrc UndIhr Farbschema überschreibt alle Regeln mit demselben Namen.

Das ist leider nicht sehr sauber, daher haben Sie grundsätzlich drei praktikable Optionen:

  • Ändern Sie die Farben direkt im Plugin,

  • Verschiebe diese Zeilen aus dem Plugin in dein Farbschema und bearbeite sie nach deinen Wünschen,

  • fügen Sie diese Zeilen zu Ihrem hinzu ~/.vimrc:

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

Die Verwendung des ~/.vim/after/Verzeichnisses ist überhaupt kein Hack: Es ist zwar nicht ausreichend dokumentiert, aber es ist normalerweise viel sauberer als das entsprechende Durcheinander in Ihrem ~/.vimrc. Wie auch immer, ich bin mir nicht sicher, ob es für Ihre speziellen Anforderungen funktioniert. Sie könnten versuchendieses Plugin(nie ausprobiert), aber ich bin nicht sicher, ob das, was Sie wollen, ein weiteres Plug-In in Ihrem Setup verdient.

bearbeiten

Es stellt sich heraus, dass Sie es mit tun können, ~/.vim/after/aber diese Lösung sieht für mich eigentlich ziemlich "hackig" aus, da sie "Plugins" und "Farbschemata" vermischt. Wie auch immer, fügen Sie einfach diese Zeile ein ~/.vim/after/plugin/foo.vim(der Teil vor dem Punkt des Dateinamens ist egal):

hi DbgBreakptLine ctermbg=NONE ctermfg=NONE

verwandte Informationen