Gibt es eine Möglichkeit, den Abstand vor einer Linie hervorzuheben (z. B. die Hintergrundfarbe festzulegen), wenn der Einzug nicht an der aktuellen Einrückungsbreite ausgerichtet ist?
4 Leerzeichen Einzug für zB:
fn my_func() {
if foo() {
##bar();
blob();
###fez();
baz();
}
}
Dabei stellen die #
Zeichen den Hintergrund dar, der eine andere Farbe zeigt, bis die Einrückung auf 4 ausgerichtet ist.
Dies ist natürlich nur dann nützlich, wenn der Code strengen Einrückungskonventionen folgt.
Beachten Sie, dass mir die erweiterten Funktionen zum automatischen Einrücken von Emacs und Plugins zum Hervorheben von Einrückungen bekannt sind, ich jedoch etwas weniger Aufdringliches vorziehen würde, das nur angezeigt wird, wenn ein Problem auftritt. Ein bisschen wie das Hervorheben von Leerzeichen.
indentation
whitespace
highlighting
ideasman42
quelle
quelle
c-indent-defun
korrigieren die Einrückung für Sie, wodurch möglicherweise das gewünschte Ergebnis erzielt wird.Antworten:
Verwenden der Schriftsperre ...
quelle
whitespace-trailing
anstelle vonmatch
(format "^ \\{%d\\}*\\( \\{1,%d\\}\\)[^ ]" tab-width (- tab-width 1))
`Dies kann mit erfolgen
font-lock-add-keywords
.Das folgende Beispiel zeigt, dass Sie diese Funktion in Ihrer Konfiguration selektiv aktivieren können - für verschiedene Formate.
tab-width
.whitespace-trailing
möchten Sie möglicherweisematch
eine andere Farbe verwenden.z.B:
Dann kann diese Funktion für bestimmte Modi aufgerufen werden: z.
Dies ist eine geringfügige Änderung der Antwort von @ politza.
quelle