GNU bug report logs - #13793
24.3.50; M-x broken in viper and X

Previous Next

Package: emacs;

Reported by: Frank Fischer <frank-fischer <at> shadow-soft.de>

Date: Sat, 23 Feb 2013 18:51:02 UTC

Severity: important

Merged with 13709, 13739

Found in version 24.3.50

Done: Glenn Morris <rgm <at> gnu.org>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: Stefan Monnier <monnier <at> iro.umontreal.ca>
To: Frank Fischer <frank-fischer <at> shadow-soft.de>
Cc: 13793 <at> debbugs.gnu.org, 13709 <at> debbugs.gnu.org, Michael Kifer <kifer <at> cs.stonybrook.edu>
Subject: bug#13793: 24.3.50; M-x broken in viper and X
Date: Sun, 24 Feb 2013 22:55:34 -0500
> Meta bindings do not work if Emacs is started in X and viper is
> enabled. To reproduce, type

>   emacs -Q
>   M-x viper RET
>   M-x

> the last command M-x shows 'M-x undefined'.

I can reproduce it here, but it's tricky to investigate because of all
the various keymap trickery.  The thing I noticed is that in emacs-24,
`f1 k M-x' also tells me "M-x is undefined" although M-x does work.

> As far as I can tell, the reason is viper's trick with the ESC
> key. viper binds (kbd "ESC") to a special command call
> `viper-intercept-ESC-key`.

AFAICT in the GUI case, viper-intercept-ESC-key is not called when you
hit M-x (at least that's what trace-function-background told me, both in
trunk and in emacs-24).

The same commit caused a problem in Evil as well (see bug#13709), and
I hope the problem is the same and can be fixed in the same way, but I'm
also having trouble figuring out what's happening in that case.

If someone familiar with Evil or Viper's keymap tricks could investigate
a bit more to try and see where the behavior changes, I can then
hopefully see how it relates to my read-key-sequence changes.


        Stefan




This bug report was last modified 8 years and 35 days ago.

Previous Next


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