GNU bug report logs -
#32108
27.0.50; Insertion of char from input method during macro invocation duplicates the char
Previous Next
Reported by: Filipp Gunbin <fgunbin <at> fastmail.fm>
Date: Mon, 9 Jul 2018 22:42:02 UTC
Severity: normal
Tags: confirmed
Merged with 34248
Found in versions 25.1, 27.0.50
Fixed in version 27.1
Done: Eli Zaretskii <eliz <at> gnu.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 32108 in the body.
You can then email your comments to 32108 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Mon, 09 Jul 2018 22:42:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Filipp Gunbin <fgunbin <at> fastmail.fm>
:
New bug report received and forwarded. Copy sent to
bug-gnu-emacs <at> gnu.org
.
(Mon, 09 Jul 2018 22:42:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
emacs -Q
C-u C-\ russian-computer
C-x (
<type any letter>
C-x )
C-x e
The last command inserts two chars instead of one.
In GNU Emacs 27.0.50 (build 2, x86_64-apple-darwin17.6.0)
Repository revision: 6ffc6a698f5d425e402c35010394cdb17d8888ce
System Description: Mac OS X 10.13.5
Configured using:
'configure CC=/usr/bin/gcc --without-all --without-ns --with-dbus
--with-file-notification=no --with-gnutls --with-modules --with-xml2
--with-zlib'
Configured features:
GNUTLS LIBXML2 ZLIB MODULES
Important settings:
value of $LC_CTYPE: UTF-8
value of $LANG: ru_RU.UTF-8
locale-coding-system: utf-8-unix
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Tue, 10 Jul 2018 16:19:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> From: Filipp Gunbin <fgunbin <at> fastmail.fm>
> Date: Tue, 10 Jul 2018 01:41:01 +0300
>
>
> emacs -Q
> C-u C-\ russian-computer
> C-x (
> <type any letter>
> C-x )
> C-x e
>
> The last command inserts two chars instead of one.
>
>
> In GNU Emacs 27.0.50 (build 2, x86_64-apple-darwin17.6.0)
> Repository revision: 6ffc6a698f5d425e402c35010394cdb17d8888ce
> System Description: Mac OS X 10.13.5
Thanks. I see this in the current emacs-26 branch as well. If you
can afford it, would you please bisect this bug? I'd like to at least
know how long ago did we break this (I'm afraid not too long).
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Tue, 10 Jul 2018 22:39:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 32108 <at> debbugs.gnu.org (full text, mbox):
On 10/07/2018 19:18 +0300, Eli Zaretskii wrote:
>> From: Filipp Gunbin <fgunbin <at> fastmail.fm>
>> Date: Tue, 10 Jul 2018 01:41:01 +0300
>>
>>
>> emacs -Q
>> C-u C-\ russian-computer
>> C-x (
>> <type any letter>
>> C-x )
>> C-x e
>>
>> The last command inserts two chars instead of one.
>>
>>
>> In GNU Emacs 27.0.50 (build 2, x86_64-apple-darwin17.6.0)
>> Repository revision: 6ffc6a698f5d425e402c35010394cdb17d8888ce
>> System Description: Mac OS X 10.13.5
>
> Thanks. I see this in the current emacs-26 branch as well. If you
> can afford it, would you please bisect this bug? I'd like to at least
> know how long ago did we break this (I'm afraid not too long).
I was trying to find the "good" commit to start bisect with, got past
25.1 (bug present there), but cannot build any of 24.x:
Loading /Users/fgunbin/src/emacs-bisect/lisp/button.el (source)...
Loading /Users/fgunbin/src/emacs-bisect/lisp/startup.el (source)...
Wrong type argument: listp, 35183230188054
make[1]: *** [Makefile:757: bootstrap-emacs] Error 1
make[1]: Leaving directory '/Users/fgunbin/src/emacs-bisect/src'
make: *** [Makefile:382: src] Error 2
I'm not sure what to do with this error.
Thanks,
Filipp
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 00:55:02 GMT)
Full text and
rfc822 format available.
Message #14 received at 32108 <at> debbugs.gnu.org (full text, mbox):
Filipp Gunbin wrote:
> I was trying to find the "good" commit to start bisect with, got past
> 25.1 (bug present there), but cannot build any of 24.x:
Maybe your toolchain is tool new/old/something. Anyway, builds for me,
and bisects to 30a6b1f81412044aa7dda5573b0142a0a03c4fd3.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 03:10:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> From: Filipp Gunbin <fgunbin <at> fastmail.fm>
> Cc: 32108 <at> debbugs.gnu.org
> Date: Wed, 11 Jul 2018 01:38:23 +0300
>
> > Thanks. I see this in the current emacs-26 branch as well. If you
> > can afford it, would you please bisect this bug? I'd like to at least
> > know how long ago did we break this (I'm afraid not too long).
>
> I was trying to find the "good" commit to start bisect with, got past
> 25.1 (bug present there), but cannot build any of 24.x:
OK, thanks. I see that Emacs 24.5 doesn't have the problem, so the
bug was introduced in development of Emacs 25.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 03:12:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> From: Glenn Morris <rgm <at> gnu.org>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 32108 <at> debbugs.gnu.org
> Date: Tue, 10 Jul 2018 20:54:31 -0400
>
> Filipp Gunbin wrote:
>
> > I was trying to find the "good" commit to start bisect with, got past
> > 25.1 (bug present there), but cannot build any of 24.x:
>
> Maybe your toolchain is tool new/old/something. Anyway, builds for me,
> and bisects to 30a6b1f81412044aa7dda5573b0142a0a03c4fd3.
Thanks!
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 09:30:02 GMT)
Full text and
rfc822 format available.
Message #23 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> From: Glenn Morris <rgm <at> gnu.org>
> Cc: Eli Zaretskii <eliz <at> gnu.org>, 32108 <at> debbugs.gnu.org
> Date: Tue, 10 Jul 2018 20:54:31 -0400
>
> bisects to 30a6b1f81412044aa7dda5573b0142a0a03c4fd3.
AFAICS, this happens because when an input method is active, read_char
is called recursively from quail-start-translation, and that recursive
call records the same character for the second time.
Any ideas except introduction of a new variable, inhibit-record-char,
which quail-start-translation would bind to prevent recording of the
same key more than once?
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 12:59:02 GMT)
Full text and
rfc822 format available.
Message #26 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> AFAICS, this happens because when an input method is active, read_char
> is called recursively from quail-start-translation, and that recursive
> call records the same character for the second time.
>
> Any ideas except introduction of a new variable, inhibit-record-char,
> which quail-start-translation would bind to prevent recording of the
> same key more than once?
I haven't taken the time to look at the details of why read_char sees
the character twice, but maybe we can use the (t . EVENT) format of
events which says that EVENT shouldn't be recorded (tho I'm not sure
it's the same form of "recording" and I'm not sure either that we can
apply this trick to the right "copy" of the two).
Stefan
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Wed, 11 Jul 2018 15:24:01 GMT)
Full text and
rfc822 format available.
Message #29 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> From: Stefan Monnier <monnier <at> IRO.UMontreal.CA>
> Cc: Glenn Morris <rgm <at> gnu.org>, fgunbin <at> fastmail.fm, 32108 <at> debbugs.gnu.org
> Date: Wed, 11 Jul 2018 08:58:25 -0400
>
> I haven't taken the time to look at the details of why read_char sees
> the character twice, but maybe we can use the (t . EVENT) format of
> events which says that EVENT shouldn't be recorded (tho I'm not sure
> it's the same form of "recording" and I'm not sure either that we can
> apply this trick to the right "copy" of the two).
I think I'm missing something: how does (t . EVENT) help us in this
case? What we need is a way to distinguish between a character that
gets re-processed by quail.el from the use case described in the
reference mentioned in the log message of commit 30a6b1f, which was
the reason why we added the second call to record_char to read_char,
where previously there was none. Don't both of these use cases use
the same machinery?
Thanks.
bug Marked as found in versions 25.1.
Request was from
Noam Postavsky <npostavs <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Wed, 11 Jul 2018 21:35:01 GMT)
Full text and
rfc822 format available.
Added tag(s) confirmed.
Request was from
Noam Postavsky <npostavs <at> gmail.com>
to
control <at> debbugs.gnu.org
.
(Wed, 11 Jul 2018 21:35:01 GMT)
Full text and
rfc822 format available.
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Sat, 21 Jul 2018 09:17:01 GMT)
Full text and
rfc822 format available.
Message #36 received at 32108 <at> debbugs.gnu.org (full text, mbox):
> Date: Wed, 11 Jul 2018 12:29:03 +0300
> From: Eli Zaretskii <eliz <at> gnu.org>
> Cc: fgunbin <at> fastmail.fm, 32108 <at> debbugs.gnu.org
>
> > From: Glenn Morris <rgm <at> gnu.org>
> > Cc: Eli Zaretskii <eliz <at> gnu.org>, 32108 <at> debbugs.gnu.org
> > Date: Tue, 10 Jul 2018 20:54:31 -0400
> >
> > bisects to 30a6b1f81412044aa7dda5573b0142a0a03c4fd3.
>
> AFAICS, this happens because when an input method is active, read_char
> is called recursively from quail-start-translation, and that recursive
> call records the same character for the second time.
>
> Any ideas except introduction of a new variable, inhibit-record-char,
> which quail-start-translation would bind to prevent recording of the
> same key more than once?
No other ideas, so I pushed to the master branch a fix along the above
lines (except it turned out to be slightly more tricky due to input
methods that translate sequences of two or more keys). Please test.
Btw, it turned out the offending commit also caused us in this
situation to output keys twice to the dribble file and insert them
twice into recent-keys, so this fix resolves those problems as well.
Let's see how much I broke this time...
Information forwarded
to
bug-gnu-emacs <at> gnu.org
:
bug#32108
; Package
emacs
.
(Mon, 23 Jul 2018 18:39:02 GMT)
Full text and
rfc822 format available.
Message #39 received at 32108 <at> debbugs.gnu.org (full text, mbox):
On 21/07/2018 12:15 +0300, Eli Zaretskii wrote:
> No other ideas, so I pushed to the master branch a fix along the above
> lines (except it turned out to be slightly more tricky due to input
> methods that translate sequences of two or more keys). Please test.
LGTM, it indeed fixes the problem, thanks!
Reply sent
to
Eli Zaretskii <eliz <at> gnu.org>
:
You have taken responsibility.
(Mon, 23 Jul 2018 18:59:01 GMT)
Full text and
rfc822 format available.
Notification sent
to
Filipp Gunbin <fgunbin <at> fastmail.fm>
:
bug acknowledged by developer.
(Mon, 23 Jul 2018 18:59:02 GMT)
Full text and
rfc822 format available.
Message #44 received at 32108-done <at> debbugs.gnu.org (full text, mbox):
> From: Filipp Gunbin <fgunbin <at> fastmail.fm>
> Cc: rgm <at> gnu.org, monnier <at> iro.umontreal.ca, 32108 <at> debbugs.gnu.org
> Date: Mon, 23 Jul 2018 21:38:29 +0300
>
> On 21/07/2018 12:15 +0300, Eli Zaretskii wrote:
>
> > No other ideas, so I pushed to the master branch a fix along the above
> > lines (except it turned out to be slightly more tricky due to input
> > methods that translate sequences of two or more keys). Please test.
>
> LGTM, it indeed fixes the problem, thanks!
Thanks for testing. I'm closing the bug, feel free to reopen if some
issues arise.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Tue, 21 Aug 2018 11:24:04 GMT)
Full text and
rfc822 format available.
bug unarchived.
Request was from
Glenn Morris <rgm <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Tue, 29 Jan 2019 18:53:01 GMT)
Full text and
rfc822 format available.
Forcibly Merged 32108 34248.
Request was from
Glenn Morris <rgm <at> gnu.org>
to
control <at> debbugs.gnu.org
.
(Tue, 29 Jan 2019 18:53:02 GMT)
Full text and
rfc822 format available.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 27 Feb 2019 12:24:03 GMT)
Full text and
rfc822 format available.
This bug report was last modified 6 years and 117 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.