GNU bug report logs - #59886
Manual error in (elisp) Searching Keymaps regarding keymap char properties?

Previous Next

Package: emacs;

Reported by: hokomo <hokomo <at> airmail.cc>

Date: Wed, 7 Dec 2022 16:31:02 UTC

Severity: normal

Done: Eli Zaretskii <eliz <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: hokomo <hokomo <at> airmail.cc>
Subject: bug#59886: closed (Re: bug#59886: Manual error in (elisp)
 Searching Keymaps regarding keymap char properties?)
Date: Sat, 10 Dec 2022 13:08:02 +0000
[Message part 1 (text/plain, inline)]
Your bug report

#59886: Manual error in (elisp) Searching Keymaps regarding keymap char properties?

which was filed against the emacs package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to 59886 <at> debbugs.gnu.org.

-- 
59886: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=59886
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Eli Zaretskii <eliz <at> gnu.org>
To: hokomo <hokomo <at> airmail.cc>
Cc: 59886-done <at> debbugs.gnu.org
Subject: Re: bug#59886: Manual error in (elisp) Searching Keymaps regarding
 keymap char properties?
Date: Sat, 10 Dec 2022 15:07:20 +0200
> From: hokomo <hokomo <at> airmail.cc>
> Date: Wed, 07 Dec 2022 17:21:36 +0100
> 
> 
> Hello,
> 
> The psuedo-Lisp code presented in the manual (elisp) Searching 
> Keymaps says:
> 
> (if (get-text-property (point) 'local-map)
>    (FIND-IN (get-char-property (point) 'local-map))
>  (FIND-IN (current-local-map)))
> 
> Why does the condition use `get-text-property', but then the 
> consequent uses `get-char-property'? Shouldn't they both be 
> `get-char-property'? According to (elisp) Active Keymaps:
> 
> "If there is a 'local-map' /text or overlay/ property at point, 
> that specifies the local keymap to use, in place of the buffer's 
> default local keymap."
> 
> Am I missing something?
> 
> Additionally, perhaps the two paragraphs in (elisp) Active Keymaps 
> that mention the `keymap` and the `local-map' property (search for 
> "property") should be reworded slightly to emphasize that the 
> search prefers the overlay property over the text property, since 
> that's how `get-char-property' is documented to work. Maybe change 
> the ordering of "text or overlay" to "overlay or text", along with 
> an explicit emphasis?

Thanks, I've changed the example to use get-char-property.

[Message part 3 (message/rfc822, inline)]
From: hokomo <hokomo <at> airmail.cc>
To: bug-gnu-emacs <at> gnu.org
Subject: Manual error in (elisp) Searching Keymaps regarding keymap char
 properties?
Date: Wed, 07 Dec 2022 17:21:36 +0100
Hello,

The psuedo-Lisp code presented in the manual (elisp) Searching 
Keymaps says:

(if (get-text-property (point) 'local-map)
  (FIND-IN (get-char-property (point) 'local-map))
(FIND-IN (current-local-map)))

Why does the condition use `get-text-property', but then the 
consequent uses `get-char-property'? Shouldn't they both be 
`get-char-property'? According to (elisp) Active Keymaps:

"If there is a 'local-map' /text or overlay/ property at point, 
that specifies the local keymap to use, in place of the buffer's 
default local keymap."

Am I missing something?

Additionally, perhaps the two paragraphs in (elisp) Active Keymaps 
that mention the `keymap` and the `local-map' property (search for 
"property") should be reworded slightly to emphasize that the 
search prefers the overlay property over the text property, since 
that's how `get-char-property' is documented to work. Maybe change 
the ordering of "text or overlay" to "overlay or text", along with 
an explicit emphasis?

hokomo



This bug report was last modified 2 years and 241 days ago.

Previous Next


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