GNU bug report logs - #79294
[PATCH] Add hideable indicators for hideshow.

Previous Next

Package: emacs;

Reported by: Elijah Gabe Pérez <eg642616 <at> gmail.com>

Date: Sat, 23 Aug 2025 04:57:02 UTC

Severity: normal

Tags: patch

Full log


Message #38 received at 79294 <at> debbugs.gnu.org (full text, mbox):

From: Elijah Gabe Pérez <eg642616 <at> gmail.com>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: 79294 <at> debbugs.gnu.org
Subject: Re: bug#79294: [PATCH] Add hideable indicators for hideshow.
Date: Tue, 16 Sep 2025 13:21:17 -0600
[Message part 1 (text/plain, inline)]
Eli Zaretskii <eliz <at> gnu.org> writes:

>> From: Elijah Gabe Pérez <eg642616 <at> gmail.com>
>> Cc: 79294 <at> debbugs.gnu.org
>> Date: Mon, 15 Sep 2025 14:21:35 -0600
>> 
>> > Maybe it's a bug?  Can you show a simple Lisp program that I could
>> > evaluate in *scratch* and use to look into this issue?
>> 
>> Sure, here is a recipe:
>> 
>> 1. M-x fundamental-mode
>> 
>> 2. M-:
>>    (insert
>>     "  "
>>     (propertize
>>      "x"
>>      'display '(left-fringe
>>                 left-arrow
>>                 error)
>>      'keymap (let ((map (make-sparse-keymap)))
>>                (define-key map (kbd "<left-fringe> <mouse-1>")
>>                            (lambda ()
>>                              (interactive)
>>                              (print "message!")))
>>                map)))
>> 
>> 3. Click on the fringe icon, it should not work an throw the
>> "<left-fringe> <mouse-1> is undefined" message.
>
> I don't understand: you set the 'keymap' property on a character 'x',
> and expect a click on the fringe to somehow magically use that keymap?
> That's not how this works: the 'keymap' property defines the keymap to
> use when clicking on the character with the property.

I see, thanks for the explanation.

>> I'm not sure if this is a known bug, but I've seen packages that locally
>> (in the buffer local map) bind mouse-1 to a command that scans for the
>> overlay in some region of the buffer, probably the fringe keymap doesn't
>> support this yet.
>
> That's exactly what you should do.  See, for example,
> gdb-mouse-set-clear-breakpoint in gdb-mi.el.
>
>> For the patch, I have already solved this problem, although I am not
>> happy with the solution, it is possibly the only way to solve this:
>
> That is the right solution.

Fine, then i think the patch is now ready to merge (if there are no
objections), I'm resending it since i found a bug.

[0001-Add-hideable-indicators-for-hideshow.-Bug-79294.patch (text/x-patch, attachment)]
[Message part 3 (text/plain, inline)]
-- 
- E.G via Gnus and Org.

This bug report was last modified 3 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.