28.2; Undo on yanked message fills message body with headers

  • Done
  • quality assurance status badge
Details
2 participants
  • Eric Abrahamsen
  • Bruno Victal
Owner
unassigned
Submitted by
Bruno Victal
Severity
normal
B
B
Bruno Victal wrote on 19 Sep 2023 17:11
(address . bug-gnu-emacs@gnu.org)
87msxi19l2.fsf@makinata.eu
1. Using debbugs (elpa), go to issue #66057.
2. Open the 3rd reply. (from Jean Abou Samra)
3. In the Article buffer (the buffer with the message) do `S v' to
start a wide reply.
4. Within the message body, do `C-c C-y' to copy the original
message/yank.

Issue #1: I get a “Jean Abou Samra writes:” line followed by nothing, it
didn't paste the contents of the message I'm replying to.

5. Press `Undo'.

Issue #2: Instead of reverting to an empty message body, I get the
headers of the message I'm replying to in its place.

Notes that might be of interest:
* I have set `message-generate-hashcash' to `t'.

There's also another issue I've encountered when I reattempted to reply
but using `S V' (wide reply with yank): The message doesn't seem to be
properly quoted. I only see a single level of '>' whereas I'd expect to
see part of the body with '>>' corresponding to the quoted parts of the
original message that started the discussion.


In GNU Emacs 28.2 (build 1, x86_64-pc-linux-gnu, GTK+ Version 3.24.37, cairo version 1.16.0)
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Guix System

Configured using:
'configure
CONFIG_SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash
SHELL=/gnu/store/rib9g2ig1xf3kclyl076w28parmncg4k-bash-minimal-5.1.16/bin/bash
--prefix=/gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2
--enable-fast-install --with-modules --with-cairo
--with-native-compilation --disable-build-details'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES
NATIVE_COMP NOTIFY INOTIFY PDUMPER PNG RSVG SECCOMP SOUND THREADS TIFF
TOOLKIT_SCROLL_BARS X11 XDBE XIM XPM GTK3 ZLIB

Important settings:
value of $EMACSLOADPATH: /home/ika/.guix-home/profile/share/emacs/site-lisp:/run/current-system/profile/share/emacs/site-lisp:/gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp
value of $LANG: en_US.utf8
locale-coding-system: utf-8-unix

Major mode: Scheme

Minor modes in effect:
geiser-mode: t
geiser-autodoc-mode: t
tooltip-mode: t
global-eldoc-mode: t
eldoc-mode: t
show-paren-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

Load-path shadows:
/home/ika/.guix-home/profile/share/emacs/site-lisp/site-start hides /run/current-system/profile/share/emacs/site-lisp/site-start
/home/ika/.guix-home/profile/share/emacs/site-lisp/guix-emacs hides /run/current-system/profile/share/emacs/site-lisp/guix-emacs
/gnu/store/jl5i2kxwmbqsavs4vk59kq02w6mmnk0f-emacs-transient-0.4.3-0.cc0fa80/share/emacs/site-lisp/transient-0.4.3-0.cc0fa80/transient hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/transient
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-docview hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-docview
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-lint hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-lint
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-sql hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-sql
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-pcomplete hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-pcomplete
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-faces hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-faces
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-agenda hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-agenda
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-irc hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-irc
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-octave hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-octave
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-forth hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-forth
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-duration hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-duration
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-calc hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-calc
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/oc-basic hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/oc-basic
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-org hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-org
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-exp hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-exp
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/oc-csl hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/oc-csl
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-core hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-core
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-ascii hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-ascii
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-lisp hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-lisp
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-latex hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-latex
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-compat hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-compat
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-habit hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-habit
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-list hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-list
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/oc-biblatex hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/oc-biblatex
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-clock hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-clock
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-refile hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-refile
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-html hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-html
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-rmail hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-rmail
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-entities hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-entities
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-man hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-man
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-macs hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-macs
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-ctags hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-ctags
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-fortran hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-fortran
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-bbdb hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-bbdb
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-python hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-python
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-attach-git hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-attach-git
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-num hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-num
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-goto hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-goto
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-awk hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-awk
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/oc-natbib hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/oc-natbib
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-element hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-element
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-colview hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-colview
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-lilypond hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-lilypond
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-clojure hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-clojure
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-capture hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-capture
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-src hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-src
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-shell hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-shell
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-latex hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-latex
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-tangle hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-tangle
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-mobile hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-mobile
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-groovy hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-groovy
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-info hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-info
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-man hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-man
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-table hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-table
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-protocol hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-protocol
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-texinfo hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-texinfo
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-tempo hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-tempo
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-haskell hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-haskell
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-lua hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-lua
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-version hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-version
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-timer hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-timer
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-processing hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-processing
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-org hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-org
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-table hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-table
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-scheme hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-scheme
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-emacs-lisp hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-emacs-lisp
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-w3m hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-w3m
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-archive hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-archive
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/oc hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/oc
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-ditaa hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-ditaa
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ol-gnus hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ol-gnus
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-publish hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-publish
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-plot hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/org-plot
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-ocaml hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-ocaml
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-sed hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-sed
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-perl hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-perl
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-ruby hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-ruby
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-matlab hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-matlab
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-icalendar hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-icalendar
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-lob hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-lob
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-screen hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-screen
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-R hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-R
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ob-sass hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ob-sass
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/ox-beamer hides /gnu/store/3q8qbmwghz89zmcskby71yyhx6w4h6xn-emacs-28.2/share/emacs/28.2/lisp/org/ox-beamer
/gnu/store/3rxpvdkn907pb1ccm2yl3ffyaz02k7d1-emacs-org-9.6.9/share/emacs/site-lisp/org-9.6.9/org-attach hide
This message was truncated. Download the full message here.
E
E
Eric Abrahamsen wrote on 20 Sep 2023 06:02
(name . Bruno Victal)(address . mirai@makinata.eu)(address . 66106@debbugs.gnu.org)
875y455w6o.fsf@ericabrahamsen.net
Bruno Victal <mirai@makinata.eu> writes:

Toggle quote (24 lines)
> 1. Using debbugs (elpa), go to issue #66057.
> 2. Open the 3rd reply. (from Jean Abou Samra)
> 3. In the Article buffer (the buffer with the message) do `S v' to
> start a wide reply.
> 4. Within the message body, do `C-c C-y' to copy the original
> message/yank.
>
> Issue #1: I get a “Jean Abou Samra writes:” line followed by nothing, it
> didn't paste the contents of the message I'm replying to.
>
> 5. Press `Undo'.
>
> Issue #2: Instead of reverting to an empty message body, I get the
> headers of the message I'm replying to in its place.
>
> Notes that might be of interest:
> * I have set `message-generate-hashcash' to `t'.
>
> There's also another issue I've encountered when I reattempted to reply
> but using `S V' (wide reply with yank): The message doesn't seem to be
> properly quoted. I only see a single level of '>' whereas I'd expect to
> see part of the body with '>>' corresponding to the quoted parts of the
> original message that started the discussion.

I don't see exactly what you're seeing -- I tried this out and always
got the message headers (no message body) with one level of quoting.
Hitting undo just removed the level of quoting. But the basic problem is there.

It looks like the issue is in `gnus-summary-reply'. The function that
prepares the original copy of the article for yanking is
`gnus-copy-article-buffer', which is called once per article being
replied to (note that "S V" is only wide; "S v" is very wide).

Starting at line 1105 in `gnus-summary-reply', we go to the buffer
containing the article text to yank, and run:

(save-restriction
(message-narrow-to-head)
(when very-wide
(erase-buffer)
(insert headers))
(goto-char (point-max)))

Perhaps the intention was that the narrowing would affect the behavior
of `erase-buffer', so that in effect this is supposed to replace
whatever headers were there with the contents of the "headers" variable.
But of course `erase-buffer' doesn't respect buffer narrowing, so
everything (including the actual text you wanted to reply to) gets
deleted. If I replace (erase-buffer) with (delete-region (point-min)
(point-max)), it appears to work correctly.

Did `erase-buffer' used to respect narrowing, when this code was written
20 years ago? Anyway, the more I look at it, the more I think that's
what's supposed to be happening here.

Eric
E
E
Eric Abrahamsen wrote on 24 Sep 2023 00:40
(name . Bruno Victal)(address . mirai@makinata.eu)(address . 66106-done@debbugs.gnu.org)
87msxcldic.fsf@ericabrahamsen.net
Eric Abrahamsen <eric@ericabrahamsen.net> writes:

Toggle quote (57 lines)
> Bruno Victal <mirai@makinata.eu> writes:
>
>> 1. Using debbugs (elpa), go to issue #66057.
>> 2. Open the 3rd reply. (from Jean Abou Samra)
>> 3. In the Article buffer (the buffer with the message) do `S v' to
>> start a wide reply.
>> 4. Within the message body, do `C-c C-y' to copy the original
>> message/yank.
>>
>> Issue #1: I get a “Jean Abou Samra writes:” line followed by nothing, it
>> didn't paste the contents of the message I'm replying to.
>>
>> 5. Press `Undo'.
>>
>> Issue #2: Instead of reverting to an empty message body, I get the
>> headers of the message I'm replying to in its place.
>>
>> Notes that might be of interest:
>> * I have set `message-generate-hashcash' to `t'.
>>
>> There's also another issue I've encountered when I reattempted to reply
>> but using `S V' (wide reply with yank): The message doesn't seem to be
>> properly quoted. I only see a single level of '>' whereas I'd expect to
>> see part of the body with '>>' corresponding to the quoted parts of the
>> original message that started the discussion.
>
> I don't see exactly what you're seeing -- I tried this out and always
> got the message headers (no message body) with one level of quoting.
> Hitting undo just removed the level of quoting. But the basic problem is there.
>
> It looks like the issue is in `gnus-summary-reply'. The function that
> prepares the original copy of the article for yanking is
> `gnus-copy-article-buffer', which is called once per article being
> replied to (note that "S V" is only wide; "S v" is very wide).
>
> Starting at line 1105 in `gnus-summary-reply', we go to the buffer
> containing the article text to yank, and run:
>
> (save-restriction
> (message-narrow-to-head)
> (when very-wide
> (erase-buffer)
> (insert headers))
> (goto-char (point-max)))
>
> Perhaps the intention was that the narrowing would affect the behavior
> of `erase-buffer', so that in effect this is supposed to replace
> whatever headers were there with the contents of the "headers" variable.
> But of course `erase-buffer' doesn't respect buffer narrowing, so
> everything (including the actual text you wanted to reply to) gets
> deleted. If I replace (erase-buffer) with (delete-region (point-min)
> (point-max)), it appears to work correctly.
>
> Did `erase-buffer' used to respect narrowing, when this code was written
> 20 years ago? Anyway, the more I look at it, the more I think that's
> what's supposed to be happening here.

I've experimented with this a bit more, and am pushing the attached
patch. I believe it fixes this problem, but please re-open the bug if
you're still seeing undesirable behavior.

Thanks for the report,
Eric
From 450ca9951a87a055eb00bd161a372cc1de02736f Mon Sep 17 00:00:00 2001
From: Eric Abrahamsen <eric@ericabrahamsen.net>
Date: Sat, 23 Sep 2023 15:33:53 -0700
Subject: [PATCH] Use delete-region in Gnus message yanking

See Bug#66106

* lisp/gnus/gnus-msg.el (gnus-summary-reply): Not erase-buffer. The
intention was to narrow the buffer to the headers, and then delete
just those headers. But erase-buffer doesn't respect narrowing, so
use (delete-region (point-min) (point-max)) instead.
---
lisp/gnus/gnus-msg.el | 12 ++++++------
1 file changed, 6 insertions(+), 6 deletions(-)

Toggle diff (25 lines)
diff --git a/lisp/gnus/gnus-msg.el b/lisp/gnus/gnus-msg.el
index 0439bf0d59b..b065ae34851 100644
--- a/lisp/gnus/gnus-msg.el
+++ b/lisp/gnus/gnus-msg.el
@@ -1104,12 +1104,12 @@ gnus-summary-reply
(setq headers (concat headers (buffer-string)))))))
(set-buffer (gnus-copy-article-buffer))
(gnus-msg-treat-broken-reply-to gnus-msg-force-broken-reply-to)
- (save-restriction
- (message-narrow-to-head)
- (when very-wide
- (erase-buffer)
- (insert headers))
- (goto-char (point-max)))
+ (when very-wide
+ (save-restriction
+ (message-narrow-to-head)
+ (delete-region (point-min) (point-max))
+ (insert headers)
+ (goto-char (point-max))))
(mml-quote-region (point) (point-max))
(message-reply nil wide)
(when yank
--
2.42.0
Closed
?