From: Frank Fischer <frank-fischer@shadow-soft.de>
To: Stefan Monnier <monnier@iro.umontreal.ca>
Cc: 13793@debbugs.gnu.org, 13709@debbugs.gnu.org,
Michael Kifer <kifer@cs.stonybrook.edu>
Subject: bug#13709: bug#13793: 24.3.50; M-x broken in viper and X
Date: Tue, 26 Feb 2013 09:57:42 +0100 [thread overview]
Message-ID: <20130226085741.GB31613@bayes.mathematik.tu-chemnitz.de> (raw)
In-Reply-To: <jwva9qsqept.fsf-monnier+emacs@gnu.org>
On 02/25, Stefan Monnier wrote:
> > Anyhow, the real problem is to "multiplex" the (kbd "ESC") event in
> > the terminal. Any solution that sends 'escape instead of (kbd "ESC")
> > if another event arrives within a short period should solve the
> > problem.
>
> Now my question is: why do it with a minor-mode map rather than with
> an input-decode-map (which would also save you from having to rely on
> unread-command-events)? Oh, yes, of course, that input-decode-map
> binding would collide with the escape-sequence remappings.
>
> How 'bout something like:
>
> (defvar evil-normal-esc-map (lookup-key input-decode-map [?\e]))
> (define-key input-decode-map
> [?\e] `(menu-item "" ,evil-normal-esc-map
> :filter ,(lambda (map)
> (if (sit-for evail-esc-delay) [escape] map))))
This is a really clever solution, thank you a lot. It looks much
better than the current one. The Evil code is naturally "inspired" by
viper's code, so the reasons for its current form are hidden in the
shadows of history ;)
I will build something like this into Evil, then we will see if it
breaks something.
>
> [ Modulo some dance à la evil-esc-mode to add/remove this binding so
> that code that adds escape sequences to this map never bumps into the
> [escape] mapping. ]
Maybe one question, because I'm not too familiar with translation
keymaps. What do you think is the best solution to this
add-escape-sequences-to-input-decode-map-problem? The only possibility
that comes into my mind would be to advice `define-key` so that
`evil-normal-esc-map` is temporarily put back into `input-decode-map`.
Is there a better way than using such an advice?
Once again, thank you a lot!
Frank
next prev parent reply other threads:[~2013-02-26 8:57 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-02-23 11:35 bug#13793: 24.3.50; M-x broken in viper and X Frank Fischer
2013-02-25 3:55 ` Stefan Monnier
2013-02-25 20:16 ` bug#13709: " Frank Fischer
2013-02-25 21:35 ` Stefan Monnier
2013-02-26 8:57 ` Frank Fischer [this message]
2013-02-26 14:10 ` Stefan Monnier
2013-02-26 14:56 ` Frank Fischer
2013-02-26 18:12 ` bug#13709: " Stefan Monnier
2013-02-26 20:17 ` Frank Fischer
2013-02-27 17:59 ` bug#13709: " Frank Fischer
2013-02-27 19:08 ` Stefan Monnier
[not found] ` <76c7b8b296b248bf915de72349cfc0c9@HUBCAS2.cs.stonybrook.edu>
2013-02-26 7:17 ` bug#13709: " Michael Kifer
2013-06-15 12:25 ` Stefano Zacchiroli
2013-06-22 21:56 ` Stefan Monnier
2013-06-24 14:37 ` Stefano Zacchiroli
2013-06-25 16:17 ` Stefan Monnier
2013-07-01 16:32 ` Stefano Zacchiroli
2013-07-01 23:27 ` Stefan Monnier
[not found] ` <5fc5643667924a7eb32800ba7465bd7e@HUBCAS1.cs.stonybrook.edu>
2013-07-02 3:56 ` Michael Kifer
2013-07-02 7:55 ` Michael Kifer
2013-07-02 8:44 ` Stefano Zacchiroli
2013-07-02 14:41 ` Michael Kifer
2013-07-02 15:47 ` Glenn Morris
2013-07-02 16:39 ` Michael Kifer
2013-07-02 18:35 ` Glenn Morris
2013-07-02 18:18 ` Stefan Monnier
[not found] ` <435158c2008843bb9bd4a75345251bbe@HUBCAS1.cs.stonybrook.edu>
2013-06-22 23:49 ` Michael Kifer
2013-06-23 2:28 ` Stefan Monnier
2013-06-23 3:26 ` Michael Kifer
2013-07-04 21:13 ` Michael Kifer
2013-07-05 22:54 ` Michael Kifer
2013-07-06 19:12 ` Glenn Morris
2013-07-06 20:33 ` Michael Kifer
2013-07-06 21:01 ` Glenn Morris
2013-07-06 21:16 ` Michael Kifer
2013-07-06 21:27 ` Stephen Berman
2013-07-06 21:39 ` Stephen Berman
2013-07-07 19:41 ` Michael Kifer
2013-07-10 8:29 ` Stefan Monnier
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=20130226085741.GB31613@bayes.mathematik.tu-chemnitz.de \
--to=frank-fischer@shadow-soft.de \
--cc=13709@debbugs.gnu.org \
--cc=13793@debbugs.gnu.org \
--cc=kifer@cs.stonybrook.edu \
--cc=monnier@iro.umontreal.ca \
/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).