Как прокомментировал mbork, вы можете использовать delight.el для выборочного изменения или отключения второстепенного (и даже основного) текста режима в строке режима.
Одним из преимуществ является то, что он заботится о eval-after-load
(который вам нужно написать вручную с помощью diminish.el в большинстве случаев), что делает конфигурацию более чистой. Вам по-прежнему нужна та же информация - имя режима и библиотека, которая его реализует (которую Emacs сообщит вам, если вы спросите об этом режиме), - но вы можете свернуть все это в одну форму:
(require 'delight)
(delight '((some-mode nil "some-library")
(some-other-mode nil "some-other-library")))
(Или перейдите по ссылке выше для некоторых реальных примеров использования.)
Я бы рекомендовал принимать этот подход, потому что даже если вы не хотите больше всего режим второстепенного светлее текста, есть хороший шанс , что вы найдете некоторые из них полезны (и вы все еще можете изменить эти те , чтобы быть короче).
Если вы действительно хотите исключить весь текст в более легком режиме (и опять же, я не рекомендую его), вы можете изменить mode-line-modes
переменную. Переменные строки режима изменились некоторое время назад, поэтому вы можете захотеть использовать M-x find-variable RET mode-line-modes RET
и затем вручную адаптировать определение по умолчанию, отредактировав раздел, касающийся minor-modes-alist
.
Конечно, тогда вам нужно сохранить его, что не так быстро, так что вы можете предпочесть замену minor-mode-alist
символа в рамках существующего значения. Следующее в некоторой степени зависит от реализации, но, безусловно, лучше, чем настройка mode-line-modes
в полном объеме, и вы можете включать и выключать его.
(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)