From: David Landell <david.landell@sunnyhill.email>
To: 43793@debbugs.gnu.org
Subject: bug#43793: 27.1; Clicking on grep-mode find-abbreviate ellipsis yields user error
Date: Sun, 04 Oct 2020 15:39:45 +0200 [thread overview]
Message-ID: <87zh52xg7y.fsf@xwing.i-did-not-set--mail-host-address--so-tickle-me> (raw)
[-- Attachment #1: Type: text/plain, Size: 645 bytes --]
Hi,
Clicking on the find-abbreviate ellipsis in a grep-mode buffer
while focus is on another emacs window invokes the
grep-find-toggle-abbreviation on the buffer in the focused window
instead of in the clicked window.
The common manifestation of this problem would be a user error because the
abbreviated-command property can not be found. More interesting results
can be achieved if the focused window contains another grep-mode buffer
in which case the ellipsis will be expanded in the focused window
instead of the clicked.
Attaching a patch the invokes mouse-select-window before toggling the
abbreviation.
Best regards,
David Landell
[-- Attachment #2: 0001-Grep-Ensure-window-is-selected-when-clicking-on-find.patch --]
[-- Type: text/x-diff, Size: 1445 bytes --]
From e5d35f544b91a66553e0d86c2f3d9e29978bc700 Mon Sep 17 00:00:00 2001
From: David Landell <david.landell@sunnyhill.email>
Date: Sun, 4 Oct 2020 15:04:19 +0200
Subject: [PATCH] Grep: Ensure window is selected when clicking on
find-abbreviate ellipsis
Without this fix, clicking on the abbreviate ellipsis when focus is on
another window invokes grep-find-toggle-abbreviation in the focused
window instead of the clicked one.
* lisp/progmodes/grep.el (grep-find-abbreviate-properties):
Invoke mouse-select-window before toggling abbrevation.
---
lisp/progmodes/grep.el | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/lisp/progmodes/grep.el b/lisp/progmodes/grep.el
index 279eb4d54b..c8c7dfa214 100644
--- a/lisp/progmodes/grep.el
+++ b/lisp/progmodes/grep.el
@@ -455,7 +455,11 @@ grep-find-abbreviate-properties
(let ((ellipsis (if (char-displayable-p ?…) "[…]" "[...]"))
(map (make-sparse-keymap)))
(define-key map [down-mouse-2] 'mouse-set-point)
- (define-key map [mouse-2] 'grep-find-toggle-abbreviation)
+ (define-key map [mouse-2]
+ (lambda (click)
+ (interactive "e")
+ (mouse-select-window click)
+ (grep-find-toggle-abbreviation)))
(define-key map "\C-m" 'grep-find-toggle-abbreviation)
`(face nil display ,ellipsis mouse-face highlight
help-echo "RET, mouse-2: show unabbreviated command"
--
2.17.1
[-- Attachment #3: Type: text/plain, Size: 7086 bytes --]
In GNU Emacs 27.1 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.22.30, cairo version 1.15.10)
of 2020-09-19 built on lgw01-amd64-054
Windowing system distributor 'The X.Org Foundation', version 11.0.11906000
System Description: Linux Mint 19
Recent messages:
assignment to free variable ‘grep-find-abbreviate-properties’
user-error: No further redo information
Undo branch point! [2 times]
Saving file /home/david/code/emacs/.git/COMMIT_EDITMSG...
Wrote /home/david/code/emacs/.git/COMMIT_EDITMSG
yascroll: (wrong-number-of-arguments (left-width right-width outside-margins) 4)
yascroll-bar-mode disabled
Saving file /home/david/code/emacs/.git/COMMIT_EDITMSG...
Wrote /home/david/code/emacs/.git/COMMIT_EDITMSG
Git<4> finished
Configured using:
'configure --build=x86_64-linux-gnu --prefix=/usr
'--includedir=${prefix}/include' '--mandir=${prefix}/share/man'
'--infodir=${prefix}/share/info' --sysconfdir=/etc --localstatedir=/var
--disable-silent-rules '--libdir=${prefix}/lib/x86_64-linux-gnu'
'--libexecdir=${prefix}/lib/x86_64-linux-gnu' --disable-maintainer-mode
--disable-dependency-tracking --prefix=/usr --sharedstatedir=/var/lib
--libexecdir=/usr/lib --localstatedir=/var/lib
--infodir=/usr/share/info --mandir=/usr/share/man
--enable-locallisppath=/etc/emacs:/usr/local/share/emacs/27.1/site-lisp:/usr/local/share/emacs/site-lisp:/usr/share/emacs/27.1/site-lisp:/usr/share/emacs/site-lisp
--program-suffix=27 --with-modules --with-file-notification=inotify
--with-mailutils --with-harfbuzz --with-json --with-x=yes
--with-x-toolkit=gtk3 --with-lcms2 --with-cairo --with-xpm=yes
--with-gif=yes --with-gnutls=yes --with-jpeg=yes --with-png=yes
--with-tiff=yes --with-xwidgets 'CFLAGS=-g -O2
-fdebug-prefix-map=/build/emacs27-YwD3ZV/emacs27-27.1~1.git86d8d76aa3=. -fstack-protector-strong
-Wformat -Werror=format-security -no-pie' 'CPPFLAGS=-Wdate-time
-D_FORTIFY_SOURCE=2' 'LDFLAGS=-Wl,-Bsymbolic-functions -Wl,-z,relro
-no-pie''
Configured features:
XPM JPEG TIFF GIF PNG RSVG CAIRO SOUND GPM DBUS GSETTINGS GLIB NOTIFY
INOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE HARFBUZZ M17N_FLT LIBOTF
ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 XDBE XIM MODULES THREADS XWIDGETS
LIBSYSTEMD JSON PDUMPER LCMS2 GMP
Important settings:
value of $EMACSLOADPATH: /home/david/programming/elisp/rg.el/:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/wgrep-20200217.1030:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/transient-20200819.1133:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/ox-rst-20190920.949:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/undercover-20191122.2126:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/dash-20200803.1520:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/shut-up-20180628.1830:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/s-20180406.808:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/package-lint-20200816.24:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/flycheck-20200820.1403:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/pkg-info-20150517.1143:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/epl-20180205.2049:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/find-file-in-project-20200227.1204:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/ivy-20200826.955:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/ert-runner-20200704.1048:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/f-20191110.1357:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/commander-20140120.1852:/home/david/programming/elisp/rg.el/.cask/27.1/elpa/ansi-20200611.944:/usr/share/emacs/27.1/lisp:/usr/share/emacs/27.1/lisp/vc:/usr/share/emacs/27.1/lisp/url:/usr/share/emacs/27.1/lisp/textmodes:/usr/share/emacs/27.1/lisp/progmodes:/usr/share/emacs/27.1/lisp/play:/usr/share/emacs/27.1/lisp/org:/usr/share/emacs/27.1/lisp/nxml:/usr/share/emacs/27.1/lisp/net:/usr/share/emacs/27.1/lisp/mh-e:/usr/share/emacs/27.1/lisp/mail:/usr/share/emacs/27.1/lisp/leim:/usr/share/emacs/27.1/lisp/language:/usr/share/emacs/27.1/lisp/international:/usr/share/emacs/27.1/lisp/image:/usr/share/emacs/27.1/lisp/gnus:/usr/share/emacs/27.1/lisp/eshell:/usr/share/emacs/27.1/lisp/erc:/usr/share/emacs/27.1/lisp/emulation:/usr/share/emacs/27.1/lisp/emacs-lisp:/usr/share/emacs/27.1/lisp/cedet:/usr/share/emacs/27.1/lisp/calendar:/usr/share/emacs/27.1/lisp/calc:/usr/share/emacs/27.1/lisp/obsolete
value of $LC_MONETARY: sv_SE.UTF-8
value of $LC_NUMERIC: sv_SE.UTF-8
value of $LC_TIME: sv_SE.UTF-8
value of $LANG: en_US.UTF-8
locale-coding-system: utf-8-unix
Major mode: Lisp Interaction
Minor modes in effect:
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
electric-indent-mode: t
mouse-wheel-mode: t
tool-bar-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
auto-composition-mode: t
auto-encryption-mode: t
auto-compression-mode: t
line-number-mode: t
transient-mark-mode: t
Load-path shadows:
None found.
Features:
(shadow sort mail-extr emacsbug message rmc puny dired dired-loaddefs
rfc822 mml mml-sec password-cache epa epg epg-config gnus-util rmail
rmail-loaddefs text-property-search time-date mm-decode mm-bodies
mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail
rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils rg pcase vc
vc-dispatcher rg-info-hack advice rg-menu transient cl-extra help-mode
easymenu format-spec eieio eieio-core eieio-loaddefs rg-ibuffer
ibuf-macs rg-result derived wgrep-rg wgrep rg-history cl-seq cl-macs
subr-x rg-header ibuf-ext ibuffer ibuffer-loaddefs seq byte-opt gv
bytecomp byte-compile cconv grep compile comint ansi-color ring
cl-loaddefs cl-lib tooltip eldoc electric uniquify ediff-hook vc-hooks
lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar
dnd fontset image regexp-opt fringe tabulated-list replace newcomment
text-mode elisp-mode lisp-mode prog-mode register page tab-bar menu-bar
rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core term/tty-colors frame minibuffer cl-generic
cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao
korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech
european ethiopic indian cyrillic chinese composite charscript charprop
case-table epa-hook jka-cmpr-hook help simple abbrev obarray
cl-preloaded nadvice loaddefs button faces cus-face macroexp files
text-properties overlay sha1 md5 base64 format env code-pages mule
custom widget hashtable-print-readable backquote threads dbusbind
inotify lcms2 dynamic-setting system-font-setting font-render-setting
xwidget-internal cairo move-toolbar gtk x-toolkit x multi-tty
make-network-process emacs)
Memory information:
((conses 16 81436 6914)
(symbols 48 9028 1)
(strings 32 24666 2335)
(string-bytes 1 829109)
(vectors 16 15246)
(vector-slots 8 190627 11660)
(floats 8 28 26)
(intervals 56 294 0)
(buffers 1000 12))
next reply other threads:[~2020-10-04 13:39 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-04 13:39 David Landell [this message]
[not found] ` <handler.43793.B.160181880014711.ack@debbugs.gnu.org>
2020-10-04 14:57 ` bug#43793: Acknowledgement (27.1; Clicking on grep-mode find-abbreviate ellipsis yields user error) David Landell
2020-10-05 7:28 ` Lars Ingebrigtsen
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
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87zh52xg7y.fsf@xwing.i-did-not-set--mail-host-address--so-tickle-me \
--to=david.landell@sunnyhill.email \
--cc=43793@debbugs.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 public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).