diff --git a/lisp/bindings.el b/lisp/bindings.el index 8fde7ad6d4b..c4dae911db5 100644 --- a/lisp/bindings.el +++ b/lisp/bindings.el @@ -431,7 +431,8 @@ a menu, so this function is not useful for non-menu keymaps." (defcustom mode-line-collapse-minor-modes nil "Minor modes for which mode line lighters are hidden. -Hidden lighters are collapsed into one. +Hidden lighters are collapsed into one, which is customizable via option +`mode-line-collapse-minor-modes-to'. The value could be a list (MODES ...) which means to collapse lighters only for MODES, or a list (not MODES ...) which means to collapse all @@ -445,6 +446,15 @@ lighters hidden." :group 'mode-line :version "31.1") +(defcustom mode-line-collapse-minor-modes-to + (if (char-displayable-p ?…) " …" " ...") + "Lighter for collapsed minor modes. +This is effective only when `mode-line-collapse-minor-modes' is non-nil." + :type 'string + :initialize #'custom-initialize-delay + :group 'mode-line + :version "31.1") + (defcustom mode-line-modes-delimiters '("(" . ")") "Strings placed around the modes displayed in the mode line. These elements are placed around `mode-name' and `mode-line-modes'." @@ -550,7 +560,7 @@ mouse-3: Toggle minor modes" :parent mode-line-minor-mode-keymap " " menu " " #'describe-mode))) - `(:propertize ,(if (char-displayable-p ?…) " …" " ...") + `(:propertize mode-line-collapse-minor-modes-to mouse-face mode-line-highlight help-echo "Hidden minor modes\n\ mouse-1: Display hidden minor modes\n\