GNU bug report logs - #31692
aggressive-indent-mode causes Emacs to sometimes drop key events

Previous Next

Package: emacs;

Reported by: Radon Rosborough <radon.neon <at> gmail.com>

Date: Sun, 3 Jun 2018 02:23: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: Michael Heerdegen <michael_heerdegen <at> web.de>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: radon.neon <at> gmail.com, 31692 <at> debbugs.gnu.org
Subject: bug#31692: Emacs sometimes drops key events
Date: Thu, 07 Jun 2018 00:50:00 +0200
Eli Zaretskii <eliz <at> gnu.org> writes:

> I don't think I understand what you mean by "not propagated".  The
> documentation says that if input arrives, the forms in the body of
> while-no-input are _aborted_ as if by interrupt.

Yes, those in the _body: of while-no-input.  But not those in the
outside scope, which is what is happening here also.

> > I also read the documentation of the
> > low-level tools with which this is implemented - `throw-input' and
> > `quit-flag', and that also gives me the impression that generating a
> > "quit" signal is not intended (that would also be not very useful).  We
> > only want a quit to come through when the user really quits (C-g) -
> > that's while `while-no-input' (which uses `with-local-quit' that sets
> > `quit-flag') explicitly quit - but only when a quit had been
> > intercepted.
>
> But in your case while-no-input was the top-level form, no?  So where
> else can a quit throw?

There should be no quit at all.  `throw-on-input' uses a special value
`quit-flag' internally to implement what it does, but AFAIU signaling a
real quit is not intended.

In my example, `test' was the top-level form, and I would expect that
`while-no-input' completes normally, which it doesn't in this case.
This case is the only one I know of where `while-no-input' is left with
an nonlocal exit.  AFAIU `while-no-input' is also not meant to consume
user input, and `sit-for' also should not do this.  Only the combination
of the two shows this behavior.


Michael.




This bug report was last modified 7 years and 19 days ago.

Previous Next


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