From unknown Tue Sep 09 21:33:03 2025 X-Loop: help-debbugs@gnu.org Subject: bug#34416: 26.1; Some characters repeated in keyboard macro with quail chinese-py input method enabled Resent-From: "whatacold ." Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 10 Feb 2019 17:12:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 34416 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: To: 34416@debbugs.gnu.org X-Debbugs-Original-To: bug-gnu-emacs@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.154981868724059 (code B ref -1); Sun, 10 Feb 2019 17:12:01 +0000 Received: (at submit) by debbugs.gnu.org; 10 Feb 2019 17:11:27 +0000 Received: from localhost ([127.0.0.1]:42731 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gssda-0006Fy-Si for submit@debbugs.gnu.org; Sun, 10 Feb 2019 12:11:27 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52756) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gslBY-0000uN-7E for submit@debbugs.gnu.org; Sun, 10 Feb 2019 04:14:00 -0500 Received: from lists.gnu.org ([209.51.188.17]:53707) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gslBT-0001DX-1u for submit@debbugs.gnu.org; Sun, 10 Feb 2019 04:13:55 -0500 Received: from eggs.gnu.org ([209.51.188.92]:38899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gslBR-0005Vl-67 for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:54 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, HTML_MESSAGE,URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gslBP-0001BQ-Fq for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:53 -0500 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]:45587) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gslBP-000164-3W for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:51 -0500 Received: by mail-lf1-x135.google.com with SMTP id b20so5512015lfa.12 for ; Sun, 10 Feb 2019 01:13:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=dBRVI81MB2j/d70nSe9LvfdQ+KWfFVQnHV8L24qpnO8=; b=h9+22sr2kBd4xtY/279oUqNKOcpE+knDyp02ZyNh1i3cY5j8lfp6MMZAtoZ9NUn9qG +1/NyySQ1BerNbuKQXrXl3JEUJ1IB+2MdmfQAXMF6uiHp2yVKF4lVDXRQ5+7RjFp3tCB k+Rc6M/QOc+ek2g36ac4VHDMhSX5/ODVl8WWW8+c1SeIWpLzpiHeDsf3UknoNcFeVVAI sLzh8DXS5wjQ3EZNksvKSlydR2zBhoKvizaTg/3cxo/dQg2oZPi3iXlYzGC6G/ccsZjd H66f0gE/6bAGBUwiXNgUFj+DPv16RF1DTPgbAnLG2V02O6O11qgS8PieMo+yl02/gntX EmaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=dBRVI81MB2j/d70nSe9LvfdQ+KWfFVQnHV8L24qpnO8=; b=IIrVQVIHVTosAaXt/EHKzARQUUzVFRZpMf1OMQrsbyyGcfG1jrswu/4kY6g7nx/Jgf GrbVX+19ToXDGeHM0U0Rn1JmnjPBqpJJFaxxGAPAd6c8Ph2LaNrm3A7PFQO7kNV4UrqK 172zGuXFofS1+J1zSNHLenXLnsJptqe9Yz68xtSSwRmkNe+Z2x9iQDxHD28QUHSCn4zJ lX29TDh3LSG2H0SFxOENY9ktIDhJBmUTFa6N0emCJxniIVyvWcH/+E5o80bo/gVEa/Kk PesYDjFvcaz74itdswXRIsfomrRkb2WoBTwZo7IiHG50VlM1qy+LTgzRCQ3p0DVuwfSu pqSA== X-Gm-Message-State: AHQUAuaQDgjAT5WDEswcS2V5v9znZUnX7jZzmtkUZ9furmvaIdQ1E10A JBhNRzkVYjsutKlBExSZ5xN0atGmAhtV/wfRBIARAyBH+EQ= X-Google-Smtp-Source: AHgI3IaUg1uWWjjkyBlH693bDAiVNE2SY44rOMTpGFS6Ii91A6mWJ1Xkh/CkXys7yF+Vkn+AkZ++JxoGJZt99JR/Seo= X-Received: by 2002:ac2:5288:: with SMTP id q8mr2301827lfm.157.1549790012074; Sun, 10 Feb 2019 01:13:32 -0800 (PST) MIME-Version: 1.0 From: "whatacold ." Date: Sun, 10 Feb 2019 17:13:11 +0800 Message-ID: Content-Type: multipart/alternative; boundary="000000000000256d160581869b46" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::135 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: 1.0 (+) X-Mailman-Approved-At: Sun, 10 Feb 2019 12:11:25 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --000000000000256d160581869b46 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 1. Start a fresh emacs by 'emacs -Q' in terminal 2. Enable chinese-py input method of quail by eval'ing below snippet: (setq default-input-method "chinese-py") (toggle-input-method) 3. Start defining keyboard macro by hitting 'F3' 4. Input Chinese '=E4=BD=A0=E5=A5=BD' by typing 'ni1hao1' in the '*scratch*= ' buffer, and end keyboard macro by 'F4' 5. Replay keyboard macro by 'F4', it will get '=E5=97=AF=E4=BD=A0h=E5=A5=BD= ', which is *not* exactly the same. 6. 'M-x kmacro-edit-macro' shows that some characters('n' and 'h') are repeated: ;; Keyboard Macro Editor. Press C-c C-c to finish; press C-x k RET to cancel. ;; Original keys: nni1hhao1 Command: last-kbd-macro Key: none Macro: nni1hhao1 ;; self-insert-command * 9 7. My guess is that it's due to put back the key into 'unread-command-events' in the function 'quail-start-translation', i.e.: (if key (setq unread-command-events (cons key unread-command-events))) In GNU Emacs 26.1 (build 1, x86_64-redhat-linux-gnu, GTK+ Version 3.22.30) of 2018-06-26 built on buildhw-10.phx2.fedoraproject.org Windowing system distributor 'Fedora Project', version 11.0.11906000 System Description: Fedora release 28 (Twenty Eight) Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Loading quail/PY...done Configured using: 'configure --build=3Dx86_64-redhat-linux-gnu --host=3Dx86_64-redhat-linux-gnu --program-prefix=3D --disable-dependency-tracking --prefix=3D/usr --exec-prefix=3D/usr --bindir=3D/usr/bin --sbindir=3D/usr/sbin --sysconfdir=3D/etc --datadir=3D/usr/share --includedir=3D/usr/include --libdir=3D/usr/lib64 --libexecdir=3D/usr/libexec --localstatedir=3D/var --sharedstatedir=3D/var/lib --mandir=3D/usr/share/man --infodir=3D/usr/share/info --with-dbus --with-gif --with-jpeg --with-png --with-rsvg --with-tiff --with-xft --with-xpm --with-x-toolkit=3Dgtk3 --with-gpm=3Dno --with-xwidgets --with-modules build_alias=3Dx86_64-redhat-linux-gnu host_alias=3Dx86_64-redhat-linux-gnu 'CFLAGS=3D-DMAIL_USE_LOCKF -O2 -g -pipe -Wall -Werror=3Dformat-security -Wp,-D_FORTIFY_SOURCE=3D2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=3D/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=3D/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=3Dgeneric -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' LDFLAGS=3D-Wl,-z,relro PKG_CONFIG_PATH=3D:/usr/lib64/pkgconfig:/usr/share/pkgconfig' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS XWIDGETS LCMS2 Important settings: value of $LC_CTYPE: en_US.UTF-8 value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=3Dibus locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils quail help-mode easymenu cl-loaddefs cl-lib elec-pair time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting xwidget-internal move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 99183 11721) (symbols 48 20740 1) (miscs 40 58 129) (strings 32 36203 1462) (string-bytes 1 794714) (vectors 16 15442) (vector-slots 8 509842 12640) (floats 8 49 201) (intervals 56 296 7) (buffers 992 12)) --000000000000256d160581869b46 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
1. Start a fresh emacs by 'emacs= -Q' in terminal
2. Enable chinese-py input method of quail b= y eval'ing below snippet:

=C2=A0 =C2=A0 (setq = default-input-method "chinese-py")
=C2=A0 =C2=A0 (toggl= e-input-method)

3. Start defining keyboard macro b= y hitting 'F3'
4. Input Chinese '=E4=BD=A0=E5=A5=BD&#= 39; by typing 'ni1hao1' in the '*scratch*' buffer,
=C2=A0 =C2=A0 and end keyboard macro by 'F4'
5. Replay = keyboard macro by 'F4', it will get '=E5=97=AF=E4=BD=A0h=E5=A5= =BD', which is *not*
=C2=A0 =C2=A0 exactly the same.
6. 'M-x kmacro-edit-macro' shows that some characters('n'= and 'h') are repeated:
=C2=A0 =C2=A0 ;; Keyboard Macro E= ditor.=C2=A0 Press C-c C-c to finish; press C-x k RET to cancel.
= =C2=A0 =C2=A0 ;; Original keys: nni1hhao1
=C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 Command: last-kbd-macro
=C2=A0 =C2=A0 Key: n= one
=C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 Macro:
= =C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 nni1hhao1 ;; self-insert-command * 9

7. M= y guess is that it's due to put back the key into
'unread= -command-events' in the function 'quail-start-translation', i.e= .:
=C2=A0 =C2=A0 (if key
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (s= etq unread-command-events (cons key unread-command-events)))

=
In GNU Emacs 26.1 (build 1, x86_64-redhat-linux-gnu, GTK+ Versio= n 3.22.30)
=C2=A0of 2018-06-26 built on buildhw-10.phx2.fedoraproject.org
Windowing system distributor 'Fedora Project', version 11.0.119060= 00
System Description: Fed= ora release 28 (Twenty Eight)

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Loading quail/PY...done

Configured using:<= /div>
=C2=A0'configure --build=3Dx86_64-redhat-linux-gnu
= =C2=A0--host=3Dx86_64-redhat-linux-gnu --program-prefix=3D
=C2=A0= --disable-dependency-tracking --prefix=3D/usr --exec-prefix=3D/usr
=C2=A0--bindir=3D/usr/bin --sbindir=3D/usr/sbin --sysconfdir=3D/etc
=
=C2=A0--datadir=3D/usr/share --includedir=3D/usr/include --libdir=3D/u= sr/lib64
=C2=A0--libexecdir=3D/usr/libexec --localstatedir=3D/var=
=C2=A0--sharedstatedir=3D/var/lib --mandir=3D/usr/share/man
=C2=A0--infodir=3D/usr/share/info --with-dbus --with-gif --with-jpeg = --with-png
=C2=A0--with-rsvg --with-tiff --with-xft --with-xpm --= with-x-toolkit=3Dgtk3
=C2=A0--with-gpm=3Dno --with-xwidgets --wit= h-modules
=C2=A0build_alias=3Dx86_64-redhat-linux-gnu host_alias= =3Dx86_64-redhat-linux-gnu
=C2=A0'CFLAGS=3D-DMAIL_USE_LOCKF -= O2 -g -pipe -Wall -Werror=3Dformat-security
=C2=A0-Wp,-D_FORTIFY_= SOURCE=3D2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions
=C2=A0-fstack-p= rotector-strong -grecord-gcc-switches
=C2=A0-specs=3D/usr/lib/rpm= /redhat/redhat-hardened-cc1
=C2=A0-specs=3D/usr/lib/rpm/redhat/re= dhat-annobin-cc1 -m64 -mtune=3Dgeneric
=C2=A0-fasynchronous-unwin= d-tables -fstack-clash-protection -fcf-protection'
=C2=A0LDFL= AGS=3D-Wl,-z,relro
=C2=A0PKG_CONFIG_PATH=3D:/usr/lib64/pkgconfig:= /usr/share/pkgconfig'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY A= CL
LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS XWIDGETS LCMS2

Important settings:
=C2=A0 value of $LC_CTYPE: = en_US.UTF-8
=C2=A0 value of $LANG: en_US.UTF-8
=C2=A0 v= alue of $XMODIFIERS: @im=3Dibus
=C2=A0 locale-coding-system: utf-= 8-unix

Major mode: Lisp Interaction

=
Minor modes in effect:
=C2=A0 tooltip-mode: t
=C2=A0 global-eldoc-mode: t
=C2=A0 eldoc-mode: t
=C2= =A0 electric-indent-mode: t
=C2=A0 mouse-wheel-mode: t
= =C2=A0 tool-bar-mode: t
=C2=A0 menu-bar-mode: t
=C2=A0 = file-name-shadow-mode: t
=C2=A0 global-font-lock-mode: t
=C2=A0 font-lock-mode: t
=C2=A0 blink-cursor-mode: t
= =C2=A0 auto-composition-mode: t
=C2=A0 auto-encryption-mode: t
=C2=A0 auto-compression-mode: t
=C2=A0 line-number-mode: = t
=C2=A0 transient-mark-mode: t

Load-pat= h shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml<= /div>
mml-sec password-cache epa derived epg epg-config gnus-util rmail=
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231<= /div>
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-dru= ms
mm-util mail-prsvr mail-utils quail help-mode easymenu cl-load= defs
cl-lib elec-pair time-date mule-util tooltip eldoc electric = uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-= win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt f= ringe
tabulated-list replace newcomment text-mode elisp-mode lisp= -mode
prog-mode register page menu-bar rfn-eshadow isearch timer = select
scroll-bar mouse jit-lock font-lock syntax facemenu font-c= ore
term/tty-colors frame cl-generic cham georgian utf-8-lang mis= c-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp= -ms cp51932
hebrew greek romanian slovak czech european ethiopic = indian cyrillic
chinese composite charscript charprop case-table = epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-p= reloaded nadvice loaddefs
button faces cus-face macroexp files te= xt-properties overlay sha1 md5
base64 format env code-pages mule = custom widget hashtable-print-readable
backquote dbusbind inotify= lcms2 dynamic-setting system-font-setting
font-render-setting xw= idget-internal move-toolbar gtk x-toolkit x
multi-tty make-networ= k-process emacs)

Memory information:
((c= onses 16 99183 11721)
=C2=A0(symbols 48 20740 1)
=C2=A0= (miscs 40 58 129)
=C2=A0(strings 32 36203 1462)
=C2=A0(= string-bytes 1 794714)
=C2=A0(vectors 16 15442)
=C2=A0(= vector-slots 8 509842 12640)
=C2=A0(floats 8 49 201)
= =C2=A0(intervals 56 296 7)
=C2=A0(buffers 992 12))

=
--000000000000256d160581869b46-- From unknown Tue Sep 09 21:33:03 2025 MIME-Version: 1.0 X-Mailer: MIME-tools 5.505 (Entity 5.505) X-Loop: help-debbugs@gnu.org From: help-debbugs@gnu.org (GNU bug Tracking System) To: "whatacold ." Subject: bug#34416: closed (Re: bug#34416: 26.1; Some characters repeated in keyboard macro with quail chinese-py input method enabled) Message-ID: References: <837ee7mrlx.fsf@gnu.org> X-Gnu-PR-Message: they-closed 34416 X-Gnu-PR-Package: emacs Reply-To: 34416@debbugs.gnu.org Date: Sun, 10 Feb 2019 18:23:02 +0000 Content-Type: multipart/mixed; boundary="----------=_1549822982-31098-1" This is a multi-part message in MIME format... ------------=_1549822982-31098-1 Content-Disposition: inline Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Your bug report #34416: 26.1; Some characters repeated in keyboard macro with quail chinese= -py input method enabled which was filed against the emacs package, has been closed. The explanation is attached below, along with your original report. If you require more details, please reply to 34416@debbugs.gnu.org. --=20 34416: http://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D34416 GNU Bug Tracking System Contact help-debbugs@gnu.org with problems ------------=_1549822982-31098-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at 34416-done) by debbugs.gnu.org; 10 Feb 2019 18:22:22 +0000 Received: from localhost ([127.0.0.1]:42753 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gstkE-00084W-Eo for submit@debbugs.gnu.org; Sun, 10 Feb 2019 13:22:22 -0500 Received: from eggs.gnu.org ([209.51.188.92]:39899) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gstkD-00084J-2D for 34416-done@debbugs.gnu.org; Sun, 10 Feb 2019 13:22:21 -0500 Received: from fencepost.gnu.org ([2001:470:142:3::e]:43763) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gstk7-0006EL-In; Sun, 10 Feb 2019 13:22:15 -0500 Received: from [176.228.60.248] (port=3706 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_256_CBC_SHA1:256) (Exim 4.82) (envelope-from ) id 1gstk5-0003DH-Ot; Sun, 10 Feb 2019 13:22:15 -0500 Date: Sun, 10 Feb 2019 20:21:46 +0200 Message-Id: <837ee7mrlx.fsf@gnu.org> From: Eli Zaretskii To: "whatacold ." In-reply-to: (whatacold@gmail.com) Subject: Re: bug#34416: 26.1; Some characters repeated in keyboard macro with quail chinese-py input method enabled References: MIME-version: 1.0 Content-type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Spam-Score: -0.0 (/) X-Debbugs-Envelope-To: 34416-done Cc: 34416-done@debbugs.gnu.org X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -1.0 (-) > From: "whatacold ." > Date: Sun, 10 Feb 2019 17:13:11 +0800 > > 1. Start a fresh emacs by 'emacs -Q' in terminal > 2. Enable chinese-py input method of quail by eval'ing below snippet: > > (setq default-input-method "chinese-py") > (toggle-input-method) > > 3. Start defining keyboard macro by hitting 'F3' > 4. Input Chinese '你好' by typing 'ni1hao1' in the '*scratch*' buffer, > and end keyboard macro by 'F4' > 5. Replay keyboard macro by 'F4', it will get '嗯你h好', which is *not* > exactly the same. Thanks, this is bug #32108, which is already fixed on the master branch of the Emacs Git repository. ------------=_1549822982-31098-1 Content-Type: message/rfc822 Content-Disposition: inline Content-Transfer-Encoding: 7bit Received: (at submit) by debbugs.gnu.org; 10 Feb 2019 17:11:27 +0000 Received: from localhost ([127.0.0.1]:42731 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gssda-0006Fy-Si for submit@debbugs.gnu.org; Sun, 10 Feb 2019 12:11:27 -0500 Received: from eggs.gnu.org ([209.51.188.92]:52756) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1gslBY-0000uN-7E for submit@debbugs.gnu.org; Sun, 10 Feb 2019 04:14:00 -0500 Received: from lists.gnu.org ([209.51.188.17]:53707) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gslBT-0001DX-1u for submit@debbugs.gnu.org; Sun, 10 Feb 2019 04:13:55 -0500 Received: from eggs.gnu.org ([209.51.188.92]:38899) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gslBR-0005Vl-67 for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:54 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=0.8 required=5.0 tests=BAYES_50,FREEMAIL_FROM, HTML_MESSAGE,URIBL_BLOCKED autolearn=disabled version=3.3.2 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gslBP-0001BQ-Fq for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:53 -0500 Received: from mail-lf1-x135.google.com ([2a00:1450:4864:20::135]:45587) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1gslBP-000164-3W for bug-gnu-emacs@gnu.org; Sun, 10 Feb 2019 04:13:51 -0500 Received: by mail-lf1-x135.google.com with SMTP id b20so5512015lfa.12 for ; Sun, 10 Feb 2019 01:13:33 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:from:date:message-id:subject:to; bh=dBRVI81MB2j/d70nSe9LvfdQ+KWfFVQnHV8L24qpnO8=; b=h9+22sr2kBd4xtY/279oUqNKOcpE+knDyp02ZyNh1i3cY5j8lfp6MMZAtoZ9NUn9qG +1/NyySQ1BerNbuKQXrXl3JEUJ1IB+2MdmfQAXMF6uiHp2yVKF4lVDXRQ5+7RjFp3tCB k+Rc6M/QOc+ek2g36ac4VHDMhSX5/ODVl8WWW8+c1SeIWpLzpiHeDsf3UknoNcFeVVAI sLzh8DXS5wjQ3EZNksvKSlydR2zBhoKvizaTg/3cxo/dQg2oZPi3iXlYzGC6G/ccsZjd H66f0gE/6bAGBUwiXNgUFj+DPv16RF1DTPgbAnLG2V02O6O11qgS8PieMo+yl02/gntX EmaA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=dBRVI81MB2j/d70nSe9LvfdQ+KWfFVQnHV8L24qpnO8=; b=IIrVQVIHVTosAaXt/EHKzARQUUzVFRZpMf1OMQrsbyyGcfG1jrswu/4kY6g7nx/Jgf GrbVX+19ToXDGeHM0U0Rn1JmnjPBqpJJFaxxGAPAd6c8Ph2LaNrm3A7PFQO7kNV4UrqK 172zGuXFofS1+J1zSNHLenXLnsJptqe9Yz68xtSSwRmkNe+Z2x9iQDxHD28QUHSCn4zJ lX29TDh3LSG2H0SFxOENY9ktIDhJBmUTFa6N0emCJxniIVyvWcH/+E5o80bo/gVEa/Kk PesYDjFvcaz74itdswXRIsfomrRkb2WoBTwZo7IiHG50VlM1qy+LTgzRCQ3p0DVuwfSu pqSA== X-Gm-Message-State: AHQUAuaQDgjAT5WDEswcS2V5v9znZUnX7jZzmtkUZ9furmvaIdQ1E10A JBhNRzkVYjsutKlBExSZ5xN0atGmAhtV/wfRBIARAyBH+EQ= X-Google-Smtp-Source: AHgI3IaUg1uWWjjkyBlH693bDAiVNE2SY44rOMTpGFS6Ii91A6mWJ1Xkh/CkXys7yF+Vkn+AkZ++JxoGJZt99JR/Seo= X-Received: by 2002:ac2:5288:: with SMTP id q8mr2301827lfm.157.1549790012074; Sun, 10 Feb 2019 01:13:32 -0800 (PST) MIME-Version: 1.0 From: "whatacold ." Date: Sun, 10 Feb 2019 17:13:11 +0800 Message-ID: Subject: 26.1; Some characters repeated in keyboard macro with quail chinese-py input method enabled To: bug-gnu-emacs@gnu.org Content-Type: multipart/alternative; boundary="000000000000256d160581869b46" X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2a00:1450:4864:20::135 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Spam-Score: 1.0 (+) X-Debbugs-Envelope-To: submit X-Mailman-Approved-At: Sun, 10 Feb 2019 12:11:25 -0500 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -0.0 (/) --000000000000256d160581869b46 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable 1. Start a fresh emacs by 'emacs -Q' in terminal 2. Enable chinese-py input method of quail by eval'ing below snippet: (setq default-input-method "chinese-py") (toggle-input-method) 3. Start defining keyboard macro by hitting 'F3' 4. Input Chinese '=E4=BD=A0=E5=A5=BD' by typing 'ni1hao1' in the '*scratch*= ' buffer, and end keyboard macro by 'F4' 5. Replay keyboard macro by 'F4', it will get '=E5=97=AF=E4=BD=A0h=E5=A5=BD= ', which is *not* exactly the same. 6. 'M-x kmacro-edit-macro' shows that some characters('n' and 'h') are repeated: ;; Keyboard Macro Editor. Press C-c C-c to finish; press C-x k RET to cancel. ;; Original keys: nni1hhao1 Command: last-kbd-macro Key: none Macro: nni1hhao1 ;; self-insert-command * 9 7. My guess is that it's due to put back the key into 'unread-command-events' in the function 'quail-start-translation', i.e.: (if key (setq unread-command-events (cons key unread-command-events))) In GNU Emacs 26.1 (build 1, x86_64-redhat-linux-gnu, GTK+ Version 3.22.30) of 2018-06-26 built on buildhw-10.phx2.fedoraproject.org Windowing system distributor 'Fedora Project', version 11.0.11906000 System Description: Fedora release 28 (Twenty Eight) Recent messages: For information about GNU Emacs and the GNU system, type C-h C-a. Loading quail/PY...done Configured using: 'configure --build=3Dx86_64-redhat-linux-gnu --host=3Dx86_64-redhat-linux-gnu --program-prefix=3D --disable-dependency-tracking --prefix=3D/usr --exec-prefix=3D/usr --bindir=3D/usr/bin --sbindir=3D/usr/sbin --sysconfdir=3D/etc --datadir=3D/usr/share --includedir=3D/usr/include --libdir=3D/usr/lib64 --libexecdir=3D/usr/libexec --localstatedir=3D/var --sharedstatedir=3D/var/lib --mandir=3D/usr/share/man --infodir=3D/usr/share/info --with-dbus --with-gif --with-jpeg --with-png --with-rsvg --with-tiff --with-xft --with-xpm --with-x-toolkit=3Dgtk3 --with-gpm=3Dno --with-xwidgets --with-modules build_alias=3Dx86_64-redhat-linux-gnu host_alias=3Dx86_64-redhat-linux-gnu 'CFLAGS=3D-DMAIL_USE_LOCKF -O2 -g -pipe -Wall -Werror=3Dformat-security -Wp,-D_FORTIFY_SOURCE=3D2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=3D/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=3D/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=3Dgeneric -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' LDFLAGS=3D-Wl,-z,relro PKG_CONFIG_PATH=3D:/usr/lib64/pkgconfig:/usr/share/pkgconfig' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS XWIDGETS LCMS2 Important settings: value of $LC_CTYPE: en_US.UTF-8 value of $LANG: en_US.UTF-8 value of $XMODIFIERS: @im=3Dibus locale-coding-system: utf-8-unix Major mode: Lisp Interaction Minor modes in effect: tooltip-mode: t global-eldoc-mode: t eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t tool-bar-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-mode: t font-lock-mode: t blink-cursor-mode: t auto-composition-mode: t auto-encryption-mode: t auto-compression-mode: t line-number-mode: t transient-mark-mode: t Load-path shadows: None found. Features: (shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml mml-sec password-cache epa derived epg epg-config gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils quail help-mode easymenu cl-loaddefs cl-lib elec-pair time-date mule-util tooltip eldoc electric uniquify ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-win term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe tabulated-list replace newcomment text-mode elisp-mode lisp-mode prog-mode register page menu-bar rfn-eshadow isearch timer select scroll-bar mouse jit-lock font-lock syntax facemenu font-core term/tty-colors frame cl-generic cham georgian utf-8-lang misc-lang vietnamese tibetan thai tai-viet lao korean japanese eucjp-ms cp51932 hebrew greek romanian slovak czech european ethiopic indian cyrillic chinese composite charscript charprop case-table epa-hook jka-cmpr-hook help simple abbrev obarray minibuffer cl-preloaded nadvice loaddefs button faces cus-face macroexp files text-properties overlay sha1 md5 base64 format env code-pages mule custom widget hashtable-print-readable backquote dbusbind inotify lcms2 dynamic-setting system-font-setting font-render-setting xwidget-internal move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 16 99183 11721) (symbols 48 20740 1) (miscs 40 58 129) (strings 32 36203 1462) (string-bytes 1 794714) (vectors 16 15442) (vector-slots 8 509842 12640) (floats 8 49 201) (intervals 56 296 7) (buffers 992 12)) --000000000000256d160581869b46 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
1. Start a fresh emacs by 'emacs= -Q' in terminal
2. Enable chinese-py input method of quail b= y eval'ing below snippet:

=C2=A0 =C2=A0 (setq = default-input-method "chinese-py")
=C2=A0 =C2=A0 (toggl= e-input-method)

3. Start defining keyboard macro b= y hitting 'F3'
4. Input Chinese '=E4=BD=A0=E5=A5=BD&#= 39; by typing 'ni1hao1' in the '*scratch*' buffer,
=C2=A0 =C2=A0 and end keyboard macro by 'F4'
5. Replay = keyboard macro by 'F4', it will get '=E5=97=AF=E4=BD=A0h=E5=A5= =BD', which is *not*
=C2=A0 =C2=A0 exactly the same.
6. 'M-x kmacro-edit-macro' shows that some characters('n'= and 'h') are repeated:
=C2=A0 =C2=A0 ;; Keyboard Macro E= ditor.=C2=A0 Press C-c C-c to finish; press C-x k RET to cancel.
= =C2=A0 =C2=A0 ;; Original keys: nni1hhao1
=C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 Command: last-kbd-macro
=C2=A0 =C2=A0 Key: n= one
=C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 Macro:
= =C2=A0 =C2=A0=C2=A0
=C2=A0 =C2=A0 nni1hhao1 ;; self-insert-command * 9

7. M= y guess is that it's due to put back the key into
'unread= -command-events' in the function 'quail-start-translation', i.e= .:
=C2=A0 =C2=A0 (if key
=C2=A0 =C2=A0 =C2=A0 =C2=A0 (s= etq unread-command-events (cons key unread-command-events)))

=
In GNU Emacs 26.1 (build 1, x86_64-redhat-linux-gnu, GTK+ Versio= n 3.22.30)
=C2=A0of 2018-06-26 built on buildhw-10.phx2.fedoraproject.org
Windowing system distributor 'Fedora Project', version 11.0.119060= 00
System Description: Fed= ora release 28 (Twenty Eight)

Recent messages:
For information about GNU Emacs and the GNU system, type C-h C-a.
Loading quail/PY...done

Configured using:<= /div>
=C2=A0'configure --build=3Dx86_64-redhat-linux-gnu
= =C2=A0--host=3Dx86_64-redhat-linux-gnu --program-prefix=3D
=C2=A0= --disable-dependency-tracking --prefix=3D/usr --exec-prefix=3D/usr
=C2=A0--bindir=3D/usr/bin --sbindir=3D/usr/sbin --sysconfdir=3D/etc
=
=C2=A0--datadir=3D/usr/share --includedir=3D/usr/include --libdir=3D/u= sr/lib64
=C2=A0--libexecdir=3D/usr/libexec --localstatedir=3D/var=
=C2=A0--sharedstatedir=3D/var/lib --mandir=3D/usr/share/man
=C2=A0--infodir=3D/usr/share/info --with-dbus --with-gif --with-jpeg = --with-png
=C2=A0--with-rsvg --with-tiff --with-xft --with-xpm --= with-x-toolkit=3Dgtk3
=C2=A0--with-gpm=3Dno --with-xwidgets --wit= h-modules
=C2=A0build_alias=3Dx86_64-redhat-linux-gnu host_alias= =3Dx86_64-redhat-linux-gnu
=C2=A0'CFLAGS=3D-DMAIL_USE_LOCKF -= O2 -g -pipe -Wall -Werror=3Dformat-security
=C2=A0-Wp,-D_FORTIFY_= SOURCE=3D2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions
=C2=A0-fstack-p= rotector-strong -grecord-gcc-switches
=C2=A0-specs=3D/usr/lib/rpm= /redhat/redhat-hardened-cc1
=C2=A0-specs=3D/usr/lib/rpm/redhat/re= dhat-annobin-cc1 -m64 -mtune=3Dgeneric
=C2=A0-fasynchronous-unwin= d-tables -fstack-clash-protection -fcf-protection'
=C2=A0LDFL= AGS=3D-Wl,-z,relro
=C2=A0PKG_CONFIG_PATH=3D:/usr/lib64/pkgconfig:= /usr/share/pkgconfig'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GSETTINGS NOTIFY A= CL
LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS XWIDGETS LCMS2

Important settings:
=C2=A0 value of $LC_CTYPE: = en_US.UTF-8
=C2=A0 value of $LANG: en_US.UTF-8
=C2=A0 v= alue of $XMODIFIERS: @im=3Dibus
=C2=A0 locale-coding-system: utf-= 8-unix

Major mode: Lisp Interaction

=
Minor modes in effect:
=C2=A0 tooltip-mode: t
=C2=A0 global-eldoc-mode: t
=C2=A0 eldoc-mode: t
=C2= =A0 electric-indent-mode: t
=C2=A0 mouse-wheel-mode: t
= =C2=A0 tool-bar-mode: t
=C2=A0 menu-bar-mode: t
=C2=A0 = file-name-shadow-mode: t
=C2=A0 global-font-lock-mode: t
=C2=A0 font-lock-mode: t
=C2=A0 blink-cursor-mode: t
= =C2=A0 auto-composition-mode: t
=C2=A0 auto-encryption-mode: t
=C2=A0 auto-compression-mode: t
=C2=A0 line-number-mode: = t
=C2=A0 transient-mark-mode: t

Load-pat= h shadows:
None found.

Features:
(shadow sort mail-extr emacsbug message rmc puny seq byte-opt gv
bytecomp byte-compile cconv dired dired-loaddefs format-spec rfc822 mml<= /div>
mml-sec password-cache epa derived epg epg-config gnus-util rmail=
rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231<= /div>
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-dru= ms
mm-util mail-prsvr mail-utils quail help-mode easymenu cl-load= defs
cl-lib elec-pair time-date mule-util tooltip eldoc electric = uniquify
ediff-hook vc-hooks lisp-float-type mwheel term/x-win x-= win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt f= ringe
tabulated-list replace newcomment text-mode elisp-mode lisp= -mode
prog-mode register page menu-bar rfn-eshadow isearch timer = select
scroll-bar mouse jit-lock font-lock syntax facemenu font-c= ore
term/tty-colors frame cl-generic cham georgian utf-8-lang mis= c-lang
vietnamese tibetan thai tai-viet lao korean japanese eucjp= -ms cp51932
hebrew greek romanian slovak czech european ethiopic = indian cyrillic
chinese composite charscript charprop case-table = epa-hook jka-cmpr-hook
help simple abbrev obarray minibuffer cl-p= reloaded nadvice loaddefs
button faces cus-face macroexp files te= xt-properties overlay sha1 md5
base64 format env code-pages mule = custom widget hashtable-print-readable
backquote dbusbind inotify= lcms2 dynamic-setting system-font-setting
font-render-setting xw= idget-internal move-toolbar gtk x-toolkit x
multi-tty make-networ= k-process emacs)

Memory information:
((c= onses 16 99183 11721)
=C2=A0(symbols 48 20740 1)
=C2=A0= (miscs 40 58 129)
=C2=A0(strings 32 36203 1462)
=C2=A0(= string-bytes 1 794714)
=C2=A0(vectors 16 15442)
=C2=A0(= vector-slots 8 509842 12640)
=C2=A0(floats 8 49 201)
= =C2=A0(intervals 56 296 7)
=C2=A0(buffers 992 12))

=
--000000000000256d160581869b46-- ------------=_1549822982-31098-1--