Ich versuche, die aktuelle Zeile sowie die Cursorposition in Vim hervorzuheben. Hier ist meine .vimrc:
set cursorline
hi CursorLine ctermbg=8 ctermfg=15 "8 = dark gray, 15 = white
hi Cursor ctermbg=15 ctermfg=8
Das Problem, das ich habe, ist, dass die Hintergrundfarbe der aktuellen Linie die Hintergrundfarbe des Cursors überdeckt. So sieht es also aus:
Ich kann natürlich erkennen, wo sich der Cursor befindet, weil die Vordergrundfarbe fast schwarz ist, aber wenn sich der Cursor auf einem Leerzeichen oder am Anfang / Ende einer Zeile befindet, habe ich keine Ahnung, wo er sich befindet, es sei denn, ich bewege ihn.
Was mache ich hier falsch?
vim
könnte die Cursorfarbe ändern, auf diesen Terminalsxterm
können Sie es dynamisch ändern (printf '\033]12;#f50\7'
zum Beispiel). Sie können es auch in einen blinkenden Block ändern oder (\e[1 q
oder\e[3 q
) unterstreichenWenn Sie den Befehl nicht jedes Mal eingeben möchten, wenn Sie Vim starten, müssen Sie die Befehle in Ihre
.vimrc
Datei einfügen.(Sie werden einen anderen Ort haben, aber Ihr Farbschema wird hier sein
/usr/share/vim/vim74/colors/
.Sie können die vorhandenen Farbschemata mit auflisten
Probieren Sie andere als die aufgeführten Farbschemata aus
Der folgende Befehl in Vim aktiviert eine vertikale Linie an der Cursorposition.
umschalten (mit dem Ausrufezeichen, funktioniert mit allen Set-Befehlen)
beispielsweise:
Hier ist eine Tabelle mit xterm Farben: Link
Verwenden Sie eine Nummer, indem Sie definieren
ctermbg=...
(... = Farbnummer aus der Tabelle). Sie können es auch versuchenctermfg=...
, aber es lohnt sich nicht, sie zu verwenden.quelle