GNU bug report logs - #33749
26.1; input-decode-map to empty vector should preserve echo area

Previous Next

Package: emacs;

Reported by: Yuri Khan <yurivkhan <at> gmail.com>

Date: Fri, 14 Dec 2018 22:26:02 UTC

Severity: normal

Found in version 26.1

Full log


View this message in rfc822 format

From: Yuri Khan <yurivkhan <at> gmail.com>
To: Stefan Monnier <monnier <at> iro.umontreal.ca>
Cc: Eli Zaretskii <eliz <at> gnu.org>, 33749 <at> debbugs.gnu.org
Subject: bug#33749: 26.1; input-decode-map to empty vector should preserve echo area
Date: Tue, 1 Jan 2019 23:09:23 +0700
On Wed, Dec 26, 2018 at 3:07 AM Stefan Monnier <monnier <at> iro.umontreal.ca> wrote:

> Note also that the current patch is likely not quite right yet anyway:
> I mostly posted it for discussion.  E.g. I think where I put it
> currently, it fails to be run for single-key commands.

Alas, it fails in more than that one way.

    (define-key input-decode-map (kbd "<f5> <f5>") [])

    <f5> (wait 1s)
    → f5-

    <f5> (again)
    → f5 f5-

i.e., although we are in the start state, the echo area contains the
last path that led to it;

    <f5> (third time)
    → f5-

    C-g
    → <f5> C-g is undefined

After that it breaks:

    <f5> (and wait 1s again)
    → (nothing happens) <f5> C-g is undefined

    x
    → <f5> x is undefined

i.e. it “heard” the <f5> but did not echo it.

Also:

    ESC (and wait 1s)
    → ESC-

    <f5>
    → ESC f5-

    <f5>
    →

The echo area clears but the current prefix is ESC:

    C-g
    → C-M-g is undefined


Do we have anything resembling a feature specification for echoing?
Automated tests? Even just a mechanism for testing key sequence
reading and echoing?

I see a file, test/src/keyboard-tests.el. I see there is a mechanism
to feed keystrokes, either immediately or on a timer. I will look if
these can be used to exercise the echoing code path.




This bug report was last modified 6 years and 234 days ago.

Previous Next


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