Dies ist wirklich eine Ansichtssache, aber ich habe immer festgestellt, dass es am hl-line
besten ist, einen etwas dunkleren Hintergrund als die Standardeinstellung zu haben.
Ich möchte die Syntaxhervorhebung beibehalten, die bei meinen Versuchen fehlgeschlagen ist.
Wenn Sie die Syntaxhervorhebung beibehalten möchten, stellen Sie sicher, dass das hl-line
Gesichtsattribut :foreground
Null ist, und setzen Sie das :background
Attribut auf das gewünschte Attribut.
So sieht es für mich mit diesen Einstellungen aus:
(set-face-attribute 'default nil :background "gray15")
(set-face-attribute 'hl-line nil :foreground nil :background "gray5")
Dem Klang nach möchten Sie keine fest codierten Farben, da Sie die Themen ändern. Emacs können :background
das hl-line
Gesicht automatisch auf eine Farbe einstellen, die etwas dunkler als die aktuelle Standardeinstellung ist :background
:
(require 'color)
(defun set-hl-line-color-based-on-theme ()
"Sets the hl-line face to have no foregorund and a background
that is 10% darker than the default face's background."
(set-face-attribute 'hl-line nil
:foreground nil
:background (color-darken-name (face-background 'default) 10)))
(add-hook 'global-hl-line-mode-hook 'set-hl-line-color-based-on-theme)
Dadurch wird der Hintergrund des Gesichts bei jeder Aktivierung auf eine Farbe eingestellt, die 10% dunkler als der Standardhintergrund ist global-hl-line-mode
global-hl-line-mode
? In der Summe geben Sie die Frage bitte klarer an - sie hilft den Menschen, Ihnen zu helfen.