Received: (at 31035) by debbugs.gnu.org; 3 Apr 2018 00:41:20 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 02 20:41:20 2018 Received: from localhost ([127.0.0.1]:35630 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1f3A0l-0005oY-Ms for submit <at> debbugs.gnu.org; Mon, 02 Apr 2018 20:41:19 -0400 Received: from pmta31.teksavvy.com ([76.10.157.38]:2737) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1f3A0j-0005oL-OM for 31035 <at> debbugs.gnu.org; Mon, 02 Apr 2018 20:41:18 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2HmBwA/zcJa/06mSC1dGgEBAQEBAgEBA?= =?us-ascii?q?QEIAQEBAYMTL4FQgz2EaZBhgXQTfJRNC4UEAoQzITcVAQIBAQEBAQECA2gohSY?= =?us-ascii?q?BBAF5BQsLDScSFBhfhGoIsAEaAogmgiWHYYIThBCFO4UIApc6CI9ehgEihGSHJ?= =?us-ascii?q?ohXgSUyI4FSMxoIMDqCRJBoI48DAQE?= X-IPAS-Result: =?us-ascii?q?A2HmBwA/zcJa/06mSC1dGgEBAQEBAgEBAQEIAQEBAYMTL4F?= =?us-ascii?q?Qgz2EaZBhgXQTfJRNC4UEAoQzITcVAQIBAQEBAQECA2gohSYBBAF5BQsLDScSF?= =?us-ascii?q?BhfhGoIsAEaAogmgiWHYYIThBCFO4UIApc6CI9ehgEihGSHJohXgSUyI4FSMxo?= =?us-ascii?q?IMDqCRJBoI48DAQE?= X-IronPort-AV: E=Sophos;i="5.48,398,1517893200"; d="scan'208";a="25817752" Received: from unknown (HELO fmsmemgm.homelinux.net) ([45.72.166.78]) by smtp.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Apr 2018 20:41:12 -0400 Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id C5713AE27B; Mon, 2 Apr 2018 20:41:11 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: 31035 <at> debbugs.gnu.org Subject: Re: bug#31035: 27.0.50; (apply ...) doesn't work with undo-in-region Message-ID: <jwvo9j1dsxq.fsf-monnier+emacsbugs@HIDDEN> References: <jwva7ul6u6j.fsf@HIDDEN> Date: Mon, 02 Apr 2018 20:41:11 -0400 In-Reply-To: <jwva7ul6u6j.fsf@HIDDEN> (Stefan Monnier's message of "Mon, 02 Apr 2018 19:54:28 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 0.3 (/) X-Debbugs-Envelope-To: 31035 Cc: Alan Mackenzie <acm@HIDDEN>, Johan =?windows-1252?Q?Bockg=E5rd?= <bojohan@HIDDEN> X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: 0.3 (/) > The main problem being that undo-in-region (as well as > erc-update-undo-list, incidentally) needs not just to know which part of > the buffer is modified and with which DELTA, but it also needs to be > able to create a new entry to apply the same change at another > buffer position. I think the easiest solution for that is to somehow pass BEG to the function so that the function can be made "position independent". The easiest way to do that without changing the format is to probably move point to BEG before calling the function (and to document the fact that the function should not bake-in the values of BEG and END but should instead assume that point is the beginning of the area that should be modified). Stefan
bug-gnu-emacs@HIDDEN
:bug#31035
; Package emacs
.
Full text available.Received: (at submit) by debbugs.gnu.org; 2 Apr 2018 23:54:46 +0000 From debbugs-submit-bounces <at> debbugs.gnu.org Mon Apr 02 19:54:46 2018 Received: from localhost ([127.0.0.1]:35605 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>) id 1f39Hh-0002lO-S1 for submit <at> debbugs.gnu.org; Mon, 02 Apr 2018 19:54:46 -0400 Received: from eggs.gnu.org ([208.118.235.92]:42386) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <monnier@HIDDEN>) id 1f39He-0002l9-U4 for submit <at> debbugs.gnu.org; Mon, 02 Apr 2018 19:54:44 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <monnier@HIDDEN>) id 1f39HY-0000ue-Cw for submit <at> debbugs.gnu.org; Mon, 02 Apr 2018 19:54:37 -0400 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 autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:58936) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from <monnier@HIDDEN>) id 1f39HY-0000ua-8l for submit <at> debbugs.gnu.org; Mon, 02 Apr 2018 19:54:36 -0400 Received: from eggs.gnu.org ([2001:4830:134:3::10]:33352) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from <monnier@HIDDEN>) id 1f39HW-00025M-NQ for bug-gnu-emacs@HIDDEN; Mon, 02 Apr 2018 19:54:36 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from <monnier@HIDDEN>) id 1f39HT-0000sF-Hn for bug-gnu-emacs@HIDDEN; Mon, 02 Apr 2018 19:54:34 -0400 Received: from pmta11.teksavvy.com ([76.10.157.34]:24649) by eggs.gnu.org with esmtps (TLS1.0:RSA_ARCFOUR_SHA1:16) (Exim 4.71) (envelope-from <monnier@HIDDEN>) id 1f39HT-0000qk-AH for bug-gnu-emacs@HIDDEN; Mon, 02 Apr 2018 19:54:31 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2H8EwC2wcJa/06mSC1dHgEGDIMTLyQ9S?= =?us-ascii?q?yQogxWVSoIHfIFlkG4UgWYLEwgQiQ4hNhYBAgEBAQEBAQIDaBwMQhABghd6AQE?= =?us-ascii?q?BAQEBAQEBTAINgU0BNxQPBCEBHGKEb7AAGgKEOYNtgiWHYYITiD4GGwEBAgZkh?= =?us-ascii?q?QYChwoKhF2LCEEIjBmDRYYBIoRkhyaIV4ElIwoogVIzGggwOoJDCYIUAwEWiFi?= =?us-ascii?q?FWiMwhFWHRxaCIQEB?= X-IPAS-Result: =?us-ascii?q?A2H8EwC2wcJa/06mSC1dHgEGDIMTLyQ9SyQogxWVSoIHfIF?= =?us-ascii?q?lkG4UgWYLEwgQiQ4hNhYBAgEBAQEBAQIDaBwMQhABghd6AQEBAQEBAQEBTAINg?= =?us-ascii?q?U0BNxQPBCEBHGKEb7AAGgKEOYNtgiWHYYITiD4GGwEBAgZkhQYChwoKhF2LCEE?= =?us-ascii?q?IjBmDRYYBIoRkhyaIV4ElIwoogVIzGggwOoJDCYIUAwEWiFiFWiMwhFWHRxaCI?= =?us-ascii?q?QEB?= X-IronPort-AV: E=Sophos;i="5.48,398,1517893200"; d="scan'208";a="26577285" Received: from unknown (HELO fmsmemgm.homelinux.net) ([45.72.166.78]) by smtp.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 02 Apr 2018 19:54:28 -0400 Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 51501AE27B; Mon, 2 Apr 2018 19:54:28 -0400 (EDT) From: Stefan Monnier <monnier@HIDDEN> To: bug-gnu-emacs@HIDDEN Subject: 27.0.50; (apply ...) doesn't work with undo-in-region X-Debbugs-Cc: Johan =?iso-8859-1?Q?Bockg=E5rd?= <bojohan@HIDDEN>, Alan Mackenzie <acm@HIDDEN> Date: Mon, 02 Apr 2018 19:54:28 -0400 Message-ID: <jwva7ul6u6j.fsf@HIDDEN> MIME-Version: 1.0 Content-Type: text/plain X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -4.0 (----) X-Debbugs-Envelope-To: submit X-BeenThere: debbugs-submit <at> debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list List-Id: <debbugs-submit.debbugs.gnu.org> List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe> List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/> List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org> List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help> List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe> Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org> X-Spam-Score: -4.0 (----) Package: Emacs Version: 27.0.50 As brought up by Johan, the (apply ...) elements in buffer-undo-list are "too powerful". Even though BEG/END/DELTA are provided, with the intention to make it possible for undo-in-region to handle those entries, undo-in-region does not handle those entries. The main problem being that undo-in-region (as well as erc-update-undo-list, incidentally) needs not just to know which part of the buffer is modified and with which DELTA, but it also needs to be able to create a new entry to apply the same change at another buffer position. Stefan In GNU Emacs 27.0.50 (build 1, x86_64-unknown-linux-gnu, GTK+ Version 3.22.26) of 2018-03-01 built on alfajor Repository revision: 2d65141a5654c475746bd78d998877901a0ff065 Windowing system distributor 'The X.Org Foundation', version 11.0.11906000 System Description: Debian GNU/Linux buster/sid Recent messages: Saving file /home/monnier/src/emacs/elpa/packages/auctex/bib-cite.el... Wrote /home/monnier/src/emacs/elpa/packages/auctex/bib-cite.el Mark set [4 times] Saving file /home/monnier/src/emacs/elpa/packages/auctex/bib-cite.el... Wrote /home/monnier/src/emacs/elpa/packages/auctex/bib-cite.el Finding changes in /home/monnier/src/emacs/elpa/packages/auctex/bib-cite.el...done Power AC, battery Charging (63.5% load, remaining time 0:53) 2.6 2.4 Configured using: 'configure -C --enable-checking --with-modules --enable-check-lisp-object-type 'CFLAGS=-Wall -g3 -Og -Wno-pointer-sign' PKG_CONFIG_PATH=/home/monnier/lib/pkgconfig' Configured features: XPM JPEG TIFF GIF PNG RSVG IMAGEMAGICK SOUND GPM DBUS GSETTINGS NOTIFY GNUTLS LIBXML2 FREETYPE M17N_FLT LIBOTF XFT ZLIB TOOLKIT_SCROLL_BARS GTK3 X11 MODULES THREADS LCMS2 Important settings: value of $LANG: fr_CH.UTF-8 locale-coding-system: utf-8-unix Major mode: InactiveMinibuffer Minor modes in effect: shell-dirtrack-mode: t diff-auto-refine-mode: t electric-pair-mode: t global-reveal-mode: t reveal-mode: t auto-insert-mode: t savehist-mode: t minibuffer-electric-default-mode: t global-compact-docstrings-mode: t url-handler-mode: t global-eldoc-mode: t electric-indent-mode: t mouse-wheel-mode: t global-prettify-symbols-mode: t menu-bar-mode: t file-name-shadow-mode: t global-font-lock-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: /home/monnier/src/emacs/elpa/packages/svg/svg hides /home/monnier/src/emacs/work/lisp/svg /home/monnier/src/emacs/elpa/packages/ada-mode/ada-mode hides /home/monnier/src/emacs/work/lisp/progmodes/ada-mode /home/monnier/src/emacs/elpa/packages/ada-mode/ada-stmt hides /home/monnier/src/emacs/work/lisp/progmodes/ada-stmt /home/monnier/src/emacs/elpa/packages/ada-mode/ada-prj hides /home/monnier/src/emacs/work/lisp/progmodes/ada-prj /home/monnier/src/emacs/elpa/packages/ada-mode/ada-xref hides /home/monnier/src/emacs/work/lisp/progmodes/ada-xref /home/monnier/src/emacs/elpa/packages/hyperbole/set hides /home/monnier/src/emacs/work/lisp/emacs-lisp/set /home/monnier/src/emacs/elpa/packages/landmark/landmark hides /home/monnier/src/emacs/work/lisp/obsolete/landmark /home/monnier/src/emacs/elpa/packages/crisp/crisp hides /home/monnier/src/emacs/work/lisp/obsolete/crisp Features: (sort mail-extr emacsbug message rmc puny format-spec rfc822 mml mml-sec epa epg gnus-util rmail rmail-loaddefs mm-decode mm-bodies mm-encode mail-parse rfc2231 mailabbrev mailheader sendmail rfc2047 rfc2045 ietf-drums mm-util mail-prsvr mail-utils smerge-mode whitespace shell pcomplete autoload cl-print executable copyright skeleton add-log log-view pcvs-util vc dired desktop frameset edmacro kmacro dired-loaddefs subr-x vc-dispatcher sm-c-mode smie gud derived pcase lisp-mnt eieio-opt speedbar sb-image ezimage dframe cl-extra help-fns radix-tree battery misearch multi-isearch xscheme unsafep trace testcover shadow scheme re-builder profiler inf-lisp ielm gmm-utils ert pp find-func ewoc debug elp edebug cl-indent cus-edit cus-start cus-load wid-edit vc-git diff-mode filecache server time-date flymake-proc flymake compile comint ansi-color ring warnings noutline outline easy-mmode flyspell ispell checkdoc thingatpt help-mode load-dir elec-pair reveal autoinsert proof-site proof-autoloads cl pg-vars savehist minibuf-eldef disp-table compact-docstrings cl-seq inline kotl-autoloads advice info realgud-recursive-autoloads finder-inf url-auth package easymenu epg-config url-handlers url-parse auth-source eieio eieio-core cl-macs eieio-loaddefs password-cache json map url-vars seq byte-opt gv bytecomp byte-compile cconv cl-loaddefs cl-lib 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 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 move-toolbar gtk x-toolkit x multi-tty make-network-process emacs) Memory information: ((conses 8 401805 39008) (symbols 24 33047 0) (miscs 20 6526 1667) (strings 16 75688 9803) (string-bytes 1 2364495) (vectors 12 41583) (vector-slots 4 1755478 87288) (floats 8 173 323) (intervals 28 18663 873) (buffers 536 52))
Stefan Monnier <monnier@HIDDEN>
:bojohan@HIDDEN, acm@HIDDEN, bug-gnu-emacs@HIDDEN
.
Full text available.bojohan@HIDDEN, acm@HIDDEN, bug-gnu-emacs@HIDDEN
:bug#31035
; Package emacs
.
Full text available.
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997 nCipher Corporation Ltd,
1994-97 Ian Jackson.