Wie mbork kommentierte, können Sie delight.el verwenden , um Text im Nebenmodus (und in der Tat im Hauptmodus) in der Moduszeile selektiv zu ändern oder zu deaktivieren.
Einer der Vorteile ist, dass es sich um das kümmert eval-after-load
(was Sie in den meisten Anwendungsfällen manuell mit diminish.el schreiben müssen), was die Konfiguration übersichtlicher macht. Sie benötigen immer noch die gleichen Informationen - den Namen des Modus und die Bibliothek, die ihn implementiert (was Emacs Ihnen mitteilt, wenn Sie ihn nach dem Modus fragen), aber Sie können alles in eine einzige Form zusammenfassen:
(require 'delight)
(delight '((some-mode nil "some-library")
(some-other-mode nil "some-other-library")))
(Oder folgen Sie dem obigen Link, um einige Beispiele für die reale Verwendung zu sehen.)
Ich würde empfehlen , diesen Ansatz, denn selbst wenn Sie nicht wollen , die meist kleineren Modi leichten Text, gibt es eine gute Chance, dass Sie einige von ihnen nützlich finden (und Sie können immer noch die diejenigen sein , kürzer ändern).
Wenn Sie wirklich alle leichteren Texte im Nebenmodus entfernen möchten (und ich empfehle es auch nicht), können Sie die mode-line-modes
Variable ändern . Die Moduszeilenvariablen haben sich vor einiger Zeit geändert, sodass Sie möglicherweise M-x find-variable RET mode-line-modes RET
Ihre Standarddefinition verwenden und dann manuell anpassen möchten, indem Sie den entsprechenden Abschnitt bearbeiten minor-modes-alist
.
Natürlich dann würden Sie sie halten müssen, was nicht so Blitz ist, so dass Sie das Ersetzen könnten es vorziehen , minor-mode-alist
Symbol innerhalb des vorhandenen Wertes. Das Folgende ist etwas implementierungsspezifisch, aber auf jeden Fall besser als das Festlegen mode-line-modes
in seiner Gesamtheit, und Sie können es ein- und ausschalten.
(define-minor-mode minor-mode-blackout-mode
"Hides minor modes from the mode line."
t)
(catch 'done
(mapc (lambda (x)
(when (and (consp x)
(equal (cadr x) '("" minor-mode-alist)))
(let ((original (copy-sequence x)))
(setcar x 'minor-mode-blackout-mode)
(setcdr x (list "" original)))
(throw 'done t)))
mode-line-modes))
(global-set-key (kbd "C-c m") 'minor-mode-blackout-mode)