Stellen Sie die Hervorhebungsfarben der Vim-Halterung ein


78

Ich benutze :set showmatch, um die passende Klammer oder Klammer hervorzuheben, wenn sich der Cursor über eins befindet.

Ich möchte die Hervorhebungsfarbe so ändern, dass sie sich radikal von der Cursorfarbe unterscheidet, da ich die in den Screenshots gezeigte Situation habe.

Wenn sich der Cursor über der zweiten Klammer befindet:
Cursor über die zweite Klammer

und wenn sich der Cursor unmittelbar rechts von der Klammer befindet:
Cursor nach rechts

Dies verwendet mein Terminal-Farbschema, das von Solarized übernommen wurde . Leider ist es etwas mühsam zu sehen, welches Highlight die passende Klammer und welches der Cursor ist, wenn die Klammern nahe beieinander liegen.

Gibt es eine vimEinstellung, mit der ich die Farbe beispielsweise auf bold magentaANSI ändern kann ? Ich bin nicht besonders daran interessiert, meine ANSI-Farben innerhalb des Terminals oder der Shell neu vimzuzuordnen. Ich hätte gerne eine spezifische Option, falls vorhanden.

Antworten:


101

Sie können die Farben beispielsweise in Blau über Grün ändern

hi MatchParen cterm=none ctermbg=green ctermfg=blue

Legen Sie es einfach in Ihre vimrc-Datei.

Grundsätzlich ctermbestimmt die Art, die sein kann none, underlineoder bold, während ctermbgund ctermfgsind, wie ihre Namen vermuten lassen, Hintergrund- und Vordergrundfarbe, so sie ändern , wie Sie für richtig halten.

für Ihren Fall möchten Sie vielleicht

hi MatchParen cterm=bold ctermbg=none ctermfg=magenta

9
Danke dafür! Wenn Sie die GUI-Version verwenden, funktioniert dies ziemlich gut. "Hallo MatchParen guibg = NONE guifg = blue gui = fett"
Robert Wahler

2
Verdammt ... ich habe das seit 1 Jahr gesucht! Vielen Dank
Yves Lange

Ich bin auf diese Antwort gestoßen, als ich nach Möglichkeiten gesucht habe, diese Funktion (MatchParen) auszuschalten, weil ich die Farben so irritierend fand (Molokai). Jemand sollte die Standardeinstellung
korrigieren

Ihr rettet meinen Tag!
zx1986

1
Danke! Ich benutze Neovim und in meinem Fall musste ich einstellen hi MatchParen guifg=lightblue guibg=darkblue.
Immanuel Weihnachten

6

Ich verwende das vividchalkFarbschema mit macvimund keine der verschiedenen Lösungen, die ich ausprobiert habe, hat für mich funktioniert. Aber ich habe die Datei durchsucht:

~/.vim/colors/vividchalk.vim

für MatchParenund ich fand diese Zeile:

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

Ich habe diese Zeile auskommentiert, dann diese Zeile kopiert und in Folgendes geändert:

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

Dies hat es geschafft, die passende Klammer in Rot hervorzuheben, was viel einfacher zu sehen ist. Ich hoffe das hilft jemand anderem.

Wenn Sie kurz zur öffnenden Klammer / Paren / Klammer springen möchten, während Sie die schließende Klammer / Paren / Klammer eingeben, fügen Sie Folgendes hinzu:

set showmatch

zu ~ / .vimrc arbeitete für mich.

Ein sehr praktischer Trick besteht darin, den Cursor auf eine Klammer / Paren / Klammer zu setzen und dann %zu tippen, um zur passenden Klammer / Paren / Klammer zu springen. Dies ist besonders nützlich, wenn die passende Klammer / Paren / Klammer von der Seite gescrollt wurde. Wenn Sie %ein zweites Mal tippen, kehren Sie dorthin zurück, wo Sie herkommen.


5

Versuchen Sie, :!ls $VIMRUNTIME/colorsdies sind Standardfarbschemata, die Vim liefert. Wenn Sie das Farbschema ändern, :colorscheme namesuchen Sie das gewünschte Farbschema und kopieren Sie das Farbschema. :!cp $VIMRUNTIME/colors/<name>.vim ~/.vim/colors/new_name.vimBearbeiten Sie es und legen Sie es mit dem Befehl Farbschema fest oder fügen colorscheme nameSie es besser zur vimrc-Datei hinzu. Nach Änderungen an der :colorscheme nameFarbdatei werden die Farben von Vim neu geladen. Es ist praktisch :vsp, Farbdateien in einer Hälfte zu bearbeiten und Änderungen in der anderen zu überprüfen. Ich habe die Antwort nye17 verwendet und hi MatchParenmeiner color_file.vim eine Zeile hinzugefügt. Es funktioniert einwandfrei.
Links:
Vim-Hilfe
Steuern von Farben
Informationen zu Termianl-Farben

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.