GNU bug report logs - #55607
28.1; C-x is hardcoded, but should use the keymap ctl-x-map

Previous Next

Package: emacs;

Reported by: Teika Kazura <teika <at> gmx.com>

Date: Tue, 24 May 2022 06:23:01 UTC

Severity: normal

Found in version 28.1

Fixed in version 29.1

Done: Lars Ingebrigtsen <larsi <at> gnus.org>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 55607 in the body.
You can then email your comments to 55607 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#55607; Package emacs. (Tue, 24 May 2022 06:23:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Teika Kazura <teika <at> gmx.com>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Tue, 24 May 2022 06:23:01 GMT) Full text and rfc822 format available.

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

From: Teika Kazura <teika <at> gmx.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 28.1; C-x is hardcoded, but should use the keymap ctl-x-map
Date: Tue, 24 May 2022 15:22:11 +0900 (JST)
Hi, the emacs world.

At least in the file emacs-28.1/lisp/emacs-lisp/edebug.el, the prefix
key C-x is hardcoded. An error will be produced if you bind C-x to
something else.  Instead `ctl-x-map' should be respected.

How to reproduce it:
$ emacs -Q -l foo.el
------------------------------------------------------------------------

The content of foo.el:
------------------------------------------------------------------------
(setq debug-on-error t)
(global-set-key "\C-x" 'fill-paragraph) ; or whatever
(require 'edebug)
------------------------------------------------------------------------

Sorry that I fail to report exactly; if you don't set
(setq debug-on-error t), emacs can start without an error, only
showing a message in the minibuffer and in *Messages*. (However with my
personal configuration, it produces an error and emacs initialization
fails due to this problem, *without* debug-on-error. "edebug" is
require-ed from the package "helm", more precisely from the file
helm-eval.el .)

I cannot write a patch for this; I don't understand the code in edebug.el.

In fact, there seem to be other files with this problem. but I neglect
them this time. And it is not the only prefix keymap. (See the section
"prefix keymaps" in the emacs manual.)

Another minor issue: In edebug.el, the lines 43-44 read:
------------------------------------------------------------------------
;; If you wish to change the default edebug global command prefix, change:
;; (setq global-edebug-prefix "\C-xX")
------------------------------------------------------------------------
but `global-edebug-prefix' is obsolete since 28.1 .

Thank you very much indeed for developing Emacs.
Best regards.

# BTW 10 years ago I reported a similar problem:
#  https://debbugs.gnu.org/cgi/bugreport.cgi?bug=10566
# Maybe not few aren't aware of prefix keymaps. ;-)




Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55607; Package emacs. (Wed, 25 May 2022 01:52:02 GMT) Full text and rfc822 format available.

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

From: Lars Ingebrigtsen <larsi <at> gnus.org>
To: Teika Kazura <teika <at> gmx.com>
Cc: 55607 <at> debbugs.gnu.org
Subject: Re: bug#55607: 28.1; C-x is hardcoded, but should use the keymap
 ctl-x-map
Date: Wed, 25 May 2022 03:50:54 +0200
Teika Kazura <teika <at> gmx.com> writes:

> At least in the file emacs-28.1/lisp/emacs-lisp/edebug.el, the prefix
> key C-x is hardcoded. An error will be produced if you bind C-x to
> something else.  Instead `ctl-x-map' should be respected.
>
> How to reproduce it:
> $ emacs -Q -l foo.el
> ------------------------------------------------------------------------
>
> The content of foo.el:
> ------------------------------------------------------------------------
> (setq debug-on-error t)
> (global-set-key "\C-x" 'fill-paragraph) ; or whatever
> (require 'edebug)
> ------------------------------------------------------------------------

[...]

> Another minor issue: In edebug.el, the lines 43-44 read:
> ------------------------------------------------------------------------
> ;; If you wish to change the default edebug global command prefix, change:
> ;; (setq global-edebug-prefix "\C-xX")
> ------------------------------------------------------------------------
> but `global-edebug-prefix' is obsolete since 28.1 .

I've now fixed this in Emacs 29.

-- 
(domestic pets only, the antidote for overdose, milk.)
   bloggy blog: http://lars.ingebrigtsen.no




bug marked as fixed in version 29.1, send any further explanations to 55607 <at> debbugs.gnu.org and Teika Kazura <teika <at> gmx.com> Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Wed, 25 May 2022 01:52:02 GMT) Full text and rfc822 format available.

Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#55607; Package emacs. (Wed, 25 May 2022 12:13:01 GMT) Full text and rfc822 format available.

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

From: Teika Kazura <teika <at> gmx.com>
To: 55607 <at> debbugs.gnu.org
Subject: Re: bug#55607: 28.1; C-x is hardcoded, but should use the keymap
 ctl-x-map
Date: Wed, 25 May 2022 21:12:22 +0900 (JST)
The bug was fixed in the commit abd3411827, in the master branch:
  https://git.savannah.gnu.org/cgit/emacs.git/commit/?id=abd3411827d77edee6f2a38d9fc1c3a61fba88ed

Thanks Lars for a very quick action.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Thu, 23 Jun 2022 11:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 1 year and 306 days ago.

Previous Next


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