all messages for Emacs-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
From: pierre.techoueyres@free.fr (Pierre Téchoueyres)
To: emacs-devel@gnu.org
Subject: [PATCH] Improve default mouse menu for mode from modeline
Date: Wed, 10 Oct 2018 20:35:12 +0200	[thread overview]
Message-ID: <874ldtvee7.fsf@killashandra.ballybran.fr> (raw)

[-- Attachment #1: Type: text/plain, Size: 836 bytes --]

Hello emacs's developpers,

I would submit an enhacement for when you use the mouse to display the
menu for a mode (major or minor) from the modeline.


For now, if the mode doesn't define a custom mouse menu, the menu title
simply display the mode indicator. But sometimes this indicator isn't
really obvious.

The attached patch try to improve this by appending the full mode name
after the indicator.

For example the Smartparens minor mode has 'SP' as indicator. So his
menu is look like:
---------------------
| SP
---------------------
| Turn off minor mode
| Help for minor mode
----------------------

Whit the attached patch the menu will look like:

------------------------
| SP - Smartparens Mode
------------------------
| Turn off minor mode
| Help for minor mode
------------------------

Hope this could help.

Pierre.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-minor-mode-menu-from-indicator-now-display-full-mino.patch --]
[-- Type: text/x-patch, Size: 2083 bytes --]

From 8ccd620d2891eee0ec1910a002adca0ab657f7ab Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Pierre=20T=C3=A9choueyres?= <pierre.techoueyres@free.fr>
Date: Wed, 10 Oct 2018 20:08:05 +0200
Subject: [PATCH] 'minor-mode-menu-from-indicator' now display full minor mode.

When there is no menu for a mode, display the mode name after the
indicator instead of just the indicator (which is sometime cryptic).
Ex:
before : SP
now    : SP - Smartparens Mode

* etc/NEWS: Add en entry for this new feature.
* lisp/mouse.el (minor-mode-menu-from-indicator): Append the mode name
  after the indicator when there is no menu defined by the mode.
---
 etc/NEWS      | 9 ++++++++-
 lisp/mouse.el | 5 ++++-
 2 files changed, 12 insertions(+), 2 deletions(-)

diff --git a/etc/NEWS b/etc/NEWS
index ee74e86f40..739674cf3e 100644
--- a/etc/NEWS
+++ b/etc/NEWS
@@ -824,11 +824,18 @@ UUID at point.
 
 
 ** Interactive automatic highlighting
-
 +++
 *** 'highlight-regexp' can now highlight subexpressions.
 The now command accepts a prefix numeric argument to choose the
 subexpression.
+** Mouse display major mode menu
++++
+*** 'minor-mode-menu-from-indicator' now display full minor mode.
+When there is no menu for a mode, display the mode name after the
+indicator instead of just the indicator (which is sometime cryptic).
+Ex:
+before : SP
+now    : SP - Smartparens Mode
 
 \f
 * New Modes and Packages in Emacs 27.1
diff --git a/lisp/mouse.el b/lisp/mouse.el
index cb63ca51c5..2aba9bf458 100644
--- a/lisp/mouse.el
+++ b/lisp/mouse.el
@@ -169,7 +169,10 @@ minor-mode-menu-from-indicator
                 (mouse-menu-non-singleton menu)
               (if (fboundp mm-fun)      ; bug#20201
                   `(keymap
-                    ,indicator
+                    ,(format "%s - %s" indicator
+			     (capitalize
+			      (replace-regexp-in-string
+			       "-" " " (format "%S" minor-mode))))
                     (turn-off menu-item "Turn off minor mode" ,mm-fun)
                     (help menu-item "Help for minor mode"
                           (lambda () (interactive)
-- 
2.17.1


             reply	other threads:[~2018-10-10 18:35 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-10 18:35 Pierre Téchoueyres [this message]
2018-10-27 10:47 ` [PATCH] Improve default mouse menu for mode from modeline Pierre Téchoueyres
2018-10-27 11:24   ` Eli Zaretskii
2018-10-27 22:19   ` Stefan Monnier
2018-10-28 22:34     ` Pierre Téchoueyres

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=874ldtvee7.fsf@killashandra.ballybran.fr \
    --to=pierre.techoueyres@free.fr \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/emacs.git
	https://git.savannah.gnu.org/cgit/emacs/org-mode.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.