GNU bug report logs - #37909
25.3; repeat does not repeat yank correctly

Previous Next

Package: emacs;

Reported by: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>

Date: Thu, 24 Oct 2019 19:22:02 UTC

Severity: normal

Tags: moreinfo

Found in version 25.3

Done: Stefan Kangas <stefan <at> marxist.se>

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 37909 in the body.
You can then email your comments to 37909 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to bug-gnu-emacs <at> gnu.org:
bug#37909; Package emacs. (Thu, 24 Oct 2019 19:22:02 GMT) Full text and rfc822 format available.

Acknowledgement sent to "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>:
New bug report received and forwarded. Copy sent to bug-gnu-emacs <at> gnu.org. (Thu, 24 Oct 2019 19:22:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>
To: <bug-gnu-emacs <at> gnu.org>
Subject: 25.3; repeat does not repeat yank correctly
Date: Thu, 24 Oct 2019 21:21:46 +0200
Trying to repeat the last yank 98 times using "C-u 98 M-x repeat" turned out
that the last yank wasn't inserted 98 times, but the last character of the last
yank (which is quite unexpected). Most preferrably as a vi-user I'd like C-u 98
C-y to yank the last kill 98 times, but things seem different.

For the records: The last kill was "' '{L/R:D=I<1-49>C<6>S< >U}
{L/R:D=I<0-9>}'", and the text inserted was
"''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''".

In GNU Emacs 25.3.1 (x86_64-suse-linux-gnu, GTK+ Version 3.22.30)
 of 2019-05-04 built on lamb70
Windowing system distributor 'The X.Org Foundation', version 11.0.12003000
System Description:    openSUSE Leap 15.1

Configured using:
 'configure --with-pop --without-hesiod --with-kerberos --with-kerberos5
 --with-xim --with-wide-int --with-file-notification=inotify
 --with-modules --enable-autodepend --prefix=/usr
 --mandir=/usr/share/man --infodir=/usr/share/info --datadir=/usr/share
 --localstatedir=/var --sharedstatedir=/var/lib --libexecdir=/usr/lib

--enable-locallisppath=/usr/share/emacs/25.3/site-lisp:/usr/share/emacs/site-lisp
 --with-x --with-sound --with-xpm --with-jpeg --with-tiff --with-gif
 --with-png --with-rsvg --with-dbus --with-xft --without-gpm
 --with-x-toolkit=gtk3 --with-xwidgets --with-toolkit-scroll-bars
 --x-includes=/usr/include --x-libraries=/usr/lib64 --with-libotf
 --with-m17n-flt --build=x86_64-suse-linux 'CFLAGS=-fmessage-length=0
 -grecord-gcc-switches -O2 -Wall -D_FORTIFY_SOURCE=2
 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables
 -fstack-clash-protection -g -D_GNU_SOURCE
 -DGDK_DISABLE_DEPRECATION_WARNINGS -DGLIB_DISABLE_DEPRECATION_WARNINGS
 -pipe -Wno-pointer-sign -Wno-unused-variable -Wno-unused-label
 -Wno-unprototyped-calls -fno-optimize-sibling-calls -fno-PIE
 -DSYSTEM_PURESIZE_EXTRA=55000 -DSITELOAD_PURESIZE_EXTRA=10000 '
 LDFLAGS=-Wl,-O2'

Configured features:
XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND DBUS GCONF GSETTINGS NOTIFY
ACL LIBSELINUX GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB
TOOLKIT_SCROLL_BARS GTK3 X11 MODULES XWIDGETS

Important settings:
  value of $LC_CTYPE: de_DE.UTF-8
  value of $LC_NUMERIC: POSIX
  value of $LANG: de_DE.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

Major mode: Shell-script

Minor modes in effect:
  sh-electric-here-document-mode: t
  diff-auto-refine-mode: t
  shell-dirtrack-mode: t
  show-paren-mode: t
  tooltip-mode: t
  global-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
  column-number-mode: t
  line-number-mode: t
  transient-mark-mode: t

Recent messages:
Undo! [2 times]
Mark set
Repeating command 98 self-insert-command
You can run the command ‘repeat’ with C-x z
Repeating command 98 self-insert-command
Undo!
Mark set
Undo!
Making completion list... [2 times]
GNU Emacs 25.3.1 (x86_64-suse-linux-gnu, GTK+ Version 3.22.30) of 2019-05-04

Load-path shadows:
/usr/share/emacs/site-lisp/lilypond-init hides
/usr/share/emacs/site-lisp/site-start.d/lilypond-init

Features:
(shadow sort mail-extr warnings emacsbug message dired rfc822 mml
mml-sec epg epg-config mm-decode mm-bodies mm-encode mail-parse rfc2231
mailabbrev gmm-utils mailheader sendmail rfc2047 rfc2045 ietf-drums
mail-utils repeat apropos misearch multi-isearch eieio-opt speedbar
sb-image ezimage dframe vc-git sh-script smie smerge-mode cus-edit
wid-edit diff cus-start cus-load diff-mode vc vc-dispatcher vc-filewise
vc-rcs perl-mode ido seq ess-toolbar ess-mouse mouseme thingatpt
browse-url ess-swv ess-noweb ess-noweb-font-lock-mode ess-bugs-l
ess-sas-d ess-sas-l ess-sas-a ess-stata-mode ess-stata-lang cc-vars
cc-defs make-regexp essd-els ess-sp6-d ess-dde ess-sp3-d ess-julia
julia-mode ert pp findess-r-syntax ess-r-completion ess-roxy essddr ess-rd noutline outline
easy-mmode hideshow ess-s-lang ess-help ess ess-mode ess-noweb-mode
ess-inf ess-tracebug compile tramp tramp-compat auth-source cl-seq eieio
byte-opt bytecomp byte-compile cl-extra cconv eieio-core gnus-util
mm-util help-fns help-mode mail-prsvr password-cache tramp-loaddefs
cl-macs trampver ucs-normalize shell pcomplete comint ansi-color ring
format-spec advice ess-generics cl gv cl-loaddefs pcase cl-lib
ess-custom executable easymenu ess-compat ess-utils ess-site xfonts
rmailgen paren time-date mule-util delsel lpr tooltip eldoc electric
uniquify ediff-hook vc-hooks lisp-float-type mwheel x-win
term/common-win x-dnd tool-bar dnd fontset image regexp-opt fringe
tabulated-list newcomment elisp-mode lisp-mode prog-mode register page
menu-bar rfn-eshadow timer select scroll-bar mouse jit-lock font-lock
syntax facemenu font-core 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 charscript case-table epa-hook jka-cmpr-hook help
simple abbrev 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 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 315008 16003)
 (symbols 48 31274 0)
 (miscs 40 462 461)
 (strings 32 52716 9687)
 (string-bytes 1 1531952)
 (vectors 16 47137)
 (vector-slots 8 859179 3988)
 (floats 8 332 474)
 (intervals 56 2744 70)
 (buffers 976 27))





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#37909; Package emacs. (Thu, 24 Oct 2019 19:28:02 GMT) Full text and rfc822 format available.

Message #8 received at 37909 <at> debbugs.gnu.org (full text, mbox):

From: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>
To: <37909 <at> debbugs.gnu.org>
Subject: Possible work-around
Date: Thu, 24 Oct 2019 21:27:31 +0200
There is a work-around (Record yank as a macro, then execute that macro repeatedly): C-x ( C-y C-x ) C-u 9 8 C-x e





Information forwarded to bug-gnu-emacs <at> gnu.org:
bug#37909; Package emacs. (Fri, 25 Oct 2019 09:19:02 GMT) Full text and rfc822 format available.

Message #11 received at 37909 <at> debbugs.gnu.org (full text, mbox):

From: Eli Zaretskii <eliz <at> gnu.org>
To: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>
Cc: 37909 <at> debbugs.gnu.org
Subject: Re: bug#37909: 25.3; repeat does not repeat yank correctly
Date: Fri, 25 Oct 2019 12:17:50 +0300
> Date: Thu, 24 Oct 2019 21:21:46 +0200
> From: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>
> 
> Trying to repeat the last yank 98 times using "C-u 98 M-x repeat" turned out
> that the last yank wasn't inserted 98 times, but the last character of the last
> yank (which is quite unexpected). Most preferrably as a vi-user I'd like C-u 98
> C-y to yank the last kill 98 times, but things seem different.
> 
> For the records: The last kill was "' '{L/R:D=I<1-49>C<6>S< >U}
> {L/R:D=I<0-9>}'", and the text inserted was
> "''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''".

The doc string of 'repeat' says:

  Repeat most recently executed command.
  If REPEAT-ARG is non-nil (interactively, with a prefix argument),
  supply a prefix argument to that command.

So "C-u 98 M-x repeat" invokes the _previous_ command, in your case
C-y, with the argument of 98.  And the documentation of C-y says:

  With argument N, reinsert the Nth most recent kill.

So it does NOT insert the most recent kill 98 times, it inserts the
98th recent kill.

Does this explain what you saw?  If not, what remains unexplained or
unexpected?

Thanks.




Added tag(s) moreinfo. Request was from Lars Ingebrigtsen <larsi <at> gnus.org> to control <at> debbugs.gnu.org. (Mon, 28 Oct 2019 15:49:01 GMT) Full text and rfc822 format available.

Reply sent to Stefan Kangas <stefan <at> marxist.se>:
You have taken responsibility. (Thu, 16 Jan 2020 14:28:02 GMT) Full text and rfc822 format available.

Notification sent to "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>:
bug acknowledged by developer. (Thu, 16 Jan 2020 14:28:02 GMT) Full text and rfc822 format available.

Message #18 received at 37909-done <at> debbugs.gnu.org (full text, mbox):

From: Stefan Kangas <stefan <at> marxist.se>
To: Eli Zaretskii <eliz <at> gnu.org>
Cc: Ulrich Windl <Ulrich.Windl <at> rz.uni-regensburg.de>,
 37909-done <at> debbugs.gnu.org
Subject: Re: bug#37909: 25.3; repeat does not repeat yank correctly
Date: Thu, 16 Jan 2020 15:26:57 +0100
Eli Zaretskii <eliz <at> gnu.org> writes:

>> Date: Thu, 24 Oct 2019 21:21:46 +0200
>> From: "Ulrich Windl" <Ulrich.Windl <at> rz.uni-regensburg.de>
>> 
>> Trying to repeat the last yank 98 times using "C-u 98 M-x repeat" turned out
>> that the last yank wasn't inserted 98 times, but the last character of the last
>> yank (which is quite unexpected). Most preferrably as a vi-user I'd like C-u 98
>> C-y to yank the last kill 98 times, but things seem different.
>> 
>> For the records: The last kill was "' '{L/R:D=I<1-49>C<6>S< >U}
>> {L/R:D=I<0-9>}'", and the text inserted was
>> "''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''".
>
> The doc string of 'repeat' says:
>
>   Repeat most recently executed command.
>   If REPEAT-ARG is non-nil (interactively, with a prefix argument),
>   supply a prefix argument to that command.
>
> So "C-u 98 M-x repeat" invokes the _previous_ command, in your case
> C-y, with the argument of 98.  And the documentation of C-y says:
>
>   With argument N, reinsert the Nth most recent kill.
>
> So it does NOT insert the most recent kill 98 times, it inserts the
> 98th recent kill.
>
> Does this explain what you saw?  If not, what remains unexplained or
> unexpected?

More information was requested, but none was given within 11 weeks, so
I'm closing this bug.  If this is still an issue, please reply to this
email (use "Reply to all" in your email client) and we can reopen the
bug report.

Best regards,
Stefan Kangas




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Fri, 14 Feb 2020 12:24:04 GMT) Full text and rfc822 format available.

This bug report was last modified 4 years and 72 days ago.

Previous Next


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