2016-06-24 35 views
2

Wie können wir HL-Zeile konfigurieren (oder reparieren?), So dass seine Hintergrund-Highlight zuletzt (oder zuerst?) Im Stapel geht.Setzen Sie HL-Zeile zuletzt in den Emacs-Hintergründen

Das heißt: Wenn hl-line eine Zeile markiert, in der einige Wörter bereits eine Hintergrundfarbe haben, sollte hl-line diese Hintergrundfarbe NICHT mit ihrer eigenen überschreiben.

Es sollte in den Hintergrund gehen und andere Hintergrundfarben sichtbar machen.

Antwort

1

Wenn Sie die Bibliothek hl-line+.el verwenden (siehe auch highlight current line), können Sie die Priorität der von hl-line verwendeten Überlagerung festlegen. Um zu tun, was Sie wollen, können Sie die Zahl unter der von anderen Overlays verwendeten reduzieren.

(Sie können sogar eine negative Zahl ist, verwenden aber nicht dokumentiert ist - vgl. Emacs bug #16192 Und Sie können eine cons Zelle mit einer Hauptpriorität und eine sekundäre Priorität verwenden -. Siehe Bug #17234)

Die Hervorhebung von Überlagerungen hat jedoch immer Vorrang vor der Hervorhebung von Texteigenschaften. Sie können also nicht festlegen, dass ein Overlay unter einer Text-Hervorhebung erscheint.

+0

Ich bin dann stecken, wie mein Hauptanwendungsfall ist für Org TODO Schlüsselwörter, und Wörter markiert über M-x Highlight-Symbol-bei-Punkt, und beide scheinen Texteigenschaften ... Danke trotzdem für Ihre Antwort. – user3341592

+0

Es scheint, dass ein Workaround ein HL-Line-Paket mit Texteigenschaften geschrieben sein könnte? Oder gar nicht genug? – user3341592

+0

Zum Hervorheben von Symbolen siehe [diese Antwort] (http://emacs.stackexchange.com/a/23965/105): benutze einfach den Befehl ** 'hlt-highlight-symbol' ** in der Bibliothek [**' markieren. el' **] (https://www.emacswiki.org/emacs/download/highlight.el), nicht "highlight-symbol-at-point". – Drew