From debbugs-submit-bounces@debbugs.gnu.org Sat Jan 02 23:02:13 2016 Received: (at submit) by debbugs.gnu.org; 3 Jan 2016 04:02:13 +0000 Received: from localhost ([127.0.0.1]:35752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aFZrx-0004sP-8v for submit@debbugs.gnu.org; Sat, 02 Jan 2016 23:02:13 -0500 Received: from eggs.gnu.org ([208.118.235.92]:54484) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aFZrv-0004sC-67 for submit@debbugs.gnu.org; Sat, 02 Jan 2016 23:02:11 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aFZrp-0005W2-64 for submit@debbugs.gnu.org; Sat, 02 Jan 2016 23:02:05 -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, T_DKIM_INVALID autolearn=disabled version=3.3.2 Received: from lists.gnu.org ([2001:4830:134:3::11]:33011) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aFZrp-0005Vn-30 for submit@debbugs.gnu.org; Sat, 02 Jan 2016 23:02:05 -0500 Received: from eggs.gnu.org ([2001:4830:134:3::10]:45328) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aFZrk-0005bp-Lv for bug-gnu-emacs@gnu.org; Sat, 02 Jan 2016 23:02:04 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aFZrh-0005Rg-0V for bug-gnu-emacs@gnu.org; Sat, 02 Jan 2016 23:02:00 -0500 Received: from mail-io0-x234.google.com ([2607:f8b0:4001:c06::234]:35218) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aFZrg-0005RU-Sw for bug-gnu-emacs@gnu.org; Sat, 02 Jan 2016 23:01:56 -0500 Received: by mail-io0-x234.google.com with SMTP id 77so100640230ioc.2 for ; Sat, 02 Jan 2016 20:01:56 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:from:date:message-id:subject:to:content-type; bh=rhJ7gFFXEI94GdYT5E+6c47hYyY+1+DpdhzCkBJ9cfE=; b=KpKn49cV+MV0Euf3zxj0l7aWEjoYL/ZSd2r5Q0CRF1sGl4GSLKHGUutNjmav8y1f8j i0kkJxtAy9Gb0TjJfLNRfytG+Zj2QnDyckLhIfEaJh7PhTvewF+ZG82G1h0HT26cSn3Z nZzm9nLW2gLL09Lh1E7OGzs6lMhQxSutHGBmRn5NbA8g63WZJKuBIo9DZSGPNNeFlW2R WxYM/nc0bs8HB10rHbkTPlxI5ombVPXCSmGUqDasPMzX4Mn5ETY+nFOubcZZwLiJOzhg 5lLYGKyB4KufIOry6UyDq6XUGIKZwKjk0oT5C0SrZmttgRDNoThjPE1GzvlQEVTiWYoe bpEw== X-Received: by 10.107.138.15 with SMTP id m15mr76799961iod.40.1451793716170; Sat, 02 Jan 2016 20:01:56 -0800 (PST) MIME-Version: 1.0 Received: by 10.36.10.18 with HTTP; Sat, 2 Jan 2016 20:01:36 -0800 (PST) From: Jim Meyering Date: Sat, 2 Jan 2016 20:01:36 -0800 X-Google-Sender-Auth: PvtBwUDKMYVP5qLNRJM-BlIKsUM Message-ID: Subject: viper-mode undo bug introduced between Nov 10 and Nov 14 To: bug-gnu-emacs@gnu.org Content-Type: text/plain; charset=UTF-8 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6.x X-Received-From: 2001:4830:134:3::11 X-Spam-Score: -3.8 (---) X-Debbugs-Envelope-To: submit 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: -3.8 (---) Hello, I noticed that viper-mode's "undo" ('u') command began to undo too much and was able quickly to determine that it worked fine with my snapshot built from git master some time on Nov 10, yet that it began to undo too much four days later. To demonstrate the problem (without risking changing anything in your home directory), run this: mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw ~/previously-nonexistent-file then respond "y", "y", "5" to get past the "viperize" setup questions. To reproduce the error, insert two lines, terminating each "insertion" with ESC, so that each is recorded as a separate undo'able operation. I.e., type this a 1 ESC to create the first line, then o 2 ESC to create the second. Finally, hit "u" to undo creation of the second and you'll see that it undoes both operations, erasing both lines. This is rather disruptive when that first bit of text was a long paragraph or two -- the novice may think that it's lost, because redo does not restore it -- however, it is available in emacs's yank buffer. Thanks for tending emacs, Jim From debbugs-submit-bounces@debbugs.gnu.org Tue Jan 05 13:35:11 2016 Received: (at control) by debbugs.gnu.org; 5 Jan 2016 18:35:11 +0000 Received: from localhost ([127.0.0.1]:39094 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aGWRr-0005Q1-HK for submit@debbugs.gnu.org; Tue, 05 Jan 2016 13:35:11 -0500 Received: from eggs.gnu.org ([208.118.235.92]:47446) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aGWRq-0005Pm-DU for control@debbugs.gnu.org; Tue, 05 Jan 2016 13:35:10 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aGWRk-00039O-Q8 for control@debbugs.gnu.org; Tue, 05 Jan 2016 13:35:05 -0500 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:57645) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aGWRk-00039K-NE for control@debbugs.gnu.org; Tue, 05 Jan 2016 13:35:04 -0500 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1aGWRk-0000r9-Eh for control@debbugs.gnu.org; Tue, 05 Jan 2016 13:35:04 -0500 Subject: control message for bug 19759 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Tue, 05 Jan 2016 13:35:04 -0500 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -5.0 (-----) X-Debbugs-Envelope-To: control 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: -5.0 (-----) block 19759 by 22295 From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 05:25:18 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 09:25:18 +0000 Received: from localhost ([127.0.0.1]:50442 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Vp0-00054j-Jc for submit@debbugs.gnu.org; Sat, 14 May 2016 05:25:18 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59187) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1Voz-00054U-Cg for 22295@debbugs.gnu.org; Sat, 14 May 2016 05:25:17 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b1Vot-00032w-H2 for 22295@debbugs.gnu.org; Sat, 14 May 2016 05:25:12 -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.6 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:53441) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b1Vol-0002xx-U3; Sat, 14 May 2016 05:25:03 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1564 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b1Voi-0001Df-Ob; Sat, 14 May 2016 05:25:01 -0400 Date: Sat, 14 May 2016 12:25:13 +0300 Message-Id: <83vb2h6lfq.fsf@gnu.org> From: Eli Zaretskii To: Phillip Lord In-reply-to: (message from Jim Meyering on Sat, 2 Jan 2016 20:01:36 -0800) Subject: Re: viper-mode undo bug introduced between Nov 10 and Nov 14 References: X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, Jim Meyering 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: Jim Meyering > Date: Sat, 2 Jan 2016 20:01:36 -0800 > > Hello, > I noticed that viper-mode's "undo" ('u') command began to undo too much > and was able quickly to determine that it worked fine with my snapshot > built from git master some time on Nov 10, yet that it began to undo > too much four days later. > > To demonstrate the problem (without risking changing anything in your > home directory), run this: > > mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw > ~/previously-nonexistent-file > > then respond "y", "y", "5" to get past the "viperize" setup questions. > To reproduce the error, insert two lines, terminating each "insertion" with ESC, > so that each is recorded as a separate undo'able operation. I.e., type this > > a 1 ESC > > to create the first line, then > > o 2 ESC > > to create the second. > Finally, hit "u" to undo creation of the second and you'll see that it undoes > both operations, erasing both lines. This is rather disruptive when that first > bit of text was a long paragraph or two -- the novice may think that it's lost, > because redo does not restore it -- however, it is available in emacs's > yank buffer. Phillip, could you please look into this? This sounds like a annoying problem for users of viper-mode, and AFAIU it happens on the release branch as well. TIA From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 06:01:35 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 10:01:35 +0000 Received: from localhost ([127.0.0.1]:50460 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1WO7-0005zE-9l for submit@debbugs.gnu.org; Sat, 14 May 2016 06:01:35 -0400 Received: from eggs.gnu.org ([208.118.235.92]:35319) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1WO4-0005yz-4k for 22295@debbugs.gnu.org; Sat, 14 May 2016 06:01:34 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b1WNy-0001MO-4H for 22295@debbugs.gnu.org; Sat, 14 May 2016 06:01:27 -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.6 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:53766) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b1WNq-0001Lh-HW; Sat, 14 May 2016 06:01:18 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1597 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b1WNi-0000hY-4y; Sat, 14 May 2016 06:01:16 -0400 Date: Sat, 14 May 2016 13:01:23 +0300 Message-Id: <83r3d56jrg.fsf@gnu.org> From: Eli Zaretskii To: Michael Kifer In-reply-to: <83vb2h6lfq.fsf@gnu.org> (message from Eli Zaretskii on Sat, 14 May 2016 12:25:13 +0300) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, jim@meyering.net, phillip.lord@russet.org.uk 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > Date: Sat, 14 May 2016 12:25:13 +0300 > From: Eli Zaretskii > Cc: 22295@debbugs.gnu.org, Jim Meyering > > > From: Jim Meyering > > Date: Sat, 2 Jan 2016 20:01:36 -0800 > > > > Hello, > > I noticed that viper-mode's "undo" ('u') command began to undo too much > > and was able quickly to determine that it worked fine with my snapshot > > built from git master some time on Nov 10, yet that it began to undo > > too much four days later. > > > > To demonstrate the problem (without risking changing anything in your > > home directory), run this: > > > > mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw > > ~/previously-nonexistent-file > > > > then respond "y", "y", "5" to get past the "viperize" setup questions. > > To reproduce the error, insert two lines, terminating each "insertion" with ESC, > > so that each is recorded as a separate undo'able operation. I.e., type this > > > > a 1 ESC > > > > to create the first line, then > > > > o 2 ESC > > > > to create the second. > > Finally, hit "u" to undo creation of the second and you'll see that it undoes > > both operations, erasing both lines. This is rather disruptive when that first > > bit of text was a long paragraph or two -- the novice may think that it's lost, > > because redo does not restore it -- however, it is available in emacs's > > yank buffer. > > Phillip, could you please look into this? This sounds like a annoying > problem for users of viper-mode, and AFAIU it happens on the release > branch as well. (Adding Michael to the addressees.) I took a short look, and it sounds like we need more experts here. Undo in viper has its own implementation, which tries to do something that is not immediately clear to me, and is not really documented anywhere. I guess vi users will know that, but I'm not one of them. The viper-undo command and related functions manipulate the Emacs undo data structures directly, see viper-adjust-undo. I guess the recent changes in low-level undo implementation run afoul of what viper-mode tries to do. I hope the above provides enough hints to find the reason for this problem and solve it. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 09:57:13 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 13:57:13 +0000 Received: from localhost ([127.0.0.1]:51553 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1a49-0005Rq-21 for submit@debbugs.gnu.org; Sat, 14 May 2016 09:57:13 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:36897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1a46-0005Rb-Bw for 22295@debbugs.gnu.org; Sat, 14 May 2016 09:57:11 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=SA1JK6v29DxGqCpn8MHN43XuuPD6zM0Quhpt4dna69k=; b=Zkd2FzRZVGsbqrpw/atH9mc2E0 esDdBbNA1QiZC1RVvpPJ7nHh6imf585ZYvlzk5yEQTQwVdZZSTXOg862lU3P0VwNR9vFn4ArqjUeI /VroSCpCEpf4tY/jI7nN+iMQUNtzwfX3SeVQxTYI2Qs/XXaCScen0PzSt+T7MM8mc1htnW9eMmKZE 7aOsebJkdUQdHdFXojHdnZv5tY6a+utpdUjvWVGeGWHC4W83GFRvXB72mI0o892+XnSGAckqgpSo+ W3PfyY0dfiZQxLjQ3I5BqbVGAQ8gV6eEoJYO75G5AUcyfHirAsSfAdc22sCk6x39J4sIEzqd9ZFQL ZAK2D3dQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:56301 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b1a3z-003R2c-92; Sat, 14 May 2016 14:57:03 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> Date: Sat, 14 May 2016 14:57:02 +0100 In-Reply-To: <83r3d56jrg.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 14 May 2016 13:01:23 +0300") Message-ID: <87poso7nf5.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Michael Kifer , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Eli Zaretskii writes: >> Date: Sat, 14 May 2016 12:25:13 +0300 >> From: Eli Zaretskii >> Cc: 22295@debbugs.gnu.org, Jim Meyering >> >> > From: Jim Meyering >> > Date: Sat, 2 Jan 2016 20:01:36 -0800 >> > >> > Hello, >> > I noticed that viper-mode's "undo" ('u') command began to undo too much >> > and was able quickly to determine that it worked fine with my snapshot >> > built from git master some time on Nov 10, yet that it began to undo >> > too much four days later. >> > >> > To demonstrate the problem (without risking changing anything in your >> > home directory), run this: >> > >> > mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw >> > ~/previously-nonexistent-file >> > >> > then respond "y", "y", "5" to get past the "viperize" setup questions. >> > To reproduce the error, insert two lines, terminating each "insertion" with ESC, >> > so that each is recorded as a separate undo'able operation. I.e., type this >> > >> > a 1 ESC >> > >> > to create the first line, then >> > >> > o 2 ESC >> > >> > to create the second. >> > Finally, hit "u" to undo creation of the second and you'll see that it undoes >> > both operations, erasing both lines. This is rather disruptive when that first >> > bit of text was a long paragraph or two -- the novice may think that it's lost, >> > because redo does not restore it -- however, it is available in emacs's >> > yank buffer. >> >> Phillip, could you please look into this? This sounds like a annoying >> problem for users of viper-mode, and AFAIU it happens on the release >> branch as well. > > (Adding Michael to the addressees.) > > I took a short look, and it sounds like we need more experts here. > Undo in viper has its own implementation, which tries to do something > that is not immediately clear to me, and is not really documented > anywhere. I guess vi users will know that, but I'm not one of them. > > The viper-undo command and related functions manipulate the Emacs undo > data structures directly, see viper-adjust-undo. I guess the recent > changes in low-level undo implementation run afoul of what viper-mode > tries to do. > > I hope the above provides enough hints to find the reason for this > problem and solve it. > Sorry for slow response -- was travelling. Yep, viper is doing strange things to undo -- it adds a symbol ('viper) to the undo list, then removes it later, amalgamating everything upto 'viper. I've got a complete test case (below in case anyone is interested -- I'll make a proper unit test of it on master eventually). On e0f64e7b4f9c3bbc12c4909ca8c8aa751f1fca4a (a random commit around the time of the error). This produced a undo list like so: (nil (2 . 4) nil (2 . 3) (1 . 2) (t . -1)) While on emacs-25 it gives (my comments): ((3 . 4) ;; insertion from 3 to 4 (2 . 3) ;; insertion from 2 to 3 nil ;; boundary (2 . 3) ;; insertion from 2 to 3 (1 . 2) ;; insertion from 1 to 2 (t . -1) ;; buffer created with file that does not exist ) So it looks like the amalgamation that Emacs is supposed to be doing is failing. No idea at all where the head "nil" has gone. Will work on this more. (setq viper-inhibit-startup-message 't) (setq viper-expert-level '5) (find-file "/tmp/file.txt") (setq viper-mode t) (require 'viper) ;; leave emacs lisp in Emacs mode or edebug becomes impossible (setq viper-vi-state-mode-list (delq 'emacs-lisp-mode viper-vi-state-mode-list)) (setq viper-emacs-state-mode-list (cons 'emacs-lisp-mode viper-vi-state-mode-list)) ;; alas edebug "print last eval" is still broken (require 'edebug) (edebug-instrument-function 'viper-adjust-undo) ;; a 1 (execute-kbd-macro [?a ?1 escape ?o ?2 escape]) From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 16:10:23 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 20:10:23 +0000 Received: from localhost ([127.0.0.1]:51736 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1ftH-0006Zx-Dc for submit@debbugs.gnu.org; Sat, 14 May 2016 16:10:23 -0400 Received: from mail-qg0-f53.google.com ([209.85.192.53]:35918) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1ftE-0006Zk-TW for 22295@debbugs.gnu.org; Sat, 14 May 2016 16:10:21 -0400 Received: by mail-qg0-f53.google.com with SMTP id w36so73534074qge.3 for <22295@debbugs.gnu.org>; Sat, 14 May 2016 13:10:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=hR9R0iglkC3wjq+LAb9MDz8bog+ZeY9nQTsrjLACA+g=; b=SL10cWWgjnb1evRKOELYaM9UfpxaZCJ/0K0YTUXAOVAiewq/shD2IvYoSWYHBcTIWG gQDYdvzSwwG9s8Gfb9mIahwygPz9ZRjj/Fy4gOL+aCH2HxZCFfOLyCB8JzZTKEDBY4UL piQ8pSJwmnzecNbRdbeJMX/3PPMTfmW6WE1E0l2EwoRoGHFhIEK+m4JCVkYnP9hqz8zr I4cntHiEDaMWRgy6vgowQPOo8OzF+MaOoeXfnSAjCpuA88xNvxVmeAWwV8M+9gOfXr5t WWKFjZy5ZRziM3BA1oTdq1XAp35k5oB8touX1A4MK7j1950c82oNgVAFMGvZKf0VawIf Q+hQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=hR9R0iglkC3wjq+LAb9MDz8bog+ZeY9nQTsrjLACA+g=; b=l5RgRqB0Z25R1RIX8EgmknMaolp6TS1lKFB71o4Gan2BFn6beovXpM8+Jj+SBdaaUk 7jFTlS/eO/grcWL3dYe6d1KfY+csPRQa8XH1RIEbf550I0zguun2YXS+gF84F3DktEJ5 lzhWAqsY3P3LOnR5lZ5ojzsvOKCuH2bB0GYl2o1IlWFu4qzo9WSUYlC8tU0xZQFpbAuC 7pwLwhta3ogjutW3+0AY/LN/XL1pfHZQz2Ce0Rphc2Hw3z0Ait4eeU5RI0QUzPkSuKhr Y5v6uUcmUO9Em0BwqI/D4UPrm4jX3pdJXuTuLNRzMd1t6GL2rzHZybyqWrCv9Sp0mV+z fLYQ== X-Gm-Message-State: AOPr4FWJSDfgELTqrCLMRqGo+6GZ4dswok0kQOc/grV/e2OdxWppMQxCNh0wekfYHpXvmKiv X-Received: by 10.140.97.180 with SMTP id m49mr6104507qge.102.1463256615506; Sat, 14 May 2016 13:10:15 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id x79sm11186655qka.37.2016.05.14.13.10.14 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 14 May 2016 13:10:15 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord , Eli Zaretskii References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> From: Michael Kifer Message-ID: <57378626.8060205@cs.stonybrook.edu> Date: Sat, 14 May 2016 16:10:14 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <87poso7nf5.fsf@russet.org.uk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, jim@meyering.net 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.7 (/) On 05/14/2016 09:57 AM, Phillip Lord wrote: > Eli Zaretskii writes: > >>> Date: Sat, 14 May 2016 12:25:13 +0300 >>> From: Eli Zaretskii >>> Cc: 22295@debbugs.gnu.org, Jim Meyering >>> >>>> From: Jim Meyering >>>> Date: Sat, 2 Jan 2016 20:01:36 -0800 >>>> >>>> Hello, >>>> I noticed that viper-mode's "undo" ('u') command began to undo too much >>>> and was able quickly to determine that it worked fine with my snapshot >>>> built from git master some time on Nov 10, yet that it began to undo >>>> too much four days later. >>>> >>>> To demonstrate the problem (without risking changing anything in your >>>> home directory), run this: >>>> >>>> mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw >>>> ~/previously-nonexistent-file >>>> >>>> then respond "y", "y", "5" to get past the "viperize" setup questions. >>>> To reproduce the error, insert two lines, terminating each "insertion" with ESC, >>>> so that each is recorded as a separate undo'able operation. I.e., type this >>>> >>>> a 1 ESC >>>> >>>> to create the first line, then >>>> >>>> o 2 ESC >>>> >>>> to create the second. >>>> Finally, hit "u" to undo creation of the second and you'll see that it undoes >>>> both operations, erasing both lines. This is rather disruptive when that first >>>> bit of text was a long paragraph or two -- the novice may think that it's lost, >>>> because redo does not restore it -- however, it is available in emacs's >>>> yank buffer. >>> Phillip, could you please look into this? This sounds like a annoying >>> problem for users of viper-mode, and AFAIU it happens on the release >>> branch as well. >> (Adding Michael to the addressees.) >> >> I took a short look, and it sounds like we need more experts here. >> Undo in viper has its own implementation, which tries to do something >> that is not immediately clear to me, and is not really documented >> anywhere. I guess vi users will know that, but I'm not one of them. >> >> The viper-undo command and related functions manipulate the Emacs undo >> data structures directly, see viper-adjust-undo. I guess the recent >> changes in low-level undo implementation run afoul of what viper-mode >> tries to do. >> >> I hope the above provides enough hints to find the reason for this >> problem and solve it. >> > > Sorry for slow response -- was travelling. > > Yep, viper is doing strange things to undo -- it adds a symbol ('viper) > to the undo list, then removes it later, amalgamating everything upto > 'viper. I don't remember much myself, but the issue is this (and it is documented): In VI, the granularity of undoing is much coarser than in Emacs. Several ops that Emacs undoes in multiple steps are supposed to be undone with just one "undo" in VI. Viper simulates this by inserting viper-buffer-undo-list-mark onto buffer-undo-list to mark the point to which the Emacs undo's are to be run in order to accomplish one VI-style undo. In Emacs, as I vaguely remember, this role is played by nil(?), but VI-style undos are coarser than that, so viper requires its own marker on the unfo list. Hope this helps. Sorry that I don't have much time these days to work on viper. :-( -- --- michael > > I've got a complete test case (below in case anyone is interested -- > I'll make a proper unit test of it on master eventually). > > > On e0f64e7b4f9c3bbc12c4909ca8c8aa751f1fca4a (a random commit around > the time of the error). This produced a undo list like so: > > (nil > (2 . 4) > nil > (2 . 3) > (1 . 2) > (t . -1)) > > While on emacs-25 it gives (my comments): > > > ((3 . 4) ;; insertion from 3 to 4 > (2 . 3) ;; insertion from 2 to 3 > nil ;; boundary > (2 . 3) ;; insertion from 2 to 3 > (1 . 2) ;; insertion from 1 to 2 > (t . -1) ;; buffer created with file that does not exist > ) > > > So it looks like the amalgamation that Emacs is supposed to be doing is > failing. No idea at all where the head "nil" has gone. > > Will work on this more. > > > > (setq viper-inhibit-startup-message 't) > (setq viper-expert-level '5) > > (find-file "/tmp/file.txt") > (setq viper-mode t) > (require 'viper) > > ;; leave emacs lisp in Emacs mode or edebug becomes impossible > (setq viper-vi-state-mode-list (delq > 'emacs-lisp-mode > viper-vi-state-mode-list)) > > (setq viper-emacs-state-mode-list (cons > 'emacs-lisp-mode > viper-vi-state-mode-list)) > ;; alas edebug "print last eval" is still broken > > > (require 'edebug) > (edebug-instrument-function 'viper-adjust-undo) > > ;; a 1 > (execute-kbd-macro > [?a ?1 escape ?o ?2 escape]) From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 16:39:46 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 20:39:46 +0000 Received: from localhost ([127.0.0.1]:51741 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gLi-0007G9-0F for submit@debbugs.gnu.org; Sat, 14 May 2016 16:39:46 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:49147) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gLe-0007Fs-M7 for 22295@debbugs.gnu.org; Sat, 14 May 2016 16:39:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=XYEpWjmr/fGm2yzvGMmmI0HE4mYTL1YM8FsopSCU8TU=; b=HF8qT2jZY77/Jhs6ki+KONYVLj Hey4uAK+jwyS03vLna4NNGhFmE3A6P8Qed2zKyHzp3ivsqd46nzaFHmSdqNszQ1AQO+3WEKLn2s4k iKXlIuuyzNf392eV94VUSMiYdoNoUj52vxgvu/Xchjp11lsizj804hjqllMU+38RfxIGjKZE++R0q Ex1toLPJ6mxNPQt5I68YdFnHHH/h2XqF3L8AEefVCeWEs5AjtzN/qG1WJDoQVWgfFBPAsdxcZuEVX G3XL3IU/FJdWqqm+m5FPe4yxmQWyAiK/qc2fbXbNsRe2g22WTa75P5MbTl3qOteopcbVTNhuKnG6N 7tn1YUqQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:56887 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b1gLY-004O2y-6c; Sat, 14 May 2016 21:39:36 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> Date: Sat, 14 May 2016 21:39:34 +0100 In-Reply-To: <57378626.8060205@cs.stonybrook.edu> (Michael Kifer's message of "Sat, 14 May 2016 16:10:14 -0400") Message-ID: <87vb2g9xx5.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Michael Kifer writes: > On 05/14/2016 09:57 AM, Phillip Lord wrote: >> Eli Zaretskii writes: >> >>>> Date: Sat, 14 May 2016 12:25:13 +0300 >>>> From: Eli Zaretskii >>>> Cc: 22295@debbugs.gnu.org, Jim Meyering >> >> Sorry for slow response -- was travelling. >> >> Yep, viper is doing strange things to undo -- it adds a symbol ('viper) >> to the undo list, then removes it later, amalgamating everything upto >> 'viper. > > I don't remember much myself, but the issue is this (and it is documented): It's commented rather documented:-) > > In VI, the granularity of undoing is much coarser than in Emacs. > Several ops that Emacs undoes in multiple steps are supposed to be > undone with just one "undo" in VI. Viper simulates this by inserting > viper-buffer-undo-list-mark onto buffer-undo-list to mark the point to > which the Emacs undo's are to be run in order to accomplish one > VI-style undo. In Emacs, as I vaguely remember, this role is played by > nil(?), but VI-style undos are coarser than that, so viper requires > its own marker on the unfo list. Yes, you are correct -- boundaries are nil. Viper puts it's own mark in, yes, but then deletes it later on and replaces it with nil in this bit of code. (setq tmp2 (cdr tmp)) ; the part after mark ;; cut tail from buffer-undo-list temporarily by direct ;; manipulation with pointers in buffer-undo-list (setcdr tmp nil) (setq buffer-undo-list (delq nil buffer-undo-list)) (setq buffer-undo-list (delq viper-buffer-undo-list-mark buffer-undo-list)) ;; restore tail of buffer-undo-list (setq buffer-undo-list (nconc buffer-undo-list tmp2))) Essentially, it just kills the standard boundary handling and does it's own thing. > Hope this helps. You don't by any chance remember why viper mode appears to turns itself off in noninteractive mode? Turns out to be rather painful for testing. > Sorry that I don't have much time these days to work on viper. :-( Too busy doing all logic and semantics? Phil From debbugs-submit-bounces@debbugs.gnu.org Sat May 14 16:50:16 2016 Received: (at 22295) by debbugs.gnu.org; 14 May 2016 20:50:16 +0000 Received: from localhost ([127.0.0.1]:51745 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gVs-0007Vj-1w for submit@debbugs.gnu.org; Sat, 14 May 2016 16:50:16 -0400 Received: from mail-qg0-f46.google.com ([209.85.192.46]:36650) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b1gVq-0007VW-Bm for 22295@debbugs.gnu.org; Sat, 14 May 2016 16:50:14 -0400 Received: by mail-qg0-f46.google.com with SMTP id w36so73772727qge.3 for <22295@debbugs.gnu.org>; Sat, 14 May 2016 13:50:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=QyjrEZ90uGdC2AmjAr4KAJGrSBcatvTXeyF4l1YEL/c=; b=Wedy5gKlGgeceAfwt1HV8k9kqiQC/9NQkBHj9HlU+/Rmsk2+gfTHSE92iuemappaqj MeXSWUywy6WNzJIZJ7dvj8UGnDgAoqhPaaDzwj/S1idTmJgIsLZQEy0mYq830859jrZY Xo3+8vkGXgqyWsCA9UTvTa7BCSvnxadn/FftF5BZdAXMkfc7rV/NLpV2kiKE8kaBL2BJ 8aTwXp7vScpTg4lDQlIFZ1ySksJZV26AXxQQ0rjs2VFdStRxoJr2F9sfS4DabT77vbrr qZX+JUwe+JyvXehrqPbQNLGDnvZYrvkp0K1xlD7fHj8bDDejxSFZa+gQPo1PWmHuqnXo U7DQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=QyjrEZ90uGdC2AmjAr4KAJGrSBcatvTXeyF4l1YEL/c=; b=V4RLTwTSxh6N5QTJqc/2fnJRZNKXYKWxduUWsiYzWGvrTDTDDta9V734vlf/4tnm/n HxP6uj3x1CKPqjcpw+2nFLJCoOIf0CujMJRhy/LuoXZJXv5iEdKKMuK9gkYTA8WCS2R3 XJI4Xml1X4RIXJNgBpz8qJyORyniHQ7JKL0LcgWZ7nzmQUmNg69AHmnQOBJ8i0BDj6sr vfoQN9c66+MnV0/21UilM3tYMFPHmhDF1kvJrLmI3ynQ5eIf0OiNsy/5Dql58xY5TdpW toox7ywRKwqY/QaorC5ViO8qmqdzuVqWNHSUtM6c48F2gdBMhhHvhSFW3wNIJeFhkjvE rNyQ== X-Gm-Message-State: AOPr4FXWf/O+U33LFHp3euPVQ5WuWeM6oR88c7jCSJTPqGA3wl69tHqPFlXEhBZuO/u+zPNQ X-Received: by 10.141.3.66 with SMTP id f63mr23595540qhd.55.1463259008920; Sat, 14 May 2016 13:50:08 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id s66sm11165955qha.44.2016.05.14.13.50.08 (version=TLSv1/SSLv3 cipher=OTHER); Sat, 14 May 2016 13:50:08 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> From: Michael Kifer Message-ID: <57378F7F.2040803@cs.stonybrook.edu> Date: Sat, 14 May 2016 16:50:07 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <87vb2g9xx5.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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.4 (/)

On 05/14/2016 04:39 PM, Phillip Lord wrote:
Michael Kifer <kifer@cs.stonybrook.edu> writes:

On 05/14/2016 09:57 AM, Phillip Lord wrote:
Eli Zaretskii <eliz@gnu.org> writes:

Date: Sat, 14 May 2016 12:25:13 +0300
From: Eli Zaretskii <eliz@gnu.org>
Cc: 22295@debbugs.gnu.org, Jim Meyering <jim@meyering.net>
Sorry for slow response -- was travelling.

Yep, viper is doing strange things to undo -- it adds a symbol ('viper)
to the undo list, then removes it later, amalgamating everything upto
'viper.
I don't remember much myself, but the issue is this (and it is documented):
It's commented rather documented:-)

Well, there is no technical documentation like for most other packages. The code is documented though (more or less :-)


In VI, the granularity of undoing is much coarser than in Emacs.
Several ops that Emacs undoes in multiple steps are supposed to be
undone with just one "undo" in VI. Viper simulates this by inserting
viper-buffer-undo-list-mark onto buffer-undo-list to mark the point to
which the Emacs undo's are to be run in order to accomplish one
VI-style undo. In Emacs, as I vaguely remember, this role is played by
nil(?), but VI-style undos are coarser than that, so viper requires
its own marker on the unfo list.
Yes, you are correct -- boundaries are nil.

Viper puts it's own mark in, yes, but then deletes it later on and
replaces it with nil in this bit of code.


(setq tmp2 (cdr tmp)) ; the part after mark

;; cut tail from buffer-undo-list temporarily by direct
;; manipulation with pointers in buffer-undo-list
(setcdr tmp nil)

(setq buffer-undo-list (delq nil buffer-undo-list))
(setq buffer-undo-list
      (delq viper-buffer-undo-list-mark buffer-undo-list))
;; restore tail of buffer-undo-list
(setq buffer-undo-list (nconc buffer-undo-list tmp2)))

Essentially, it just kills the standard boundary handling and does it's
own thing.

Right, it has to do its own marking.  When something gets viper-undone, the latest viper-buffer-undo-list-mark is deleted and is replaced with a nil, so that things can be further viper-undone.



Hope this helps.
You don't by any chance remember why viper mode appears to turns itself
off in noninteractive mode? Turns out to be rather painful for testing.


I am not sure what you are referring to here.



Phil
Sorry that I don't have much time these days to work on viper.  :-(
Too busy doing all logic and semantics?



Something like that.
Viper is not the only open-source thing out there :-)

--

       --- michael

 
From debbugs-submit-bounces@debbugs.gnu.org Sun May 15 22:32:24 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 02:32:24 +0000 Received: from localhost ([127.0.0.1]:53132 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b28KV-0000NI-Q6 for submit@debbugs.gnu.org; Sun, 15 May 2016 22:32:24 -0400 Received: from mail-oi0-f46.google.com ([209.85.218.46]:36645) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b28KT-0000N4-UU for 22295@debbugs.gnu.org; Sun, 15 May 2016 22:32:22 -0400 Received: by mail-oi0-f46.google.com with SMTP id x201so249362831oif.3 for <22295@debbugs.gnu.org>; Sun, 15 May 2016 19:32:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=cJBKaQL+YDD83GXiUu4/MxWAnefFCLjn7r+v9cD7Ehw=; b=fsO1Oo8t5anNjJePq3w6D4kNdi2FazGij+yHEHtKYMwY1+pge0vUzi5YP9M+gGej43 R49sQUU4qWUbxe2hqnNElccJQnnsiqnTEriWGnVGQgkvhT3yQP3FFn5GDdq7Nrio9zsM vIBN9+So17rso7fYtZhHDcJO/sCUYRG/JD+pPOKg1H3UqVA+K8vAOI2/NJR6jBUnGW4W jc9DZOADiirenzSGCku+A/A3caZlBoVwyUIPcE1hKWq1gL3KrOzk6zi8gMGJHkzSGgJf KkBCfI9/xNfDoEsTET2v8j3z0Lj8kGHaUFg2beU5O6AvlQwI8wRi2XYWyhPLT9lNku/A GEiw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=cJBKaQL+YDD83GXiUu4/MxWAnefFCLjn7r+v9cD7Ehw=; b=cNMTx2ogZxSXH/BguWJWWGJKL3tNiAVnDHVNDSfkZOVMhbOaB9dLYGXvlNnD/+m2De V8sls/5lAJstYw6QAGl5MYcTpaVMvckMHDlPdLl204PVPqBF5yNkhjYswX6Nmu3+GTSO GnYes3o246H5PWQT+uxCZIy0WPA2oTPsCKlsOPE9OxuyOthbf1cQMaF9Is4Qca19ivxP PULYNlW4aSacUNxlTPvJ4xSJPViyul5RFq7AXzAYrqm4Lrf6oNH9b1Pn13rp6JdX9pty iaVCC4FLLYFPQ2g6aKvo81GGGSxwnUevVkzqO4DOeLs8w5aAY+HnwvJhe2x5Bjc6Q0bW 5UTw== X-Gm-Message-State: AOPr4FVsNNSq0JaMHOhxOPNV8Yo3kaHp0IXtsGGD19jCDZD7PnkzDg6gKbTsun+RffL8ikVAONpEDnnPDhZFzA== X-Received: by 10.202.232.206 with SMTP id f197mr15916490oih.182.1463365936293; Sun, 15 May 2016 19:32:16 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.175.193 with HTTP; Sun, 15 May 2016 19:31:56 -0700 (PDT) In-Reply-To: <87poso7nf5.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> From: Jim Meyering Date: Sun, 15 May 2016 19:31:56 -0700 X-Google-Sender-Auth: 71dEy6T-sEQrZAsZNkKzNmCSAAw Message-ID: Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Michael Kifer 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.5 (/) On Sat, May 14, 2016 at 6:57 AM, Phillip Lord wrote: > Eli Zaretskii writes: > >>> Date: Sat, 14 May 2016 12:25:13 +0300 >>> From: Eli Zaretskii >>> Cc: 22295@debbugs.gnu.org, Jim Meyering >>> >>> > From: Jim Meyering >>> > Date: Sat, 2 Jan 2016 20:01:36 -0800 >>> > >>> > Hello, >>> > I noticed that viper-mode's "undo" ('u') command began to undo too much >>> > and was able quickly to determine that it worked fine with my snapshot >>> > built from git master some time on Nov 10, yet that it began to undo >>> > too much four days later. >>> > >>> > To demonstrate the problem (without risking changing anything in your >>> > home directory), run this: >>> > >>> > mkdir /tmp/x && HOME=/tmp/x emacs -Q -f viper-mode -nw >>> > ~/previously-nonexistent-file >>> > >>> > then respond "y", "y", "5" to get past the "viperize" setup questions. >>> > To reproduce the error, insert two lines, terminating each "insertion" with ESC, >>> > so that each is recorded as a separate undo'able operation. I.e., type this >>> > >>> > a 1 ESC >>> > >>> > to create the first line, then >>> > >>> > o 2 ESC >>> > >>> > to create the second. >>> > Finally, hit "u" to undo creation of the second and you'll see that it undoes >>> > both operations, erasing both lines. This is rather disruptive when that first >>> > bit of text was a long paragraph or two -- the novice may think that it's lost, >>> > because redo does not restore it -- however, it is available in emacs's >>> > yank buffer. >>> >>> Phillip, could you please look into this? This sounds like a annoying >>> problem for users of viper-mode, and AFAIU it happens on the release >>> branch as well. >> >> (Adding Michael to the addressees.) >> >> I took a short look, and it sounds like we need more experts here. >> Undo in viper has its own implementation, which tries to do something >> that is not immediately clear to me, and is not really documented >> anywhere. I guess vi users will know that, but I'm not one of them. >> >> The viper-undo command and related functions manipulate the Emacs undo >> data structures directly, see viper-adjust-undo. I guess the recent >> changes in low-level undo implementation run afoul of what viper-mode >> tries to do. >> >> I hope the above provides enough hints to find the reason for this >> problem and solve it. > > Sorry for slow response -- was travelling. > > Yep, viper is doing strange things to undo -- it adds a symbol ('viper) > to the undo list, then removes it later, amalgamating everything upto > 'viper. > > I've got a complete test case (below in case anyone is interested -- > I'll make a proper unit test of it on master eventually). Thank you for working on this. My fingers seem to have developed a serious dependence on viper-mode over the last two decades. I don't want to retrain them :-) From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 05:50:40 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 09:50:40 +0000 Received: from localhost ([127.0.0.1]:53258 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2FAe-0005Qn-8a for submit@debbugs.gnu.org; Mon, 16 May 2016 05:50:40 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:39238) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2FAc-0005Qa-NY for 22295@debbugs.gnu.org; Mon, 16 May 2016 05:50:39 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=F9vr8NGrFM/9V5ATxssiSxNTHh/SoxmiOCbz23SjMQ0=; b=Lnfpr7XnwpYbR0Lv1VO4VT3Om4 KNJp+Sm7/yw4fCo+k/rBLAE1kRAM+/YuDm1esAQM5gCrVlrqMVoCCyLTUryZuSph33OTXAw6EOOTN SnBkHWqtu9P/ADbwONkZVcO7As1bqtXGyjLvMvQt/yVXVefPaRO96073SztTjtzTZF85xvUCsuyOL fjJ5FDyHiw/B1ZWOHGp+ihh0uBjnaidUeMT/TI32OwGW3k0mqxuWaGY+04HCskJ3siNsNohutOa98 iFRORQxdmeFzdu3oXoxZ+CfYxVW1B5jaa9bKKefCUB4sLbGpEDJI7TdRuFzt/MZHSe2SsnlxaR60I yWWSXCcQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:33101 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2FAW-0011v8-90; Mon, 16 May 2016 10:50:32 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <57378F7F.2040803@cs.stonybrook.edu> Date: Mon, 16 May 2016 10:50:31 +0100 In-Reply-To: <57378F7F.2040803@cs.stonybrook.edu> (Michael Kifer's message of "Sat, 14 May 2016 16:50:07 -0400") Message-ID: <878tzauyag.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Michael Kifer writes: > Right, it has to do its own marking. When something gets viper-undone, > the latest viper-buffer-undo-list-mark is deleted and is replaced with > a nil, so that things can be further viper-undone. > > Hope this helps. It does yes. I am working on a solution; I think that the undo changes mean that this should be easier to implement. > You don't by any chance remember why viper mode appears to turns itself > off in noninteractive mode? Turns out to be rather painful for testing. > > I am not sure what you are referring to here. Consider this: (defcustom viper-mode (cond (noninteractive nil) (t 'ask)) ..... And the viper-mode function... (defun viper-mode () "Turn on Viper emulation of Vi in Emacs. See Info node `(viper)Top'." (interactive) (if (not noninteractive) (progn 'actually-turn-viper-mode-on.....) (if (eq major-mode 'viper-mode) (setq major-mode 'fundamental-mode)) ) I normally run tests in batch, but viper automatically switches itself off. It's going to make testing viper essentially impossible without working around it (easy to do, but it would be good to understand why it's like this). Phil From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 08:42:22 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 12:42:22 +0000 Received: from localhost ([127.0.0.1]:53367 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2Hqo-0003HJ-JG for submit@debbugs.gnu.org; Mon, 16 May 2016 08:42:22 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:45636) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2Hqm-0003H4-0E for 22295@debbugs.gnu.org; Mon, 16 May 2016 08:42:21 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=tfdjsw67Y8WwczSrNULcmzSIC09Sj/RPqhw63IzYr1E=; b=mytqwNqBrcEYnEhXCN7K9PNPwQ +Mi3hqOdD50ayYZ9roVOK7ikx3brVYcIHrH1s11oLTqErfVbrODul3OU+1tuZPGRt0u4ySGe4DIf+ xfg+SaRd3gpKS0tRNDirLNSe7EkrHeTh61MGhwSRRYTfIDz0e4lQ/FMAZJiJ7U49fFuJN9PUGKlOn n2lJwXJUXBMqTqdcGnkkp+DoAcI3tRzJGwym23K7bcjPHrFGiDAml8ZGG+8+05fjE8FTTDmR9C8px Nr4Y/pFnhjqV3S43/pzzYw68SOLQnkci5bHMM2CxDfTek23LoW+bzzJxokvZ4pQZDKqyW6a7SnpGb ffchg3AA==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:32512 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2Hqf-001TzV-J2; Mon, 16 May 2016 13:42:13 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Albinus Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <87futj21a1.fsf@gmx.de> (Michael Albinus's message of "Sun, 15 May 2016 10:06:30 +0200") Date: Mon, 16 May 2016 13:37:00 +0100 Message-ID: <87d1omtc0j.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <87futj21a1.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Michael Kifer , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Michael Albinus writes: > phillip.lord@russet.org.uk (Phillip Lord) writes: > >> You don't by any chance remember why viper mode appears to turns itself >> off in noninteractive mode? Turns out to be rather painful for testing. > > You could embed your test code like this: > > (let (noninteractive) > (run-your-tests)) Yeah, been doing that. Ugly, though, it's not necessary. The only reason I can think is for people who do lots of "--batch" jobs and don't want viper to interfere. But, it shouldn't, really, and my guess is that most people do "emacs --batch -q -l blah.el" for this use. Phil From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 08:42:27 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 12:42:27 +0000 Received: from localhost ([127.0.0.1]:53369 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2Hqs-0003HZ-Ro for submit@debbugs.gnu.org; Mon, 16 May 2016 08:42:27 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:45643) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2Hqm-0003H5-0V for 22295@debbugs.gnu.org; Mon, 16 May 2016 08:42:25 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=QfeAlFPdXf3r40z5dqQF+fZgmfEs94322hB11hHU9bg=; b=kyLity3364XUxpKGGnrKffEvKQ M05llXHIgD+Ow7cjNOihvpQNHb+jLUvOcnzUYvuwJK23sbTlB22ctM7GgmrUz8u4qYOGdDwrlbCZa Ihazl4CsApsj5AiPY21wVyorno4miXLM2ZRyywp8M9cSYhImXz4fmTTBQ7wg+3fyfooGZvd54NA/L TV6U/eEk803R9q4kRTYrFNma8BviT1c3/mzaGj8csm0sW/mF/c7Evb11V3/3bUYEIjQqSYsZAqvkB B7mc+6rbDc4DgWygVk5RC5am0EHjH2FjICSoOcFrfj2cHRjSw8oo88Cykt3EBH3nZ4AXe5bgtE3Ge l7qZfc8w==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:33415 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2Hqg-001Tzo-0L; Mon, 16 May 2016 13:42:14 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Jim Meyering Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: (Jim Meyering's message of "Sun, 15 May 2016 19:31:56 -0700") Date: Mon, 16 May 2016 13:41:17 +0100 Message-ID: <878tzatbte.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Michael Kifer 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 (/) Jim Meyering writes: >> Sorry for slow response -- was travelling. >> >> Yep, viper is doing strange things to undo -- it adds a symbol ('viper) >> to the undo list, then removes it later, amalgamating everything upto >> 'viper. >> >> I've got a complete test case (below in case anyone is interested -- >> I'll make a proper unit test of it on master eventually). > > Thank you for working on this. My fingers seem to have developed a > serious dependence on viper-mode over the last two decades. > I don't want to retrain them :-) It's okay. I don't want Eli forwarding bug reports once emacs-25 comes out! I have pushed a first attempt at a fix to branch fix/viper-undo. Clearly, it's not finished yet, but I'd like to get your feedback as to whether it works; it should fix the example given, but I haven't used viper at all, so if it breaks other things I won't know. I haven't managed to work out exactly why the error is happening -- probably though because the timing of the undo-boundary is somewhat different, though. With this fix, viper just disables automatic boundary addition and adds it's own as necessary, which seems cleaner. Phil From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 11:39:44 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 15:39:44 +0000 Received: from localhost ([127.0.0.1]:53918 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2KcR-0007wA-UY for submit@debbugs.gnu.org; Mon, 16 May 2016 11:39:44 -0400 Received: from mail-oi0-f46.google.com ([209.85.218.46]:34047) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2KcP-0007vx-RP for 22295@debbugs.gnu.org; Mon, 16 May 2016 11:39:42 -0400 Received: by mail-oi0-f46.google.com with SMTP id k142so273959057oib.1 for <22295@debbugs.gnu.org>; Mon, 16 May 2016 08:39:41 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=GRA3sJz+r39Wp/N+wgljN2Zf4UWJKAz0CfNUOwBnieU=; b=OcNL5/MinUFDOzbq1IIfchi+5Us/Z2xtawTwQwGdPhO86ba8+jO6t3oVlWqAmEj4Z+ FdDq0Qd70Uq9zcytJmQCEJszVOCSmShu6p5OUfI1Jw9Khaww3qu9TPF67hGrc4LdW0Dn o/h5yFxExhTAahFMdAazUDDSBL+tUCt8Ptc0bwqcvdz04JIur0+lH6+6cYGlAtCaH2An +YrVWsCdxAgfT+H6tehBgv4u0dHo92oszFiDuRD/PGcfl8l7brcbWfiJypgU/N2M8aR4 g7SwGz0UtDAeGAxY9BvIg22r0lD+PwXLHcj+zh49KGDEsiExil1I7k7SZS4Bh83aq9ZE 76yw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=GRA3sJz+r39Wp/N+wgljN2Zf4UWJKAz0CfNUOwBnieU=; b=N2i63Xjv8LyJbTBXURw63j2TsgZeunSs+O5yAjQYTnG6EIbNJ6SD/Vs23YnUmkctDm D4KHhPYkuWdrV+xVn10+zJTY6cH6dLNFXqIPPsW4WtrFrwQU8uJ69FHfSowE0hjqeuwX AwNEufFVKf039e0yWqjbTQ7tKw2/zZQfHdVQD4XBpTQ2yVGfWc1imWSJJk1kxtivCNfs EW1tCX3v68+hcD894KueWC3NAGJeXINOgQ0H43k1nCYNGO5MFJ+KCP3ScKupnB0vNmBK Ny5iHEzzIJ/7miaq742gAUxGyGOnJOR8JUE5BM4LbLQnof5X2YhjZythbxBvXt8gn/X8 y0Hg== X-Gm-Message-State: AOPr4FXBW6aN9LT/sX24MJOAhyLl+NZidwjtdIs1BIRvPnnUCvFx8H8D3tokLMXHTLK4VALPUodv5h5VMpeaPg== X-Received: by 10.202.105.198 with SMTP id e189mr14877926oic.195.1463413176116; Mon, 16 May 2016 08:39:36 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.175.193 with HTTP; Mon, 16 May 2016 08:39:15 -0700 (PDT) In-Reply-To: <878tzatbte.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> From: Jim Meyering Date: Mon, 16 May 2016 08:39:15 -0700 X-Google-Sender-Auth: XJiKR1zxe90pbzWju4FtrQYYeBo Message-ID: Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Michael Kifer 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.5 (/) On Mon, May 16, 2016 at 5:41 AM, Phillip Lord wrote: ... > I have pushed a first attempt at a fix to branch fix/viper-undo. > Clearly, it's not finished yet, but I'd like to get your feedback as to > whether it works; it should fix the example given, but I haven't used > viper at all, so if it breaks other things I won't know. > > I haven't managed to work out exactly why the error is happening -- > probably though because the timing of the undo-boundary is somewhat > different, though. With this fix, viper just disables automatic boundary > addition and adds it's own as necessary, which seems cleaner. Thank you. That does indeed fix the case I mentioned. Here are some cases where it does not work as expected: start with an empty buffer in viper-mode type 'i 1 2 3 4 5ESC' type 'F2dw' to delete the 2 and a space. type 'wdw' to delete the 4 and a space. Now, if I were to hit "u" to undo, I would expect that most recent deletion to be undone and the 4 would reappear. Then I would hit '.' to undo the deletion of the '2'. Finally one more '.' would undo the creation of that first line. However, with the current patches, that first 'u' undoes everything and leaves me with the empty initial file. Another example starting with an empty file: Create some content via ':r!seq 999|fmt RETURN' Then remove e.g., "222 " and "444 " via '/222' RET 'dw', then '/444' RET 'dw'. Now, we expect a single 'u' to restore the '444 ', yet it undoes everything, leaving an empty buffer. Hmm... that's probably no different from the first example. One more, then. Starting with this input: 1 2 3 4 5 6 advance to the '2' with 'w', 'dw' to delete the 2, then three '.'s to delete the 3, then 4 and 5. Then begin to undo with 'u', then '.' to repeat it. Those first two work, restoring the 5 and 4. However, one more '.' restores both the 3 and the 2. From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 12:34:29 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 16:34:29 +0000 Received: from localhost ([127.0.0.1]:54040 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2LTR-0002Y3-1e for submit@debbugs.gnu.org; Mon, 16 May 2016 12:34:29 -0400 Received: from eggs.gnu.org ([208.118.235.92]:52229) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2LTQ-0002Xr-7b for 22295@debbugs.gnu.org; Mon, 16 May 2016 12:34:28 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b2LTH-0003mu-50 for 22295@debbugs.gnu.org; Mon, 16 May 2016 12:34:23 -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.6 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:59825) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b2LTG-0003lc-P2; Mon, 16 May 2016 12:34:19 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2360 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b2LTD-0003Fj-VW; Mon, 16 May 2016 12:34:16 -0400 Date: Mon, 16 May 2016 19:34:15 +0300 Message-Id: <83zirq3qt4.fsf@gnu.org> From: Eli Zaretskii To: Jim Meyering In-reply-to: (message from Jim Meyering on Mon, 16 May 2016 08:39:15 -0700) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: kifer@cs.stonybrook.edu, 22295@debbugs.gnu.org, phillip.lord@russet.org.uk 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: Jim Meyering > Date: Mon, 16 May 2016 08:39:15 -0700 > Cc: Eli Zaretskii , Michael Kifer , 22295@debbugs.gnu.org > > Thank you. > That does indeed fix the case I mentioned. > Here are some cases where it does not work as expected: > > start with an empty buffer in viper-mode > type 'i 1 2 3 4 5ESC' > type 'F2dw' to delete the 2 and a space. > type 'wdw' to delete the 4 and a space. > > Now, if I were to hit "u" to undo, I would expect that most recent > deletion to be undone and the 4 would reappear. > Then I would hit '.' to undo the deletion of the '2'. Finally one more > '.' would undo the creation of that first line. > However, with the current patches, that first 'u' undoes everything > and leaves me with the empty initial file. > > Another example starting with an empty file: > Create some content via ':r!seq 999|fmt RETURN' > Then remove e.g., "222 " and "444 " via '/222' RET 'dw', > then '/444' RET 'dw'. Now, we expect a single 'u' to restore the '444 ', > yet it undoes everything, leaving an empty buffer. > Hmm... that's probably no different from the first example. > > One more, then. Starting with this input: > > 1 2 3 4 5 6 > > advance to the '2' with 'w', 'dw' to delete the 2, then three '.'s to > delete the 3, then 4 and 5. > Then begin to undo with 'u', then '.' to repeat it. Those first two > work, restoring the 5 and 4. > However, one more '.' restores both the 3 and the 2. Thanks. It now looks like your expectations are close to what Emacs does by default, whereas Michael said the VI undo is more coarse (and in the original recipe, it indeed seemed to be that). Is it possible to have a more general/formal description of what 'undo' in VI is supposed to do? E.g., it looks like it has different granularities wrt insertions and deletions, is that correct? You see, when I said this is undocumented, I meant precisely that: the expected effect of 'undo' in VI is not described, so someone who is not a VI user doesn't know what to test and how to program that. Michael said that this _is_ documented, but the only documentation I see is comments that describe _what_ they do in terms of Emacs undo structures, and are full of "rationale" such as "so that things will be undone properly". I don't see any description of the expected effect of undoing in different situations, let alone some formal specification of undo-related requirements. If I missed some description of how undo is supposed to work in viper, please just point me there. Another alternative is to make viper use the default Emacs undo, and then ask you and other users of viper to tell where the results don't match your expectations. It could well be that starting with a clean slate will get us to the goal faster and with less complex code. TIA From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 13:06:34 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 17:06:34 +0000 Received: from localhost ([127.0.0.1]:54054 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2LyT-0003Iw-UU for submit@debbugs.gnu.org; Mon, 16 May 2016 13:06:34 -0400 Received: from mail-qg0-f53.google.com ([209.85.192.53]:33992) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2LyS-0003Ij-81 for 22295@debbugs.gnu.org; Mon, 16 May 2016 13:06:32 -0400 Received: by mail-qg0-f53.google.com with SMTP id 90so92127615qgz.1 for <22295@debbugs.gnu.org>; Mon, 16 May 2016 10:06:32 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=ApXzhy+h9wUzwJcQ9nKcwDci9AEDHGnSXeSAm2O6XZU=; b=HuTVo+46tWYJnq6g+ioWiNO9O/pdvAbjW1GfJ3BslHD79+0F8Xg13rPlEb+P4OhF9+ lkcnxSzYPqiUb8LZNVKFDNxz8yhV9pL9dvKvrg6UemoE1lDMRU1JXXGP6oRck+yKjtCc 8ZTKIBLZlGOuhgEU9xqQ/dWwal9BsrzTxGskDpj4zl4ukQTZUKRbYKtFEFhXsJtMJuzM bNKFcjnVNAaX6XIqIb4LJtX+M9jhd+LC/+CrsoWys62hKYKqBGN+c7X9tUj4nLHkqOjW 9HvfeZHMUQgzgGpwzp2dqcp+aW5JGKRVfTQ7k1dMNFKMXvCMDLuhQdwfym4WN0tBqkEJ qNlA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=ApXzhy+h9wUzwJcQ9nKcwDci9AEDHGnSXeSAm2O6XZU=; b=gH0U+5AD4GsxKcABkODh7R4VJed0w1aWCOGldR0K3/kVGDVVXo6/A6yVlJ5gSzlssp qstfBQIKq8nW6dHvDZTDPGCOwXgjrC4lm1qHhwXC4/IHCKIJWAwUuB0cL31fg+wNjo3M PDQ3DMv7qIE6sKe6FmGSL6V2xwg2ZfibsPOQb5i1Y4xsG2Rgs83/J0E92IwxbUEdMut/ N1CTB16Vud+fQtGTOA7mDYo8VzoUO41tiBw3z/MsC1sjFpZ3tEWKGThDMb0zIPkxlkUN rlc9jyAa91UTtk4dQE7+Go2+LnasebvXy7Tlxk1GVsQJo3SIl0sZtNsJ2gU2Cf9NgvTf ESMQ== X-Gm-Message-State: AOPr4FUf80Qp8h+bCBw7t4fFnFBqsTnlr+7BfzvfhJI0N2Y/maroOdQuFZHPcCIPKDVzfE/p X-Received: by 10.140.136.16 with SMTP id 16mr32513598qhi.25.1463418386769; Mon, 16 May 2016 10:06:26 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id o78sm15179578qge.23.2016.05.16.10.06.25 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 16 May 2016 10:06:26 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord , Michael Albinus References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <87futj21a1.fsf@gmx.de> <87d1omtc0j.fsf@russet.org.uk> From: Michael Kifer Message-ID: <5739FE11.6040009@cs.stonybrook.edu> Date: Mon, 16 May 2016 13:06:25 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <87d1omtc0j.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, jim@meyering.net 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.4 (/)

On 05/16/2016 08:37 AM, Phillip Lord wrote:
Michael Albinus <michael.albinus@gmx.de> writes:

phillip.lord@russet.org.uk (Phillip Lord) writes:

You don't by any chance remember why viper mode appears to turns itself
off in noninteractive mode? Turns out to be rather painful for testing.
You could embed your test code like this:

(let (noninteractive)
  (run-your-tests))

Yeah, been doing that. Ugly, though, it's not necessary.

The only reason I can think is for people who do lots of "--batch" jobs
and don't want viper to interfere. But, it shouldn't, really, and my
guess is that most people do "emacs --batch -q -l blah.el" for this use.

Phil

If you point me to the piece of code where this is done I'll try to recollect why this is done.
My first thought is that it might have something to do with VI-style keyboard macros.

--

       --- michael

 
From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 13:14:13 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 17:14:13 +0000 Received: from localhost ([127.0.0.1]:54071 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2M5t-0003VR-6J for submit@debbugs.gnu.org; Mon, 16 May 2016 13:14:13 -0400 Received: from mail-qk0-f178.google.com ([209.85.220.178]:35725) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2M5r-0003VB-L8 for 22295@debbugs.gnu.org; Mon, 16 May 2016 13:14:11 -0400 Received: by mail-qk0-f178.google.com with SMTP id n62so88298023qkc.2 for <22295@debbugs.gnu.org>; Mon, 16 May 2016 10:14:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=8h6G382IpE9U4d4UQXAmLKx60ReIYtkpnA5Pr2pAVA4=; b=kTNB1mzY8cyYx4udCVcPLJQIji1x/eTPx/TUcyUoQFiIbNwx/gG7UGKXy+ZiW6oKtm ovCJtb73nkXItMDE9fPuZmKpQszPEIfYHbFzIBbvErY/bUKWZgEfepILLuDffxnkubKH QlaqKQAeEdvbD8kmdumOgonGfbTQV9ya+4Lf5Rb0TLDhLgmHBFww0q7ih6qOP5HIIb7Y nj8rMyncpqvVE38XbYkmAqN4qc3vbr+Am+m+SFBnYaj2SoBwelOlFpt0D58zbtjyDVqK tKLSSVjsenM95BGDuL8TUGo2IegvA+Ek4WmQMDucyD82j4azuheZ1okxyEXAYH3EorI9 HeIg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=8h6G382IpE9U4d4UQXAmLKx60ReIYtkpnA5Pr2pAVA4=; b=gMi1R1wzDB0IZN8uJtTNeTMZ7vKrq1NCDAuA0a0pqaJGVhy3ukfYI9/1FN52TjaSWN oP8fF1WUr9wdxr4SL10c7LFbDJaWaK6hVb5HMt4zJ+Ll8Uy1B194A+EaXWcdFjwkUjWE LqRUjVctyZnCXoUHgRryiOh4QZZzXTOZZWrZVPhaZEK6vfSdAZxsh5mEYY74il4LEV6U kQbDkVooU5JXrFcrgONg8zvI5Tm50sFzJNx7qrrN6n6xyWd5vBOtoqDfRnMnoL6spoXa nTZyZ65/ggNmdSj6MAPjPlvl+fs18Ww+ciHri9TaErB4r4AX0BH13/jvgGhasbuzLCEG XA5w== X-Gm-Message-State: AOPr4FVCAzukUbkrKtLh6q0+uyOWeDCOdhCjJtYnT147gQy2GVW2sy7Kj6d9frizydNtMG7U X-Received: by 10.55.15.102 with SMTP id z99mr26641848qkg.209.1463418846245; Mon, 16 May 2016 10:14:06 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id w110sm15143194qge.43.2016.05.16.10.14.05 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 16 May 2016 10:14:05 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Eli Zaretskii , Jim Meyering References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> From: Michael Kifer Message-ID: <5739FFDD.8080206@cs.stonybrook.edu> Date: Mon, 16 May 2016 13:14:05 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <83zirq3qt4.fsf@gnu.org> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, phillip.lord@russet.org.uk 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.4 (/)

On 05/16/2016 12:34 PM, Eli Zaretskii wrote:
From: Jim Meyering <jim@meyering.net>
Date: Mon, 16 May 2016 08:39:15 -0700
Cc: Eli Zaretskii <eliz@gnu.org>, Michael Kifer <kifer@cs.stonybrook.edu>, 22295@debbugs.gnu.org

Thank you.
That does indeed fix the case I mentioned.
Here are some cases where it does not work as expected:

  start with an empty buffer in viper-mode
  type 'i 1 2 3 4 5ESC'
  type 'F2dw' to delete the 2 and a space.
  type 'wdw' to delete the 4 and a space.

Now, if I were to hit "u" to undo, I would expect that most recent
deletion to be undone and the 4 would reappear.
Then I would hit '.' to undo the deletion of the '2'. Finally one more
'.' would undo the creation of that first line.
However, with the current patches, that first 'u' undoes everything
and leaves me with the empty initial file.

Another example starting with an empty file:
Create some content via ':r!seq 999|fmt RETURN'
Then remove e.g., "222 " and "444 " via '/222' RET 'dw',
then '/444' RET 'dw'. Now, we expect a single 'u' to restore the '444 ',
yet it undoes everything, leaving an empty buffer.
Hmm... that's probably no different from the first example.

One more, then. Starting with this input:

  1 2 3 4 5 6

advance to the '2' with 'w', 'dw' to delete the 2, then three '.'s to
delete the 3, then 4 and 5.
Then begin to undo with 'u', then '.' to repeat it. Those first two
work, restoring the 5 and 4.
However, one more '.' restores both the 3 and the 2.
Thanks.  It now looks like your expectations are close to what Emacs
does by default, whereas Michael said the VI undo is more coarse (and
in the original recipe, it indeed seemed to be that).

Is it possible to have a more general/formal description of what
'undo' in VI is supposed to do?  E.g., it looks like it has different
granularities wrt insertions and deletions, is that correct?

You see, when I said this is undocumented, I meant precisely that: the
expected effect of 'undo' in VI is not described, so someone who is
not a VI user doesn't know what to test and how to program that.

In VI, an undo is supposed to undo the effect of the previous VI command.  In Emacs terms, each such command usually means several inserts and deletes, which in Emacs would be undone via a series of undos. Such behavior is a non-no to a vi user.

Michael said that this _is_ documented, but the only documentation I
see is comments that describe _what_ they do in terms of Emacs undo
structures, and are full of "rationale" such as "so that things will
be undone properly".  I don't see any description of the expected
effect of undoing in different situations, let alone some formal
specification of undo-related requirements.  If I missed some
description of how undo is supposed to work in viper, please just
point me there.

I was referring to the insertion of a special marker into the undo list. Obviously, the usual Vi conventions are not documented because this would require to duplicate the Vi manual.

Another alternative is to make viper use the default Emacs undo, and
then ask you and other users of viper to tell where the results don't
match your expectations.  It could well be that starting with a clean
slate will get us to the goal faster and with less complex code.

This would be a non-starter and would cause a mass migration to vim. The undo would also then be implementation dependent.  If, say, "delete 2 words" is implemented differently from how it is now then it would  be undone via a different sequence of commands.

--

       --- michael

 
From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 13:41:44 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 17:41:44 +0000 Received: from localhost ([127.0.0.1]:54166 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2MWW-0007ZP-7f for submit@debbugs.gnu.org; Mon, 16 May 2016 13:41:44 -0400 Received: from eggs.gnu.org ([208.118.235.92]:36157) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2MWU-0007ZE-W0 for 22295@debbugs.gnu.org; Mon, 16 May 2016 13:41:43 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b2MWM-0003cX-9g for 22295@debbugs.gnu.org; Mon, 16 May 2016 13:41: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.6 required=5.0 tests=BAYES_50,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:33508) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b2MWM-0003c7-6Y; Mon, 16 May 2016 13:41:34 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:2443 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b2MWI-0004t7-Sy; Mon, 16 May 2016 13:41:32 -0400 Date: Mon, 16 May 2016 20:41:17 +0300 Message-Id: <83twhx529u.fsf@gnu.org> From: Eli Zaretskii To: Michael Kifer In-reply-to: <5739FFDD.8080206@cs.stonybrook.edu> (message from Michael Kifer on Mon, 16 May 2016 13:14:05 -0400) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> <5739FFDD.8080206@cs.stonybrook.edu> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, jim@meyering.net, phillip.lord@russet.org.uk 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > Cc: phillip.lord@russet.org.uk, 22295@debbugs.gnu.org > From: Michael Kifer > Date: Mon, 16 May 2016 13:14:05 -0400 > > > Another alternative is to make viper use the default Emacs undo, and > > then ask you and other users of viper to tell where the results don't > > match your expectations. It could well be that starting with a clean > > slate will get us to the goal faster and with less complex code. > > This would be a non-starter and would cause a mass migration to vim. The undo would also then be > implementation dependent. If, say, "delete 2 words" is implemented differently from how it is now then it would > be undone via a different sequence of commands. Then I guess the current trial-and-error method will have to be the way. Too bad, I have hard time believing we will be ready with a complete solution in time for Emacs 25.1, which is what I hoped. Thanks. From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 15:21:55 2016 Received: (at 22295) by debbugs.gnu.org; 16 May 2016 19:21:55 +0000 Received: from localhost ([127.0.0.1]:54399 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2O5S-00009R-Sp for submit@debbugs.gnu.org; Mon, 16 May 2016 15:21:55 -0400 Received: from mout.gmx.net ([212.227.17.22]:54076) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2O5Q-00009D-Iz for 22295@debbugs.gnu.org; Mon, 16 May 2016 15:21:54 -0400 Received: from detlef.gmx.de ([87.146.50.242]) by mail.gmx.com (mrgmx103) with ESMTPSA (Nemesis) id 0MfmZs-1bGEhD259Y-00NApe; Sun, 15 May 2016 10:06:35 +0200 From: Michael Albinus To: phillip.lord@russet.org.uk (Phillip Lord) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> Date: Sun, 15 May 2016 10:06:30 +0200 In-Reply-To: <87vb2g9xx5.fsf@russet.org.uk> (Phillip Lord's message of "Sat, 14 May 2016 21:39:34 +0100") Message-ID: <87futj21a1.fsf@gmx.de> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Provags-ID: V03:K0:GybK+2XZgifKJJ53UOJmNRwHMY2t0oppa4biLgtQofsQ4b8HQvD O0s1J/GLQwRm1/YixDOHXShUD19J2EM0tUa06u2vHkFJ48/bEnEdyf0HCoLsO4z8vPMN8q1 4Gd0zSPnqnRXCFyf1EcEHFRSUrMKLRtEgR5dcT7eYRN3t8dvX+BqlYzoagvGdNsJuwX5jUZ uZaRWKerxY1x7Na/yEabw== X-UI-Out-Filterresults: notjunk:1;V01:K0:L4OmhiIMJLE=:6HEzHlyqAJYjC2PG8mhsmQ HpPIEF8bkfSTeeS3V0dhLv8HHFTZ4Wu37E5Z6kjXNy1uaPM202AEjLMzd8NlEO3g97tiXk0fP UfUAH2WoSp2QL6jiQ4q+NReltNxFd+SzylWscrcOKl3sPc+28X+oxsQo+osLrpTIWzufEbQiW QLn5qWsqtRR4VzCOHH9bzsAF8azibpMpeuD/puTZYyM1AIMQGulB07/HoFPbVpWNkwdPbHAQH AZ3duZTPKA2oqozyu++P5q8PxzFo19jJwAxXXsnt1YAG+F2//cDwhdo+BRTaFdTRiUaceXc3I cXdIuN6YD6DgpTlMBK6PBzT28fZ3iZNRPENrFeIy08/ue0UIiV0NH0HUn5YgmkhSLJUtC67qw 1cEV93CsENjZ67ijAsT6OBZoH7nkWFAqIDYLkM05oAoSAQZTnsgF+EHquFRdGjnQqmUmyoEtp LDUZ94SatV+j1U4lddmxk3iIeWitSNWgUPcztMroZCu8hsvdNBX5lD2cMDoLLpK5NrbsvY4d/ mAt1G6XM1oDSfbjEj61I1avxetKqnyyUyegCMS61xE0O4CwNnORKI4pxDSaiTyzSXBTw+8Rym 5RmvWE66EmP4GfTM+bHsw51GimmIsV4T4NVcq3XcZ4aak8C97nhsywMGNHXMnZ1qBH7pf7EHj ynlWQZwUTtrze79qBAWPMzawlrySMUEsvuBUsqG6rmZ32MSQt9NHcB/IWXuuLcrxubV3XHd0M F+LrRJcTkJQthGGU1zfDEWTUTytm4l0o5aQVIJ6d79dQXBq/lOtcBKAxZh91xQyztQmOSKcHM SYAP50N X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 22295 Cc: Michael Kifer , 22295@debbugs.gnu.org, jim@meyering.net 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.7 (/) phillip.lord@russet.org.uk (Phillip Lord) writes: > You don't by any chance remember why viper mode appears to turns itself > off in noninteractive mode? Turns out to be rather painful for testing. You could embed your test code like this: (let (noninteractive) (run-your-tests)) > Phil Best regards, Michael. From debbugs-submit-bounces@debbugs.gnu.org Mon May 16 23:39:05 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 03:39:05 +0000 Received: from localhost ([127.0.0.1]:54600 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2Vqa-0005Ye-QU for submit@debbugs.gnu.org; Mon, 16 May 2016 23:39:04 -0400 Received: from mail-qg0-f48.google.com ([209.85.192.48]:36675) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2VqY-0005Y9-Ny for 22295@debbugs.gnu.org; Mon, 16 May 2016 23:39:03 -0400 Received: by mail-qg0-f48.google.com with SMTP id w36so1932349qge.3 for <22295@debbugs.gnu.org>; Mon, 16 May 2016 20:39:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=G8YW/nbhcCcAZz0y/rlgZXIibCN7WCTraYCPZMeAFL0=; b=C5Lbee9wZW8cuuluKWalb1SEy3ZlLEloI+j3UBYwJwD1ERerdiyCBZ1FzfZno2lodN aGsIeL/uUaI3H0IC+lEPuqPQmZ1z8Tl1w+/Bwk8qAQI+zi7RLr7bD1y4DK/hFU9RtZHJ amHI28b83dNEylW3YRNJmYvHE4ZweCUCwClik1EVAEPbKbjdgv99RdUPGa/FRrlvzjD/ FNZUbGXNuLvVUCoV4of7LVgbu+jiLHD56InJ84zMGnkuWmgcc+tzVQrzFktmGMVD/xlu CsW6h5pBWsGGEai5DiSMOJUHELvqkxwgUQ7Sk0SMk4NlQofF8v9hBXEUEdo3hbRqPg+R D0FA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=G8YW/nbhcCcAZz0y/rlgZXIibCN7WCTraYCPZMeAFL0=; b=XXunWYDy7s25NDSIbkFE6uDRK2FmuGux2oWxxzui/pDwx9761kc0JaCqzamy4mikty iZHUZ1fZUqKjyE6VO3NbEY4F3aHJr5vwRPflAsmu5luPEAbjnXLY6/nigxTx/DeTLZhv yuc1TtngO+ikFztRrHvSY6ET6bnuZzh2UCXJ5nyzgpf5IBROtiHQA3x0KY0DBtC1CKHM aiRND6sWYaV3VggY+Cq8vB66kC5D++mpPbL+xQmSxorWKNXQFFwZq9XOCckE8EkHCWF1 blLGgyE2wCMAOFvPjlK08A6ym6Z+uNYujYNYxzMsfw/Or+UQ8xrZLI46wRWRuI8Ldx8k NL/Q== X-Gm-Message-State: AOPr4FXmgsbul79z/zQfK4vM6Yv4RvX/eHLuwt4T2dO/Gx2hiNcUD3aSUxJmxyAaR3/arjGr X-Received: by 10.140.42.195 with SMTP id c61mr32223540qga.40.1463456337184; Mon, 16 May 2016 20:38:57 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id w6sm346654qhb.2.2016.05.16.20.38.56 (version=TLSv1/SSLv3 cipher=OTHER); Mon, 16 May 2016 20:38:56 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <57378F7F.2040803@cs.stonybrook.edu> <878tzauyag.fsf@russet.org.uk> From: Michael Kifer Message-ID: <573A9250.8020504@cs.stonybrook.edu> Date: Mon, 16 May 2016 23:38:56 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <878tzauyag.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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.4 (/)

On 05/16/2016 05:50 AM, Phillip Lord wrote:
Michael Kifer <kifer@cs.stonybrook.edu> writes:
Right, it has to do its own marking. When something gets viper-undone,
the latest viper-buffer-undo-list-mark is deleted and is replaced with
a nil, so that things can be further viper-undone.

Hope this helps.

It does yes. I am working on a solution; I think that the undo changes
mean that this should be easier to implement.



You don't by any chance remember why viper mode appears to turns itself
off in noninteractive mode? Turns out to be rather painful for testing.

I am not sure what you are referring to here.
Consider this:

(defcustom viper-mode (cond (noninteractive nil)
			    (t 'ask))
                            .....
                            

And the viper-mode function...

(defun viper-mode ()
  "Turn on Viper emulation of Vi in Emacs. See Info node `(viper)Top'."
  (interactive)
  (if (not noninteractive)
      (progn
         'actually-turn-viper-mode-on.....)
  (if (eq major-mode 'viper-mode)
      (setq major-mode 'fundamental-mode))
  )

I normally run tests in batch, but viper automatically switches itself
off. It's going to make testing viper essentially impossible without
working around it (easy to do, but it would be good to understand why
it's like this).


OK. I don't remember this very clearly but there are cases (which I don't remember) where viper-mode gets kicked in implicitly for buffers where
the user didn't ask it to and where it is not wanted.  Maybe when one runs emacs in batch mode as a scripting tool.  One can defeat viper-mode in that case using emacs -q, but maybe there are other cases.

Since I don't remember and since it is not good to have kludges around, one way to figure it out is to comment out the (not interactive) part and then see what happens.
If and when you see undesired behavior, then uncomment and document :-)

--

       --- michael

 
From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 04:52:31 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 08:52:31 +0000 Received: from localhost ([127.0.0.1]:54667 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2aju-0004T1-Vi for submit@debbugs.gnu.org; Tue, 17 May 2016 04:52:31 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:38786) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajt-0004SX-06 for 22295@debbugs.gnu.org; Tue, 17 May 2016 04:52:29 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=pHVscXeJ5+T6GSBXr32h4vk2ExtQCgVxB/o3Iu7H/lM=; b=lJxWxdAyE5I1FwtJegmVD48pfy 8XZa6QdNipSxAiXhmSNtqTnNqaxJLOPIkEkzded8arZqhhh37wmOt4pcdHvbI+RMbIWNtM2RLmCh5 RG1U6BA37EokWH2+CfFKmQ7/WJLRFL+Hzk8tbbvwRPLd7i305hPcuxzKEsNuddLyBuqSasxIptpOK 1VboyXxser87eF//ULRs8oTf2sa5XHyvF/gbgrdfyNMwD49dC/2fq1HoA9mdrE9U06tfO5x98s1rY taXB8Jm+2xOHYYzkCdaVhgTur/qW/3pIJeHSDcUgqE2SquB6BZkYndv4Jc8cnzlkvCufSBXaM4l5r Q0fmVbIQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:46420 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ajm-000PbF-Cj; Tue, 17 May 2016 09:52:22 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <83zirq3qt4.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 16 May 2016 19:34:15 +0300") Date: Tue, 17 May 2016 09:25:36 +0100 Message-ID: <87posl5bwf.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: kifer@cs.stonybrook.edu, 22295@debbugs.gnu.org, Jim Meyering 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 (/) Eli Zaretskii writes: >> One more, then. Starting with this input: >> >> 1 2 3 4 5 6 >> >> advance to the '2' with 'w', 'dw' to delete the 2, then three '.'s to >> delete the 3, then 4 and 5. >> Then begin to undo with 'u', then '.' to repeat it. Those first two >> work, restoring the 5 and 4. >> However, one more '.' restores both the 3 and the 2. > > Thanks. It now looks like your expectations are close to what Emacs > does by default, whereas Michael said the VI undo is more coarse (and > in the original recipe, it indeed seemed to be that). > > Is it possible to have a more general/formal description of what > 'undo' in VI is supposed to do? E.g., it looks like it has different > granularities wrt insertions and deletions, is that correct? > > You see, when I said this is undocumented, I meant precisely that: the > expected effect of 'undo' in VI is not described, so someone who is > not a VI user doesn't know what to test and how to program that. AFAICT, once you enter insert mode, it squashes all undo boundaries, until you leave again. Unfortunately, outside of insert mode (i.e. in "vi" mode), it uses the default "one per command" emacs undo. > Michael said that this _is_ documented, but the only documentation I > see is comments that describe _what_ they do in terms of Emacs undo > structures, and are full of "rationale" such as "so that things will > be undone properly". I don't see any description of the expected > effect of undoing in different situations, let alone some formal > specification of undo-related requirements. If I missed some > description of how undo is supposed to work in viper, please just > point me there. I guess it's "the same as vi". Although, the undo behaves differently from vim at least: viper has "u" == "undo" and "." == "undo more". VIM just uses repeated "u"'s to achieve the same thing. > Another alternative is to make viper use the default Emacs undo, and > then ask you and other users of viper to tell where the results don't > match your expectations. It could well be that starting with a clean > slate will get us to the goal faster and with less complex code. > > TIA It mostly does use the default Emacs undo, with a bit of weirdness in one mode. Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 04:52:34 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 08:52:34 +0000 Received: from localhost ([127.0.0.1]:54673 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajy-0004TN-7X for submit@debbugs.gnu.org; Tue, 17 May 2016 04:52:34 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:38792) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2aju-0004Sa-1Y for 22295@debbugs.gnu.org; Tue, 17 May 2016 04:52:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=s1WSIHvGdF826diQjWa9NsdhKuXmVxMGIedViaiiYtw=; b=xR8CQR4qeKIu5ogYLrA57mKwkh TODEq+UrNhZDL9iZOmxUiE5yBsNt4l2pGNRkhY3YExgC6VlQGKzAlqXAVukSaktdoJJ+YKe4hY+2r Ubmf+hsVJINC+M3rNorksjs/tBumE379N4VTkqW0ei+Dw8UbUes2LM7/uTGiDK0SNJ5CuRz8MejUW wfQNfcv/h8HMkW4TTQe27392jF58t06rGZ0PGVGVx3UXOzzRbF47YafdtDTaf4DZRzoa5RuxRkQK1 4B+szx+rwaYEvHhI9BaEeYWbeQf3AtNmCQrn+QQZVZdVmKT4g61WBmGPCLPMxuso+KKO4jsSocR+8 ZnO/7JAg==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:46421 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ajn-000Pbg-Ew; Tue, 17 May 2016 09:52:23 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Jim Meyering Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: (Jim Meyering's message of "Mon, 16 May 2016 08:39:15 -0700") Date: Tue, 17 May 2016 09:35:10 +0100 Message-ID: <87k2it5bgh.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Michael Kifer 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 (/) Jim Meyering writes: > On Mon, May 16, 2016 at 5:41 AM, Phillip Lord > wrote: > ... >> I have pushed a first attempt at a fix to branch fix/viper-undo. >> Clearly, it's not finished yet, but I'd like to get your feedback as to >> whether it works; it should fix the example given, but I haven't used >> viper at all, so if it breaks other things I won't know. >> >> I haven't managed to work out exactly why the error is happening -- >> probably though because the timing of the undo-boundary is somewhat >> different, though. With this fix, viper just disables automatic boundary >> addition and adds it's own as necessary, which seems cleaner. > > Thank you. > That does indeed fix the case I mentioned. > Here are some cases where it does not work as expected: > > start with an empty buffer in viper-mode > type 'i 1 2 3 4 5ESC' > type 'F2dw' to delete the 2 and a space. > type 'wdw' to delete the 4 and a space. > > Now, if I were to hit "u" to undo, I would expect that most recent > deletion to be undone and the 4 would reappear. > Then I would hit '.' to undo the deletion of the '2'. Finally one more > '.' would undo the creation of that first line. > However, with the current patches, that first 'u' undoes everything > and leaves me with the empty initial file. > > Another example starting with an empty file: > Create some content via ':r!seq 999|fmt RETURN' > Then remove e.g., "222 " and "444 " via '/222' RET 'dw', > then '/444' RET 'dw'. Now, we expect a single 'u' to restore the '444 ', > yet it undoes everything, leaving an empty buffer. > Hmm... that's probably no different from the first example. > > One more, then. Starting with this input: > > 1 2 3 4 5 6 > > advance to the '2' with 'w', 'dw' to delete the 2, then three '.'s to > delete the 3, then 4 and 5. > Then begin to undo with 'u', then '.' to repeat it. Those first two > work, restoring the 5 and 4. > However, one more '.' restores both the 3 and the 2. How do you ever learn all of these keypresses? I've pushed to fix/viper-undo, and AFAICT, it handles all of these situations. I *thought* viper was essentially switching off Emacs undo-boundary behaviour, but, actually, it only does this very specific circumstances (which it does by adding 'viper, then deleting all the other boundaries upto 'viper). So, the fix I have now just disables the addition of undo-boundaries when 'viper would have been added, and switches them back on again when the boundaries and 'viper would have been removed. This *should* behave the same. As an added bonus, the code is quite a bit simpler. Can you test a bit further for me? Any key sequences you want to send would be gratefully recieved; I'm converting them into kbd-macros and will use them as test cases. So: (execute-kbd-macro [ ?i ?1 ? ?2 ? ?3 ? ?4 ? ?5 escape ?F ?2 ?d ?w ?w ?d ?w ?u ]) in a clean buffer should leave "1 2 4 5". Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 04:52:34 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 08:52:34 +0000 Received: from localhost ([127.0.0.1]:54675 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajy-0004TP-HA for submit@debbugs.gnu.org; Tue, 17 May 2016 04:52:34 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:38795) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2aju-0004Sb-CU for 22295@debbugs.gnu.org; Tue, 17 May 2016 04:52:30 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=RUDw0l6kpk10HRd8hEoDiP9BU+NUur4qHOeGfYttV8Y=; b=oaq26K15RHf6ltxKF6/5h6gWnN VuQpX/CYTYkJaLZ71iRXHQ0mXA5t5HN7HtXSU6nWjmuy8cwH/IsoyLhumdO90pG3Hnq/1Dk4shjPT OGumKiFkXuOEUobSr9tJomg8XYTJB7m3m4F9VWOM1c9JrOalDJTNGdd6lzjV0Xvw/ejYJTMhyNc64 vJ/030B/Aa4ovv6hOFPhUVtZilr7pmigFRBn3Aqti6ggnu+BWpVDrrbRUNZWBvU+1DtD5whVK4QVq 17fNXHf+TVOdXZzcReOMMzKjK4iLSY8d7TcMimkbBorTy1r2XOIMClqnbUMXuIFgQGQaZgfp1CBwn g10R1koQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:46422 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ajo-000Pc4-AB; Tue, 17 May 2016 09:52:24 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <5739FFDD.8080206@cs.stonybrook.edu> (Michael Kifer's message of "Mon, 16 May 2016 13:14:05 -0400") Date: Tue, 17 May 2016 09:46:19 +0100 Message-ID: <87futh5axw.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> <5739FFDD.8080206@cs.stonybrook.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering 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 (/) Michael Kifer writes: >> You see, when I said this is undocumented, I meant precisely that: the >> expected effect of 'undo' in VI is not described, so someone who is >> not a VI user doesn't know what to test and how to program that. > > In VI, an undo is supposed to undo the effect of the previous VI > command. In Emacs terms, each such command usually means several > inserts and deletes, which in Emacs would be undone via a series of > undos. Such behavior is a non-no to a vi user. Actually, by default inserts and (simple) deletes are amalgamated by Emacs and undone in chunks of 20 rather than one at a time. > I was referring to the insertion of a special marker into the undo > list. Obviously, the usual Vi conventions are not documented because > this would require to duplicate the Vi manual. Actually, that would be a useful statement to have. Viper may replicate "vi" behaviour, although I don't have a copy of vi to test it on. It doesn't replicate vim's undo. >> Another alternative is to make viper use the default Emacs undo, and >> then ask you and other users of viper to tell where the results don't >> match your expectations. It could well be that starting with a clean >> slate will get us to the goal faster and with less complex code. > > This would be a non-starter and would cause a mass migration to vim. > The undo would also then be implementation dependent. If, say, "delete > 2 words" is implemented differently from how it is now then it would > be undone via a different sequence of commands. People will get a different sequence of commands if they migrate to vim also! Anyway, I have sent more code upstream. It changes the implementation, but (hopefully) will preserve the currrent behaviour. Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 04:52:35 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 08:52:35 +0000 Received: from localhost ([127.0.0.1]:54677 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajy-0004TX-Ow for submit@debbugs.gnu.org; Tue, 17 May 2016 04:52:35 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:38800) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajv-0004Sd-4u for 22295@debbugs.gnu.org; Tue, 17 May 2016 04:52:31 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=TzxnvNCiZqwoQdpR5XFa0cyIJU0KJiEL9PR0iIwAPKs=; b=nHBmfFz+2u43pfWx9nKLvQ+qMG hSzrR3TuoM4+gfSxpGQV9dQkhK6k1riA+5p5/edZ4lRrXp3WyFAEe9prbh7FsQuarpWcTd+CkL10y o7pSsMIeNKEc4Bw1ZhP6YkZ9fTttrO91nzjZy2qCne/ohMMjOi4Sf6YP1RrGRW/NyAPjiGKawMAZB zEan0ovGiM1QQqv0padd+hUY2oNdy1oH3FOHuKtRmENooxCHavCgtg4lEfXUj+47ndyjYUcYwNXZL UlNxS8PnHWA2VZVadyNjdSYPlVrfAUxQYcJdoMXf3tf+8RKyk0LWA6eqtOQy60oq0wz3M1EP1waVX yGC3+FXw==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:46424 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ajp-000Pci-69; Tue, 17 May 2016 09:52:25 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <83twhx529u.fsf@gnu.org> (Eli Zaretskii's message of "Mon, 16 May 2016 20:41:17 +0300") Date: Tue, 17 May 2016 09:48:20 +0100 Message-ID: <87bn455auj.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> <5739FFDD.8080206@cs.stonybrook.edu> <83twhx529u.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Michael Kifer , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Eli Zaretskii writes: >> Cc: phillip.lord@russet.org.uk, 22295@debbugs.gnu.org >> From: Michael Kifer >> Date: Mon, 16 May 2016 13:14:05 -0400 >> >> > Another alternative is to make viper use the default Emacs undo, and >> > then ask you and other users of viper to tell where the results don't >> > match your expectations. It could well be that starting with a clean >> > slate will get us to the goal faster and with less complex code. >> >> This would be a non-starter and would cause a mass migration to vim. The undo would also then be >> implementation dependent. If, say, "delete 2 words" is implemented differently from how it is now then it would >> be undone via a different sequence of commands. > > Then I guess the current trial-and-error method will have to be the > way. Too bad, I have hard time believing we will be ready with a > complete solution in time for Emacs 25.1, which is what I hoped. I worry about this as well. I still do not understand why my changes have caused this problem; I'd rather not be taking the approach to redoing the implementation of viper during release candidate. Still, if, as I suspect, it's because the timing of boundaries has changed slightly, it's likely to be the only choice. Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 04:52:35 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 08:52:35 +0000 Received: from localhost ([127.0.0.1]:54679 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajz-0004Te-26 for submit@debbugs.gnu.org; Tue, 17 May 2016 04:52:35 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:38805) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ajv-0004Sg-T8 for 22295@debbugs.gnu.org; Tue, 17 May 2016 04:52:32 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=XiiU7TvONUZx/imFrGL3IwTposZvvjBdt5ofSTqtrGI=; b=0dVcM1BPlfFNyNKwOe47FYKkhN IEQlDPE7pDJmr2GXGwp4GnOy2pa77ADJE+bFsCLM5BNWLLmiLygUt3U/P4WvsUl5Skx5h3uMAm2aw 7CHFJQgd43G+wTSr8jI6jsIfTAk911SAMsN16Kt76VZldFQNYCYLBnFiHJvTNhdWKx4RluveYC07V MqiuShY0XfKp3ovnMy35ob+XFEBALLXhKpFlTK20MfuqeUpW94GkdA6kZTvfsriV4mC8CSebqQq3Y 93YU4HbJeClpT3Ze/TCWLNcbQDYPFVU7NK2Cpbv+UhDAt8nEiFVuStpGb2iyokIcNIbxgkuQI3YTK kQthqpJw==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:46425 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ajp-000PdS-VY; Tue, 17 May 2016 09:52:26 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <573A9250.8020504@cs.stonybrook.edu> (Michael Kifer's message of "Mon, 16 May 2016 23:38:56 -0400") Date: Tue, 17 May 2016 09:52:07 +0100 Message-ID: <877fet5ao8.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <57378F7F.2040803@cs.stonybrook.edu> <878tzauyag.fsf@russet.org.uk> <573A9250.8020504@cs.stonybrook.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Michael Kifer writes: > On 05/16/2016 05:50 AM, Phillip Lord wrote: > OK. I don't remember this very clearly but there are cases (which I > don't remember) where viper-mode gets kicked in implicitly for buffers > where the user didn't ask it to and where it is not wanted. Maybe when > one runs emacs in batch mode as a scripting tool. AFAIK, noninteractive *only* happens in batch. Perhaps there are other circumstances. > One can defeat viper-mode in that case using emacs -q, but maybe there > are other cases. > Since I don't remember and since it is not good to have kludges > around, one way to figure it out is to comment out the (not > interactive) part and then see what happens. If and when you see > undesired behavior, then uncomment and document :-) I might well try that on master. We really need some unit tests for viper; it was be a shame if Jim's examples just got archived in the bug tracker. Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 09:59:01 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 13:59:01 +0000 Received: from localhost ([127.0.0.1]:56078 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2fWX-00052w-Ep for submit@debbugs.gnu.org; Tue, 17 May 2016 09:59:01 -0400 Received: from mail-qk0-f170.google.com ([209.85.220.170]:33557) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2fWU-00052j-KT for 22295@debbugs.gnu.org; Tue, 17 May 2016 09:59:00 -0400 Received: by mail-qk0-f170.google.com with SMTP id n63so8766450qkf.0 for <22295@debbugs.gnu.org>; Tue, 17 May 2016 06:58:58 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=g6w31+K8/e1K2JOhEgb/F16hKO//bxv16w0N2tp4jlE=; b=CDP/+Vkr0IGUCi3CeG/ls51s9enbJR6NO/RJ1fCbdRkql9cLC7Fa/hOmdZIY6zXk3A f9oNJlj+1AH+uopsbU0dy/nFzofVSN6B+qWEY147/QLUW0yW5qYgoydIat7QXW3Praql joC4SONRbGBcCzvNORmngHWSgd4+3mYwFepdh+V1HUYHfXszfb3o04KrUQUSzucYdXiN aNzLF+bMzht+t570eB3fy78l2srACfuViaRSGdmcX3o9AAYsPouDDkgf9/eIq2XAwS1n eJDe7MjFj6GGtIUooLv1BExeqbrTtWWO+/oNkKEHakmcnp53vjtxYIpPth2hkXaCamss zFhA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=g6w31+K8/e1K2JOhEgb/F16hKO//bxv16w0N2tp4jlE=; b=kyvmN6FpuGxi79F/O40cLsnR3WRfnj+J9YjfuhJtTufRi2IoAVtmqhyFaMbGdMe7vi UnX0eNOJb2vXxCL8w6e8vERZIS7rELLfmKh3nlgK9X8L0G/d5GHH0dA+Hq8SJmgG4uoQ 8yncvzhoyOPD1l2dgwr/fmtIhMVFtaLxxwiMzYAOxqY1pDhmzvnJ2hHM4+I77HchYc+1 Dk9ABkqZLBV9wu+S+v3TQjWJYVT1dlk3Pp8PDmrkoo3RbVv7dFylVuUD39P0PnFBIdvz LrsOluE7ZmYvNh4S9pWjoku74PT3l7SBzHaVPXGmOnUU4kOtkkJXZqSe/6K92EK9MBB7 8Uvg== X-Gm-Message-State: AOPr4FXhVAuJ1s6PUGebaqfBWSX3OO/ejs398UQcmv1WdwNGuSxEjcio+f3d+1FJczcIuAJU X-Received: by 10.55.79.5 with SMTP id d5mr1665252qkb.30.1463493532751; Tue, 17 May 2016 06:58:52 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id c193sm1306925qkg.43.2016.05.17.06.58.51 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 17 May 2016 06:58:52 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <57378626.8060205@cs.stonybrook.edu> <87vb2g9xx5.fsf@russet.org.uk> <57378F7F.2040803@cs.stonybrook.edu> <878tzauyag.fsf@russet.org.uk> <573A9250.8020504@cs.stonybrook.edu> <877fet5ao8.fsf@russet.org.uk> From: Michael Kifer Message-ID: <573B239B.8040900@cs.stonybrook.edu> Date: Tue, 17 May 2016 09:58:51 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <877fet5ao8.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net 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.4 (/)

On 05/17/2016 04:52 AM, Phillip Lord wrote:
Michael Kifer <kifer@cs.stonybrook.edu> writes:

On 05/16/2016 05:50 AM, Phillip Lord wrote:
OK. I don't remember this very clearly but there are cases (which I
don't remember) where viper-mode gets kicked in implicitly for buffers
where the user didn't ask it to and where it is not wanted. Maybe when
one runs emacs in batch mode as a scripting tool.
AFAIK, noninteractive *only* happens in batch. Perhaps there are other
circumstances.

There must have been a need for this at the time, but it might have been a perceived need only.
Could be that emacs -q was enough, as you say.


One can defeat viper-mode in that case using emacs -q, but maybe there
are other cases.

      
Since I don't remember and since it is not good to have kludges
around, one way to figure it out is to comment out the (not
interactive) part and then see what happens. If and when you see
undesired behavior, then uncomment and document :-)
I might well try that on master. We really need some unit tests for
viper; it was be a shame if Jim's examples just got archived in the bug
tracker.

Sure. From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 10:05:19 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 14:05:19 +0000 Received: from localhost ([127.0.0.1]:56082 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2fcd-0005DT-47 for submit@debbugs.gnu.org; Tue, 17 May 2016 10:05:19 -0400 Received: from mail-qk0-f170.google.com ([209.85.220.170]:33917) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2fcb-0005DG-Qy for 22295@debbugs.gnu.org; Tue, 17 May 2016 10:05:18 -0400 Received: by mail-qk0-f170.google.com with SMTP id r184so8895728qkc.1 for <22295@debbugs.gnu.org>; Tue, 17 May 2016 07:05:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=r2ZcTN4jmvLxTx0o002OD6Bz+keeQf7wspHRNfqXY4c=; b=XAVzEN2fpLXGWrEGEp2MIC1ohzJ7SXu++c5SFp5ZQ8dpsgieBmO2fmN/Gr0CrFkdYs vMAXDDVMmKWW2sv+v/TOaEQ6UlOsxOocOCi4ahDJJrVAvF5UQ4dQIskqAwhZnbIh8xQE 3bzpflU/z5nLXdYZ9hL7KIfZFi8mXDIKiVPzgebziEdyVX2+bKwSP96KQHWaNo0qZYI8 wm98tVsIkK8lE3ujNzB4LvL3dB1Es0dP74ELFDj/j9XTQ3AmhvQtmkf1FZnba4ln5f2H 17tGqPGM00CSalmugahLIkBX+lrnWAxP4AvQvRD5fiPbfZXwRYD2QbRi5tXwu6lZJ+Dw XcwA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=r2ZcTN4jmvLxTx0o002OD6Bz+keeQf7wspHRNfqXY4c=; b=P/8FeJpRHtwGNVK+iEiSDrPUKUWsbZGbCsxVpNl2sRVWtEP4LlHALfeczJAdKRIrjy xq767qR9gCkWJpQaP8ZQtz8UKlOYyrPFTXrzAvex8z6ka8djUDEMZ6Hgke2KV/vP6Voa nK5xhXXj5LDSrkG3dnRbTXCbR00yNIg74EIv8NzsZ5dSiv4e8imfm0s84PJCcXEMNA2h JMYpgSqekJLDavJGiXTKa3k+z9UISA3T0TQ8vQY3V/ZWNiDTrQGT3RYmkqMWLGgvxbav mTGSnDdNnR4tEuV7XiIhtn0wC+zLoVHJnuSDAr9V3dtV7/QhMnl/1BGnIwUMejBM6yLv 6Hdw== X-Gm-Message-State: AOPr4FVeGldSGhgyAe0E+aBb0+BKYj/hjFB2R4YfmsA4LRxr+yQZgxSTIZsM4EhY1039kxqS X-Received: by 10.55.6.141 with SMTP id 135mr1763694qkg.10.1463493912418; Tue, 17 May 2016 07:05:12 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id t81sm1339140qhc.11.2016.05.17.07.05.11 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 17 May 2016 07:05:11 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> <5739FFDD.8080206@cs.stonybrook.edu> <87futh5axw.fsf@russet.org.uk> From: Michael Kifer Message-ID: <573B2517.4010102@cs.stonybrook.edu> Date: Tue, 17 May 2016 10:05:11 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.7.2 MIME-Version: 1.0 In-Reply-To: <87futh5axw.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 8bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering 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.4 (/)

On 05/17/2016 04:46 AM, Phillip Lord wrote:
Michael Kifer <kifer@cs.stonybrook.edu> writes:

You see, when I said this is undocumented, I meant precisely that: the
expected effect of 'undo' in VI is not described, so someone who is
not a VI user doesn't know what to test and how to program that.
In VI, an undo is supposed to undo the effect of the previous VI
command. In Emacs terms, each such command usually means several
inserts and deletes, which in Emacs would be undone via a series of
undos. Such behavior is a non-no to a vi user.

Actually, by default inserts and (simple) deletes are amalgamated by
Emacs and undone in chunks of 20 rather than one at a time.

Yes, but this is semantically meaningless for vi.


I was referring to the insertion of a special marker into the undo
list. Obviously, the usual Vi conventions are not documented because
this would require to duplicate the Vi manual.
Actually, that would be a useful statement to have. Viper may replicate
"vi" behaviour, although I don't have a copy of vi to test it on. It
doesn't replicate vim's undo.

I used to have (may still have) access to Solaris where the One True Vi could still be found :-)
True, vim undo is slightly different. But I am not sure there was a vim back when viper started.
Besides, the '.' came from a precursor of viper, introduced by someone else, so I am not responsible :-)
After all these years using it I prefer the viper behavior.


Another alternative is to make viper use the default Emacs undo, and
then ask you and other users of viper to tell where the results don't
match your expectations. It could well be that starting with a clean
slate will get us to the goal faster and with less complex code.
This would be a non-starter and would cause a mass migration to vim.
The undo would also then be implementation dependent. If, say, "delete
2 words" is implemented differently from how it is now then it would
be undone via a different sequence of commands.
People will get a different sequence of commands if they migrate to vim
also!

Anyway, I have sent more code upstream. It changes the implementation,
but (hopefully) will preserve the currrent behaviour.

Cool, thanks!

--

       --- michael

 

From debbugs-submit-bounces@debbugs.gnu.org Tue May 17 18:37:36 2016 Received: (at 22295) by debbugs.gnu.org; 17 May 2016 22:37:36 +0000 Received: from localhost ([127.0.0.1]:56336 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ncO-0002kn-99 for submit@debbugs.gnu.org; Tue, 17 May 2016 18:37:36 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:49981) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2ncM-0002ka-As for 22295@debbugs.gnu.org; Tue, 17 May 2016 18:37:34 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=uMJl+C8NId2XhvwTbfSaiaNS6SAhvXHrzgT8JKYltzw=; b=y0hv05VMASvg0VBeqi2QvSpGcJ Xq9ZD468MyGxgeUzHPGkZP8wZebihz7w9Un3bpaxrdbVaNuobXjiAVpRwFYT9ci9VYmFdSCHu+9OC XJqsxzQEBvM8eqWxo+ltMZtDd8VsMG81Qe4whlYGWkjidZ1i443qV4SqT5W0z5tVNAlxvVdWBGWGR 7K8wZGS8pOXZMtMEHRt6NoDfqsfuIQVtJOWPi0pqyqLUq/ngYEo0kHIRSgQovN1qccd/gdXnIHuO4 3OW13184uSNSqQbz7TVf+Wr/gcw8wPQK5UftqrVRSh2Yx8hlxGSkAjKhiygarrFNlxqt5gXXoVGV3 PYZn70sg==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:52111 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2ncG-002mQC-4p; Tue, 17 May 2016 23:37:28 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <573B2517.4010102@cs.stonybrook.edu> (Michael Kifer's message of "Tue, 17 May 2016 10:05:11 -0400") Date: Tue, 17 May 2016 23:35:32 +0100 Message-ID: <87posk8g97.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <83zirq3qt4.fsf@gnu.org> <5739FFDD.8080206@cs.stonybrook.edu> <87futh5axw.fsf@russet.org.uk> <573B2517.4010102@cs.stonybrook.edu> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering 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 (/) Michael Kifer writes: > I used to have (may still have) access to Solaris where the One True > Vi could still be found :-) True, vim undo is slightly different. But > I am not sure there was a vim back when viper started. Besides, the > '.' came from a precursor of viper, introduced by someone else, so I > am not responsible :-) After all these years using it I prefer the > viper behavior. Trying to preserve the old behaviour (i.e. before I broke it!) is the best I can offer then! > Anyway, I have sent more code upstream. It changes the implementation, > but (hopefully) will preserve the currrent behaviour. > > Cool, thanks! Please do send me any test cases that do not work. I've got ert unit tests working now, so I can use any set of keypresses on a clean buffer with the expected output (preferable as a keyboard macro, but I can convert a description!). Phil From debbugs-submit-bounces@debbugs.gnu.org Wed May 18 05:16:35 2016 Received: (at 22295) by debbugs.gnu.org; 18 May 2016 09:16:35 +0000 Received: from localhost ([127.0.0.1]:56532 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2xal-0000sE-2O for submit@debbugs.gnu.org; Wed, 18 May 2016 05:16:35 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:49045) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b2xai-0000s0-LC for 22295@debbugs.gnu.org; Wed, 18 May 2016 05:16:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=TEs2fIfztqgl76Y1zRuvk6/bDzfgsr1xKSU4RMmkzi4=; b=O4ZzTCB82N6EADGfp1qoxQq/TN mfj+Izsj2/hyjFWY/Dtk5Tep+YuDEyvvlFJa3tSnhkC3stKqK4JzCgAlWtFoXDGNCqbGLWHw4UuEX zT8u55gfuoIotMZ5FM7tZFTRe0n4pRa777pTv1vcZtr+K2Fcyn6UrUdoJT41ds5JqHZIt1//Fqpbj LO+Px2Cb3e8iO55uunhaE84XfOyhsCPnaeobFD5WFxpLNoafZAbcpDq2fedm8/n82vustccMnCEM8 XZ+GNPNkL0HBcDTcNYSFZ28Ck575ahjuT6wcb8TNvx6sUzYDwABCqWdBEp+/mWU3GXrXia92PvrOO 26Uga5tw==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:32701 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b2xac-004L7a-EM; Wed, 18 May 2016 10:16:26 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Jim Meyering Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: (Jim Meyering's message of "Tue, 17 May 2016 06:44:28 -0700") Date: Wed, 18 May 2016 10:15:28 +0100 Message-ID: <87wpmrvia7.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@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: 0.0 (/) Jim Meyering writes: > Thank you! > I've updated and built with that. It is much better. > So far, I have noticed only one anomaly: > > Starting with an empty file, add three lines of text, terminating each > addition with ESC. > E.g., i1ESC then o2ESC and o3ESC > Then, "u.." should restore to the original, empty file. > The first "u" works fine and removes the "3" line, but the following > "." has no visual effect, and I have to hit it again to remove the > "2". Same story for the "1". Yeah, I was adding two undo-boundaries to rather than just one. For no readily apparent reason I was directly changing the buffer-undo-list, rather than calling undo-boundary. Anyway, that should be fixed. Phil From debbugs-submit-bounces@debbugs.gnu.org Wed May 18 11:59:23 2016 Received: (at 22295) by debbugs.gnu.org; 18 May 2016 15:59:23 +0000 Received: from localhost ([127.0.0.1]:57113 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b33sZ-0003Su-Eq for submit@debbugs.gnu.org; Wed, 18 May 2016 11:59:23 -0400 Received: from mail-oi0-f51.google.com ([209.85.218.51]:36176) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b33sX-0003Sg-Mc for 22295@debbugs.gnu.org; Wed, 18 May 2016 11:59:22 -0400 Received: by mail-oi0-f51.google.com with SMTP id x201so83803770oif.3 for <22295@debbugs.gnu.org>; Wed, 18 May 2016 08:59:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=/orwFmQDuV92Rb4NJBtAmAb68PHkXgiIHfHXLCO8wTc=; b=K9zJX5QcHtsu/3xN5vu54usotgDejUQfsu2fRAV79hADQVxB8FB9wpjbhL22wwAMPF 64AMdJE+ApoYjzou0VlB3Oe8f3bt7g8uJ7RTfACl8BE2IIJa7bOh0d72ebzML3D/vIEN XFLUqzcB3yIFfl7JNJ5FSsdCkia+ZCl66axVBh64p9lMpy0ZKRrw+LrMZVl5qWxDmJ4n zHr/AhUCe99d3M71IGXO+GhCHeuB4xhmy1gTIjSGz0M8CsJBg8MAx+ahuC+UD7WflYLs 9vMM33uuRCAPhITGDK+s+4hoc56vUohc7DfCc7Z0WyzW9MZHCrI/HWm+Wp/XkfmBRQVw YRWg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=/orwFmQDuV92Rb4NJBtAmAb68PHkXgiIHfHXLCO8wTc=; b=KfsANBk5JGutCjPi7QlL9AQvcOVyCE+B8oRX0gYNnKNZz2m5OCzaDHgHVttHH3l370 GcW0ISMXDCDgzv1e7PZtsbD75jjny3e7MAYpCzDhnxsnRZqu9GZgcYUZnQddOm+bqjSo LbnA/q49ZIvGDs52CBOmd6HaKo0TIwvO3D9Nzez9QhAsU9hGDsbk3AKJj4A8kIKDdZDI T16Q49lmCSB5vHeUx4oUJYL9ha/IS4OZEEW6gQ5Ij5nWajwn0ccsbcdl7ZYoIzG+Iu5y wZ1zTRoRXv6ntF+89OaHcyWJQg3MLyIUGAvQTVom279zCXaKhz5EFR3qq+DEzOD5ZHkf maWQ== X-Gm-Message-State: AOPr4FW9y6gRJUcm0bSSeeoRzdPcFrrJVNLHaSj0iHa/S+3kmQNI0W/o4Z5XgJBhaNQasTA1V/to4rcuVCcc4Q== X-Received: by 10.157.3.117 with SMTP id 108mr2324374otv.172.1463587155012; Wed, 18 May 2016 08:59:15 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.175.193 with HTTP; Wed, 18 May 2016 08:58:55 -0700 (PDT) In-Reply-To: <87wpmrvia7.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> From: Jim Meyering Date: Wed, 18 May 2016 08:58:55 -0700 X-Google-Sender-Auth: ubQMvUKDuk5p799t3etlTOPmJhE Message-ID: Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@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: -0.5 (/) On Wed, May 18, 2016 at 2:15 AM, Phillip Lord wrote: > Yeah, I was adding two undo-boundaries to rather than just one. For no > readily apparent reason I was directly changing the buffer-undo-list, > rather than calling undo-boundary. > > Anyway, that should be fixed. Confirmed. Thanks again for fixing all of that. From debbugs-submit-bounces@debbugs.gnu.org Wed May 18 17:42:19 2016 Received: (at 22295) by debbugs.gnu.org; 18 May 2016 21:42:19 +0000 Received: from localhost ([127.0.0.1]:57384 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b39ER-0008Ou-2s for submit@debbugs.gnu.org; Wed, 18 May 2016 17:42:19 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:47944) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b39EP-0008Oe-Ms for 22295@debbugs.gnu.org; Wed, 18 May 2016 17:42:18 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=HQ9g4K+vYlizLlwO9sPU+riM7rKwK6AtBGwOJCRinZs=; b=ShtnBfn7nqynWuRzINB7PCXQI0 SP6IUoy0ym/XIPbuJAB76h3iKUwBo/MvzvdGOSH/bSSUPyjmWDOA3kQTRyuEaCRP2fadXXpKe3eoN d6UiJ6lESqs18C+nraNF4NX8g+S9gJRErEzyvB30UQExWQSxUskoeAn5bqfbgd10U5/UeJHXULv38 JPw8syWY+z2kHpFC902nWq4Y3XjWvyvqWAabHiwxbSHlCTyFLgHt5vnsJgTvQJDJG2Lr98iBwMJSp ZtRuo7VtcNBsn4qp0fE3+32A2cR74FKn2raaiRcZApEJYVTmZkxkGz2kEddX0qe6FOF3BVm3IZwcu w3JET8AQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:49641 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b39EJ-001vZ0-F2; Wed, 18 May 2016 22:42:11 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Jim Meyering Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: (Jim Meyering's message of "Wed, 18 May 2016 08:58:55 -0700") Date: Wed, 18 May 2016 22:42:04 +0100 Message-ID: <8737pfavrn.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.93 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: John Wiegley , Eli Zaretskii , 22295@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: 0.0 (/) Jim Meyering writes: > On Wed, May 18, 2016 at 2:15 AM, Phillip Lord > wrote: >> Yeah, I was adding two undo-boundaries to rather than just one. For no >> readily apparent reason I was directly changing the buffer-undo-list, >> rather than calling undo-boundary. >> >> Anyway, that should be fixed. > > Confirmed. > Thanks again for fixing all of that. Let me know if you find anything else. John, this is a reasonably extensive change now -- affecting both simple.el, but also a big rework of viper undo. To Emacs-25 or not to Emacs-25 that is the question? Phil From debbugs-submit-bounces@debbugs.gnu.org Wed May 18 21:10:04 2016 Received: (at 22295) by debbugs.gnu.org; 19 May 2016 01:10:04 +0000 Received: from localhost ([127.0.0.1]:57446 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3CTU-0004sE-Ft for submit@debbugs.gnu.org; Wed, 18 May 2016 21:10:04 -0400 Received: from mail-oi0-f65.google.com ([209.85.218.65]:35078) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3CTS-0004re-4B for 22295@debbugs.gnu.org; Wed, 18 May 2016 21:10:02 -0400 Received: by mail-oi0-f65.google.com with SMTP id w198so13367464oiw.2 for <22295@debbugs.gnu.org>; Wed, 18 May 2016 18:10:02 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=1L6YahdL79nxOTgj3qLCu0XIWiW0bKemmCUVyrP8h30=; b=Q6PlalTDL+ER496XhR042iPgStAqGD1gM6UsCQ/r4kvNjXob0rAd/ujA8nkxYLU+MM EZfDbwSaD/h3x3cV2auEeSdyueyy5Jwj/gt6W0Bqv0hCU73HV/YpVfVIQcrm108l6Xmb 2SNv0zBjyHgpmQ5sXAK8PUpCrgQRbGzdofP3rnbxdvygH0qrgSojMGGJ8Wde1pHA4MYV ScBo2UPvid0z399m6qY/ykPLc2R1yc05pXF3giRvrqYFfrmxmUcH+nqBYy4a2fbqEzEb YndnLNlyV+coFPOhmmiWL7fhbtosnTQ/HbzsxbqGyGp0PQZekYcxXV59pcN4y/WCRIXt ysCA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=1L6YahdL79nxOTgj3qLCu0XIWiW0bKemmCUVyrP8h30=; b=gHD2qz5ve3bLPbMqfMOSp1z/6rzeFNVyMNoAC0jf+HZLThPswcvFMd1/uA/yXVsZBH 54fSkwJsBTOLv8dHplacwmNazt/MUhl3UPt286RV81A5eyym3if6PfXJCWDRyN/Jv5Pp aJcystWIN981NyKXw8Qcyzvcaw24iiG1+uiNILKBs7JwzeROgYcgS5LNOlThX5U6f7XS zy27omiph9FMXjzqKGTKqgxojUOAzjMzq8EUUna1F8RF2jA+qAbvc/xKStuCgENs4Js5 +28+TOALz1DoUFJ8bYQIj2eTbicxT2WzZE803JRBPKmI2Q8kfEpyN+YMO2lblKuiw5tN zzTw== X-Gm-Message-State: AOPr4FVX4qMnwUMTfrtbBxIemg46V6dq8P9Xkn5DCRvjk2gXSwnlPpiYOcJb3LMuzRSmvCz0UamfTZN/pDGe1g== X-Received: by 10.202.102.36 with SMTP id a36mr5375518oic.122.1463620196684; Wed, 18 May 2016 18:09:56 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.175.193 with HTTP; Wed, 18 May 2016 18:09:36 -0700 (PDT) In-Reply-To: <8737pfavrn.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> From: Jim Meyering Date: Wed, 18 May 2016 18:09:36 -0700 X-Google-Sender-Auth: Rui-ey-kgVyIL__ETXvwWKvw7zg Message-ID: Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 22295 Cc: John Wiegley , Eli Zaretskii , 22295@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: -0.5 (/) On Wed, May 18, 2016 at 2:42 PM, Phillip Lord wrote: > Jim Meyering writes: > >> On Wed, May 18, 2016 at 2:15 AM, Phillip Lord >> wrote: >>> Yeah, I was adding two undo-boundaries to rather than just one. For no >>> readily apparent reason I was directly changing the buffer-undo-list, >>> rather than calling undo-boundary. >>> >>> Anyway, that should be fixed. >> >> Confirmed. >> Thanks again for fixing all of that. > > > Let me know if you find anything else. > > John, this is a reasonably extensive change now -- affecting both > simple.el, but also a big rework of viper undo. > > To Emacs-25 or not to Emacs-25 that is the question? Perspective of a viper-mode user: including this fix in Emacs-25 is a must: without it, any existing viper-mode user will very quickly notice how "undo" appears to destroy data, seemingly unrecoverably, since "redo" does not restore it -- they'd have to go look in emacs' yank buffer. From debbugs-submit-bounces@debbugs.gnu.org Fri May 20 06:00:34 2016 Received: (at 22295) by debbugs.gnu.org; 20 May 2016 10:00:34 +0000 Received: from localhost ([127.0.0.1]:58603 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3hEP-0005rA-Ri for submit@debbugs.gnu.org; Fri, 20 May 2016 06:00:34 -0400 Received: from eggs.gnu.org ([208.118.235.92]:59961) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3hEM-0005qv-4A for 22295@debbugs.gnu.org; Fri, 20 May 2016 06:00:32 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b3hEC-0007jf-LU for 22295@debbugs.gnu.org; Fri, 20 May 2016 06:00:24 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:47030) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b3hE6-0007il-Bw; Fri, 20 May 2016 06:00:14 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3019 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b3hE4-0005uZ-Ao; Fri, 20 May 2016 06:00:12 -0400 Date: Fri, 20 May 2016 13:00:20 +0300 Message-Id: <83iny982x7.fsf@gnu.org> From: Eli Zaretskii To: Jim Meyering In-reply-to: (message from Jim Meyering on Wed, 18 May 2016 18:09:36 -0700) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: jwiegley@gmail.com, 22295@debbugs.gnu.org, phillip.lord@russet.org.uk 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: Jim Meyering > Date: Wed, 18 May 2016 18:09:36 -0700 > Cc: 22295@debbugs.gnu.org, John Wiegley , Eli Zaretskii > > On Wed, May 18, 2016 at 2:42 PM, Phillip Lord > wrote: > > Jim Meyering writes: > > > >> On Wed, May 18, 2016 at 2:15 AM, Phillip Lord > >> wrote: > >>> Yeah, I was adding two undo-boundaries to rather than just one. For no > >>> readily apparent reason I was directly changing the buffer-undo-list, > >>> rather than calling undo-boundary. > >>> > >>> Anyway, that should be fixed. > >> > >> Confirmed. > >> Thanks again for fixing all of that. > > > > > > Let me know if you find anything else. > > > > John, this is a reasonably extensive change now -- affecting both > > simple.el, but also a big rework of viper undo. > > > > To Emacs-25 or not to Emacs-25 that is the question? > > Perspective of a viper-mode user: including this fix in Emacs-25 is a > must: without it, any existing viper-mode user will very quickly > notice how "undo" appears to destroy data, seemingly unrecoverably, > since "redo" does not restore it -- they'd have to go look in emacs' > yank buffer. FWIW, I think this should go to emacs-25, since (a) the changes affect only viper-mode, and (b) users of that mode will be most unhappy without these changes. However, we should add comments to viper-cmd.el that document the special handling of 'undo' by viper-mode, and how that interacts with the core 'undo' functionalities. We should also comment in simple.el that undo-auto-disable-boundaries is used by viper-mode, and document that variable in the ELisp manual. Phillip, can you add these bits to the branch, please? Thanks. From debbugs-submit-bounces@debbugs.gnu.org Fri May 20 07:46:27 2016 Received: (at 22295) by debbugs.gnu.org; 20 May 2016 11:46:27 +0000 Received: from localhost ([127.0.0.1]:58626 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3ist-0002cU-Bf for submit@debbugs.gnu.org; Fri, 20 May 2016 07:46:27 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:57722) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3isn-0002Tk-4a for 22295@debbugs.gnu.org; Fri, 20 May 2016 07:46:26 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=Zf6y9qMRwB1tlZOfyHqnsuKy3a4uRnf8G+k5w7R9GVE=; b=2eXIH8Q10yJfON3uyUPU7ARCPQ l/4JGrWarAQpK5qDHYgtpt8w9PHl0xoKuBNIdEcttwXUyrSjQw7eqYUe6Qq+Q0xrwV8TxAGj2BpzV h1H+wyKDKKwp325AHZR0qFtsjjzYgwJIULVx2K/0F4maffdHmnxsUddLg43OHp9CXZKBYYh39rRY3 kL+d3a9M3449GqYZ903W8F3dEiig3J6njO6lgwnczbFGCJxy4XMpgKGooSnbJH3/w099s3L9gaFCp S5QUaQH/gsMX2YugVrYHqIKno045XEck2UprDlPNmM/MUYOOI6xdceTep4KZeEHIoYndp8lFRcqv7 boWjYjcQ==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:34109 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b3isg-003n5t-Oa; Fri, 20 May 2016 12:46:14 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> Date: Fri, 20 May 2016 12:46:14 +0100 In-Reply-To: <83iny982x7.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 20 May 2016 13:00:20 +0300") Message-ID: <87r3cx6jg9.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: jwiegley@gmail.com, 22295@debbugs.gnu.org, Jim Meyering 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 (/) Eli Zaretskii writes: > FWIW, I think this should go to emacs-25, since (a) the changes affect > only viper-mode, and (b) users of that mode will be most unhappy > without these changes. Not quite true. I've changed simple.el. The change is minimal, and just allows downstream developers to disable the auto-undo boundary. However, if a developer does do this in a bad way, then Emacs does produce pretty intrusive "this is probably a bug" warnings. > However, we should add comments to viper-cmd.el that document the > special handling of 'undo' by viper-mode, and how that interacts with > the core 'undo' functionalities. We should also comment in simple.el > that undo-auto-disable-boundaries is used by viper-mode, and document > that variable in the ELisp manual. Phillip, can you add these bits to > the branch, please? Oh, yeah, sorry forgot the manual. I updated most of the rest last night. I think that the branch is ready, bar squashing. Phil From debbugs-submit-bounces@debbugs.gnu.org Fri May 20 09:32:19 2016 Received: (at 22295) by debbugs.gnu.org; 20 May 2016 13:32:19 +0000 Received: from localhost ([127.0.0.1]:58697 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3kXL-0005Vz-IJ for submit@debbugs.gnu.org; Fri, 20 May 2016 09:32:19 -0400 Received: from eggs.gnu.org ([208.118.235.92]:38943) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b3kXJ-0005Vm-GS for 22295@debbugs.gnu.org; Fri, 20 May 2016 09:32:18 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b3kXD-0002Sk-Hv for 22295@debbugs.gnu.org; Fri, 20 May 2016 09:32:12 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_20,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:49368) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b3kX9-0002SD-P3; Fri, 20 May 2016 09:32:07 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:3195 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b3kX6-0003H9-QR; Fri, 20 May 2016 09:32:06 -0400 Date: Fri, 20 May 2016 16:32:07 +0300 Message-Id: <83futc97oo.fsf@gnu.org> From: Eli Zaretskii To: phillip.lord@russet.org.uk (Phillip Lord), John Wiegley In-reply-to: <87r3cx6jg9.fsf@russet.org.uk> (phillip.lord@russet.org.uk) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> <87r3cx6jg9.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, jim@meyering.net 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: phillip.lord@russet.org.uk (Phillip Lord) > Cc: Jim Meyering , 22295@debbugs.gnu.org, jwiegley@gmail.com > Date: Fri, 20 May 2016 12:46:14 +0100 > > Eli Zaretskii writes: > > > FWIW, I think this should go to emacs-25, since (a) the changes affect > > only viper-mode, and (b) users of that mode will be most unhappy > > without these changes. > > Not quite true. I've changed simple.el. I've seen the change, of course. As long as only viper-mode uses that variable, I see no danger. > > However, we should add comments to viper-cmd.el that document the > > special handling of 'undo' by viper-mode, and how that interacts with > > the core 'undo' functionalities. We should also comment in simple.el > > that undo-auto-disable-boundaries is used by viper-mode, and document > > that variable in the ELisp manual. Phillip, can you add these bits to > > the branch, please? > > Oh, yeah, sorry forgot the manual. I updated most of the rest last > night. I think that the branch is ready, bar squashing. Thanks. John, we are waiting for your verdict. From debbugs-submit-bounces@debbugs.gnu.org Mon May 23 02:49:29 2016 Received: (at 22295) by debbugs.gnu.org; 23 May 2016 06:49:29 +0000 Received: from localhost ([127.0.0.1]:33363 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4jg8-0003Dj-W9 for submit@debbugs.gnu.org; Mon, 23 May 2016 02:49:29 -0400 Received: from mail-oi0-f41.google.com ([209.85.218.41]:36783) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4jg4-0003DM-6X for 22295@debbugs.gnu.org; Mon, 23 May 2016 02:49:24 -0400 Received: by mail-oi0-f41.google.com with SMTP id j1so25747598oih.3 for <22295@debbugs.gnu.org>; Sun, 22 May 2016 23:49:24 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:cc:subject:in-reply-to:date:message-id:references :user-agent:mime-version; bh=p6k/RdwATy/S44idHTSZhS/Fw6E6VbwjgltJnHwqH/o=; b=yzVch5k3N/udGMkNHWPIupdSc941gDAAjrZkt1zfNO50uMsoVCASQQIwSCuOBPwBwP YXXF/lbouAjaxzUrSR0helPAlW8jmr/rJwFp/QrZG9szdS91HtzXLvSsD3JjFx5O08M+ pDOzuZ3t6stmn0ruj2Or+vIxJkPL6NxbGBjsSlY9NiM7uwjaAe8mBGy2ZuCvewJp6NIl 6osMpICYNYc2sev4xjo+6seHS1v3nHulpkKL1qhZ/OVVEhW4hSYLRteKB28FYdlOsnPL /Ody+7oijnRWR+RaSYUHsVVCQIDsbUtVyW5qrNwtY5C7fqOcpcA3l61915+FZFIxAeOB jVVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:in-reply-to:date:message-id :references:user-agent:mime-version; bh=p6k/RdwATy/S44idHTSZhS/Fw6E6VbwjgltJnHwqH/o=; b=BAelkvkM3/lSWq3U/+WoJ7MV4bQLdUOteecB/1QbWaDvSTw3pwguqA+dYNdwI7ZOM8 9P47oeoVk8hhlYy9YM1HLQz8+X7MxZmKFw25DzCJkis31+6Rt4lvSy5txahO5Mr8HVAB JyqEmMrfDjewY/ZhLBP9vIibP589L0eegHt6ZFJyf0CkBy5IedBdYXCMNL5ToIV+OokF n8tZxOlFwEovyYJzEFjQ8TcweIizYnUG7bOwcrA7/AiXTKBw7lYgf6kJaa2gW4dRw9oR nqqRNoa/C7ADIml/GWRNLhlN5i+HApM9IRSmDzytofLqK/jTPxl2/4siym2+5h+unYPq vmow== X-Gm-Message-State: AOPr4FW1wnkHICPPzNBTSi9bpkPF+q3/QqlGJmHILDHaDbgtiGW+tq1nwEZF4WTKSG+HRA== X-Received: by 10.157.10.20 with SMTP id 20mr7569787otg.13.1463986157564; Sun, 22 May 2016 23:49:17 -0700 (PDT) Received: from Vulcan.local (76-234-68-79.lightspeed.frokca.sbcglobal.net. [76.234.68.79]) by smtp.gmail.com with ESMTPSA id 78sm8909451otc.24.2016.05.22.23.49.15 (version=TLS1 cipher=AES128-SHA bits=128/128); Sun, 22 May 2016 23:49:16 -0700 (PDT) From: John Wiegley X-Google-Original-From: "John Wiegley" Received: by Vulcan.local (Postfix, from userid 501) id 1E19E5BA184; Sun, 22 May 2016 23:49:15 -0700 (PDT) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <83iny982x7.fsf@gnu.org> (Eli Zaretskii's message of "Fri, 20 May 2016 13:00:20 +0300") Date: Sun, 22 May 2016 23:45:58 -0700 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> User-Agent: Gnus/5.130014 (Ma Gnus v0.14) Emacs/25.0.94 (darwin) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, Jim Meyering , phillip.lord@russet.org.uk 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.7 (/) >>>>> Eli Zaretskii writes: > FWIW, I think this should go to emacs-25, since (a) the changes affect only > viper-mode, and (b) users of that mode will be most unhappy without these > changes. I agree, Eli, let's push this to emacs-25. -- John Wiegley GPG fingerprint = 4710 CF98 AF9B 327B B80F http://newartisans.com 60E1 46C4 BD1A 7AC1 4BA2 From debbugs-submit-bounces@debbugs.gnu.org Mon May 23 09:26:06 2016 Received: (at 22295) by debbugs.gnu.org; 23 May 2016 13:26:06 +0000 Received: from localhost ([127.0.0.1]:33571 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4prx-0005cI-TS for submit@debbugs.gnu.org; Mon, 23 May 2016 09:26:06 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:54213) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b4prv-0005bs-GP for 22295@debbugs.gnu.org; Mon, 23 May 2016 09:26:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=FR7ZbwnTijHEAUquz2glj90/yyuy+d07Wzz+9wjy1p4=; b=jO2futnv2NfY/aeLsbNxQpaD0K rzgNy+uTRor+0WrCSTSp0uU4Y40Geub3eT3jRMkp2TpuOlUglghNQ4PlbxwUB+xmcAXH6JxwgIChK aZd7sTg/dU4AKE2MvR0xyZ2RPI/OrgYEhuIfLoddhg8QguzwFNkqiI1IHyvkU6pA6zv77FYx6UeDw Jw1W2G0DTJ7WVcdIBlyGRPKp+EtUV1+8eVeVT3JY0CsJw/pXsuEZYQ7Xe5NZtVOsm3YxK2Ara2M5u /nzHPdY4dClHWB6IpT15q9JznTTMr+uKNiypC2LmL1fGymJqWVCKPrFt1BEipHyE6S/4Hein67m6W TefNGiLA==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:32604 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b4pro-0018QL-SJ; Mon, 23 May 2016 14:25:56 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: John Wiegley Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: (John Wiegley's message of "Sun, 22 May 2016 23:45:58 -0700") Date: Mon, 23 May 2016 14:23:44 +0100 Message-ID: <87shx8x5zz.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering 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 (/) John Wiegley writes: >>>>>> Eli Zaretskii writes: > >> FWIW, I think this should go to emacs-25, since (a) the changes affect only >> viper-mode, and (b) users of that mode will be most unhappy without these >> changes. > > I agree, Eli, let's push this to emacs-25. All done. I've added my tests as well -- should have done that in the same commit I guess, but forgot. Hope that's okay on emacs-25. Phil From debbugs-submit-bounces@debbugs.gnu.org Tue May 24 11:43:42 2016 Received: (at 22295) by debbugs.gnu.org; 24 May 2016 15:43:42 +0000 Received: from localhost ([127.0.0.1]:36585 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5EUg-0005lj-8k for submit@debbugs.gnu.org; Tue, 24 May 2016 11:43:42 -0400 Received: from eggs.gnu.org ([208.118.235.92]:55137) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5EUe-0005lX-BR for 22295@debbugs.gnu.org; Tue, 24 May 2016 11:43:40 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b5EUU-0001Gt-W6 for 22295@debbugs.gnu.org; Tue, 24 May 2016 11:43:35 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:60797) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b5EUU-0001Ge-SI; Tue, 24 May 2016 11:43:30 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:4388 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b5EUS-00006s-Jo; Tue, 24 May 2016 11:43:29 -0400 Date: Tue, 24 May 2016 18:43:26 +0300 Message-Id: <83h9dn4g2p.fsf@gnu.org> From: Eli Zaretskii To: phillip.lord@russet.org.uk (Phillip Lord) In-reply-to: <87shx8x5zz.fsf@russet.org.uk> (phillip.lord@russet.org.uk) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> <87shx8x5zz.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: jwiegley@gmail.com, 22295@debbugs.gnu.org, jim@meyering.net 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: phillip.lord@russet.org.uk (Phillip Lord) > Cc: Eli Zaretskii , Jim Meyering , 22295@debbugs.gnu.org > Date: Mon, 23 May 2016 14:23:44 +0100 > > John Wiegley writes: > > >>>>>> Eli Zaretskii writes: > > > >> FWIW, I think this should go to emacs-25, since (a) the changes affect only > >> viper-mode, and (b) users of that mode will be most unhappy without these > >> changes. > > > > I agree, Eli, let's push this to emacs-25. > > > All done. Thanks. Any reason you didn't close the bug? From debbugs-submit-bounces@debbugs.gnu.org Wed May 25 08:52:58 2016 Received: (at 22295) by debbugs.gnu.org; 25 May 2016 12:52:58 +0000 Received: from localhost ([127.0.0.1]:37071 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5YJ0-0003r7-GZ for submit@debbugs.gnu.org; Wed, 25 May 2016 08:52:58 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:33733) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5YIw-0003qc-KT for 22295@debbugs.gnu.org; Wed, 25 May 2016 08:52:55 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:References:Message-ID :Date:In-Reply-To:Subject:Cc:To:From; bh=anChqAgb6d/EAPM37RN1TJGStvnN7OsARK+MuctKQEY=; b=jAb3EYBaKnhZPK+SzlBE6a6tRN Ye6Mlf63qS82sIu3HU3U5/+hRZ8/ipSqAlYvVc1mB5/rBeL0C2BsUDeyRKoVZNULRGlGNYS4XV32v Xmnty/g+5R3AqkU++R5GWcctcsj+0CcbnVxL/m5JKY8DETsOgxsdA+wZZEQPlArJHHN60Lbt22qB9 p/Z+Mr/4/oUUOpUiESuZbNW4kX7RtbEz5XVOpWT2Z6aTJby6iGD9Acuz8I3mG4gTT1DhhJjEugNYd duI3Sy8UUkADVPxUMUwTKNDgVJKBO/4jbLtgAj2pHyzDXolqD052c7oojm6AFgS/lPV1zdfIZ1CHg 7EUxOIsw==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:36690 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b5YIq-003dAp-J3; Wed, 25 May 2016 13:52:48 +0100 From: Phillip Lord To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 In-Reply-To: <83h9dn4g2p.fsf@gnu.org> (Eli Zaretskii's message of "Tue, 24 May 2016 18:43:26 +0300") Date: Wed, 25 May 2016 13:43:22 +0100 Message-ID: <87twhmgvf9.fsf@russet.org.uk> References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> <87shx8x5zz.fsf@russet.org.uk> <83h9dn4g2p.fsf@gnu.org> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: jwiegley@gmail.com, 22295@debbugs.gnu.org, jim@meyering.net 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 (/) Eli Zaretskii writes: >> >> FWIW, I think this should go to emacs-25, since (a) the changes affect only >> >> viper-mode, and (b) users of that mode will be most unhappy without these >> >> changes. >> > >> > I agree, Eli, let's push this to emacs-25. >> >> >> All done. > > Thanks. > > Any reason you didn't close the bug? Closed now. (If I have done it right -- if I have done it wrong, tell me!) Phil From debbugs-submit-bounces@debbugs.gnu.org Wed May 25 08:52:55 2016 Received: (at control) by debbugs.gnu.org; 25 May 2016 12:52:55 +0000 Received: from localhost ([127.0.0.1]:37069 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5YIx-0003qn-7z for submit@debbugs.gnu.org; Wed, 25 May 2016 08:52:55 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:33729) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5YIv-0003qa-Qc for control@debbugs.gnu.org; Wed, 25 May 2016 08:52:54 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From; bh=P8PWBoH4x+mtWFB3tZGU1mXKfRVMrizJ/hWFY6ghlQU=; b=rk/LDtVtE hrp12ZL+WOcLP0sgPaZO1B3ABVlQL/YOYvqRnVV07lxlywuo7z4Ohn44KU6sBauMIyr5vQQkOfm54 Z83dsXy0+jzrxoVzKUKu6H4U813xY83XsgLqI9dx9Rt2gsJVQL2GlKdMzSXNwoYiWHuANFW936ARt PqxbeXIIRl4kkgVf3BGhaBxn0td8EV4LSSM4G3o17bFStTRtdkpzh++02yldBAIUXyCcIfYNBAYfl JdEDmM58dS+V9UlyUoZR1Qs6e07whQNyMG7ZX11dq4oRPX//iwgaV+QhRlPs40A8KPxPSISeqLnXE Yiyr000oomz+nq6xwDKEodgXA==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:36689 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b5YIp-003dAL-Nk for control@debbugs.gnu.org; Wed, 25 May 2016 13:52:47 +0100 From: Phillip Lord To: control@debbugs.gnu.org Subject: control message for bug #22295 Date: Wed, 25 May 2016 13:38:29 +0100 Message-ID: <87y46ygvne.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control 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 (/) * close 22295 25.1 From debbugs-submit-bounces@debbugs.gnu.org Wed May 25 12:28:41 2016 Received: (at 22295) by debbugs.gnu.org; 25 May 2016 16:28:41 +0000 Received: from localhost ([127.0.0.1]:38487 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5bfk-0002aT-Ts for submit@debbugs.gnu.org; Wed, 25 May 2016 12:28:41 -0400 Received: from eggs.gnu.org ([208.118.235.92]:37811) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b5bfj-0002aG-5B for 22295@debbugs.gnu.org; Wed, 25 May 2016 12:28:39 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b5bfd-0001DO-5b for 22295@debbugs.gnu.org; Wed, 25 May 2016 12:28:33 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:52332) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b5bfR-00019T-Lj; Wed, 25 May 2016 12:28:21 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1415 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1b5bfP-0005Uu-KJ; Wed, 25 May 2016 12:28:20 -0400 Date: Wed, 25 May 2016 19:28:24 +0300 Message-Id: <83y46y2jbr.fsf@gnu.org> From: Eli Zaretskii To: Phillip Lord In-reply-to: <87twhmgvf9.fsf@russet.org.uk> (message from Phillip Lord on Wed, 25 May 2016 13:43:22 +0100) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <87k2it5bgh.fsf@russet.org.uk> <87wpmrvia7.fsf@russet.org.uk> <8737pfavrn.fsf@russet.org.uk> <83iny982x7.fsf@gnu.org> <87shx8x5zz.fsf@russet.org.uk> <83h9dn4g2p.fsf@gnu.org> <87twhmgvf9.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: jwiegley@gmail.com, 22295@debbugs.gnu.org, jim@meyering.net 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: Phillip Lord > Cc: 22295@debbugs.gnu.org, jwiegley@gmail.com, jim@meyering.net > Date: Wed, 25 May 2016 13:43:22 +0100 > > > Any reason you didn't close the bug? > > Closed now. > > (If I have done it right -- if I have done it wrong, tell me!) You did OK, thanks. From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 09:06:20 2016 Received: (at 22295) by debbugs.gnu.org; 1 Jun 2016 13:06:20 +0000 Received: from localhost ([127.0.0.1]:49182 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b85qm-0003Gw-C1 for submit@debbugs.gnu.org; Wed, 01 Jun 2016 09:06:20 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181]:47707) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b85qk-0003Gj-2A for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 09:06:18 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0AADgA731xV/+/DSC1SBAaDEIQCx1iBCAQCAoE8PBEBAQEBAQEBgQpBBYNdAQEDAVYjBQsLNBIUGA01iCYIzyMBAQEBBgEBAQEeizqBPYJrGkMHhC0FtQQjgheBfSIEgnQBAQE X-IPAS-Result: A0AADgA731xV/+/DSC1SBAaDEIQCx1iBCAQCAoE8PBEBAQEBAQEBgQpBBYNdAQEDAVYjBQsLNBIUGA01iCYIzyMBAQEBBgEBAQEeizqBPYJrGkMHhC0FtQQjgheBfSIEgnQBAQE X-IronPort-AV: E=Sophos;i="5.13,465,1427774400"; d="scan'208";a="240150299" Received: from 45-72-195-239.cpe.teksavvy.com (HELO pastel.home) ([45.72.195.239]) by ironport2-out.teksavvy.com with ESMTP; 01 Jun 2016 09:06:11 -0400 Received: by pastel.home (Postfix, from userid 20848) id 55F8D63FDB; Wed, 1 Jun 2016 09:06:11 -0400 (EDT) From: Stefan Monnier To: phillip.lord@russet.org.uk (Phillip Lord) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> Date: Wed, 01 Jun 2016 09:06:11 -0400 In-Reply-To: <878tzatbte.fsf@russet.org.uk> (Phillip Lord's message of "Mon, 16 May 2016 13:41:17 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > different, though. With this fix, viper just disables automatic boundary > addition and adds it's own as necessary, which seems cleaner. I see an annoying side-effect of that change, tho: % emacs -Q -f viper-mode y 5 n ;; To get past viper's initial questions. i helo C-b k C-/ [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [206.248.154.181 listed in list.dnswl.org] 1.0 FSL_HELO_HOME No description available. -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [206.248.154.181 listed in wl.mailspike.net] 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: > different, though. With this fix, viper just disables automatic boundary > addition and adds it's own as necessary, which seems cleaner. I see an annoying side-effect of that change, tho: % emacs -Q -f viper-mode y 5 n ;; To get past viper's initial questions. i helo C-b k C-/ [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [206.248.154.181 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [206.248.154.181 listed in wl.mailspike.net] 1.0 FSL_HELO_HOME No description available. 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders > different, though. With this fix, viper just disables automatic boundary > addition and adds it's own as necessary, which seems cleaner. I see an annoying side-effect of that change, tho: % emacs -Q -f viper-mode y 5 n ;; To get past viper's initial questions. i helo C-b k C-/ This last C-/ used to (and should) just undo the insertion of the last "k", but instead it now completely wipes out the *scratch* buffer. So I think that completely disabling undo boundaries is not a good idea: while in many use-cases insertion mode is very transient, it is not so unusual to spend more time in insertion mode (which is pretty much "emacs mode") and to expect undo boundaries to properly inserted during this time. Have we been able to identify the original problem? The old code seemed "simple" enough that the problem was probably simple to fix (once identified). Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 18:23:35 2016 Received: (at 22295) by debbugs.gnu.org; 1 Jun 2016 22:23:35 +0000 Received: from localhost ([127.0.0.1]:50227 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8EY3-00033T-3a for submit@debbugs.gnu.org; Wed, 01 Jun 2016 18:23:35 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:33683) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8EY1-00033F-2Y for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 18:23:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=iHhTvKDOKoZdGNrTJjj+XuMvc2QTjvfK3/Z2wIvj/d0=; b=kGkdzjwPuE7WbXRVxVU7PjCGws 1bSyEud3ZVvb2IdfzbVMTvA5maFw69miF1SK0ehm+kDKYHk3lJ+OVMtm68QBbxCXyXShpQLzAq83l 9sW9Agx+wEvQcBzT7Amr5XsCdjEIyw8QNFVFmsEscReb9SZmaa33y4rBbjIBj6YMC0kI4x6swZfLY 1Ti96/mhuCbEFTOgaPLOBFj8ls5LUMIQpAQo7Nq/j4TjEur6VyBnrWlMDdDjnYoKJp/T60bLehW2G Onjt9KorQc7gYUvdx5H/9bhRsQ+5bOKNyXEKAu8OZ5LIkD3YmaV9lIuh31EUoIlBQWKnfmvV2jG/D G6VoLbEQ==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:53671 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b8EXu-003z3Y-9N; Wed, 01 Jun 2016 23:23:26 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Stefan Monnier Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> Date: Wed, 01 Jun 2016 23:23:25 +0100 In-Reply-To: (Stefan Monnier's message of "Wed, 01 Jun 2016 09:06:11 -0400") Message-ID: <877fe85z1e.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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 (/) Stefan Monnier writes: >> different, though. With this fix, viper just disables automatic boundary >> addition and adds it's own as necessary, which seems cleaner. > > I see an annoying side-effect of that change, tho: > > % emacs -Q -f viper-mode > y 5 n ;; To get past viper's initial questions. > i helo C-b k C-/ > > This last C-/ used to (and should) just undo the insertion of the last > "k", but instead it now completely wipes out the *scratch* buffer. > > So I think that completely disabling undo boundaries is not a good idea: > while in many use-cases insertion mode is very transient, it is not so > unusual to spend more time in insertion mode (which is pretty much > "emacs mode") and to expect undo boundaries to properly inserted during > this time. Oh dear. Yes, that is a problem. The difficulty is that viper modifies the undo-list, removing boundaries only *after* we leave insert mode. Hence, when you type C-/ above they are still there. If you do i helo C-b k escape C-/ before the undo changes, then the whole buffer is deleted also. So, undo behaves different in insert mode and in command mode. Viper's solution of introducing a 'viper symbol is a nice one, but has it's problems. If you do, for example i helo C-b k C-/ C-/ We get an error from the undo system. primitive-undo: Unrecognized entry in undo list viper The deep problem here is that undo boundary == nil -- i.e. there is one and only one symbol for undo-boundary. If it could carry a value, viper could do this cleanly. Only solution that leaps to mind is this: 1) Restore all the old viper code 2) Instead of adding a 'viper mark, copy the buffer-undo-list to "viper-old-buffer-undo-list". 3) Instead of this.... (if (setq tmp (memq viper-buffer-undo-list-mark buffer-undo-list)) we should now already have the cons cell that represents the tail of the buffer-undo-list. This is also quite a big change, and I worry about buffer compaction -- viper-old-buffer-undo-list would not be open for GC. > Have we been able to identify the original problem? No, fraid not. Thought about it lots. Failed. > The old code seemed "simple" enough that the problem was probably > simple to fix (once identified). Well, most problems are simple to fix once you actually know what they are. I shall look again at the old code, and see if I can figure it out. Phil From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 18:34:14 2016 Received: (at 22295) by debbugs.gnu.org; 1 Jun 2016 22:34:14 +0000 Received: from localhost ([127.0.0.1]:50241 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8EiM-0003It-10 for submit@debbugs.gnu.org; Wed, 01 Jun 2016 18:34:14 -0400 Received: from mail-qg0-f53.google.com ([209.85.192.53]:36751) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8EiJ-0003Ig-QU for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 18:34:12 -0400 Received: by mail-qg0-f53.google.com with SMTP id q32so115632611qgq.3 for <22295@debbugs.gnu.org>; Wed, 01 Jun 2016 15:34:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=2zwx3PhkErX39z7wPQng0pvugVFcPBhAkI3R1FflCzI=; b=KKyfMCr874sNGBG046HTNN+BBSEnEdgSltR+F0HbVwd5KR/amFJte7DUc5DVy9TdME IQkMEEZum6WO/Gas9zv9ms1MMcQb0Xp77B06SY4oqX+K2SLmr1q1rpfPLuOcJL4SpGOZ Eab0UT4LSt/vnJODJ4ihLCEHokCHRu71RzIjLbbPm7x8j2az7yiL1RIaN2UrJ2yjUyYg KIZBM8y2GJF88g6U0PovN6RpOk9Esi2Dk/O9RdWPLC0XZ3vDcHCspsvIcT9KPfQN+WsL 8TKKH3FFC85iJIY4qxZa+dSouJKpORxuo+GY6EL2r6/QYXa7qvOY2nHqNWe/ZMsp2YY/ EVXQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=2zwx3PhkErX39z7wPQng0pvugVFcPBhAkI3R1FflCzI=; b=NQOFB9PVjNaIcL1oM6Ncj9lQSZMwvuZ0HsF0emkUdejfQ0HYk2BOJlZ6DO05ZXq0xl pt2qC5f7dSB4u3NXBNfUQ3i7Faw/IOo5QZarLcTzRrfJlPuc1shJhocYxC7szEMlSRQd ixpkY4i1xjXU/nQYVtsW0xqADC0+W8t20RzlbcjvLvb8HE3YEcxekiwID/snplzT12hX 31GT2dwC6m8XfQZz7QKfHvPBFWJXkSnv3UvXFqjLxMi+0B2djl41MG5u0NSU+Crr+6Fy Ed5X+sjWeBlyVdfhSzdkUsSmcNa3b8p6U6gbVwspl6Ahho1btAUycAYOwJ6r1NX6Q5MU 64Pg== X-Gm-Message-State: ALyK8tLpMU5CWcUlFi5tpM1MlHNzZBv+JgSThnMzWcYmCSY3qBioq4u9B8UuxR25N55HfXb8 X-Received: by 10.140.29.9 with SMTP id a9mr38301152qga.37.1464820446082; Wed, 01 Jun 2016 15:34:06 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id r64sm4140568qkl.49.2016.06.01.15.34.05 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 01 Jun 2016 15:34:05 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord , Stefan Monnier References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> From: Michael Kifer Message-ID: <574F62DD.4000506@cs.stonybrook.edu> Date: Wed, 1 Jun 2016 18:34:05 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <877fe85z1e.fsf@russet.org.uk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering 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.7 (/) On 06/01/2016 06:23 PM, Phillip Lord wrote: > Stefan Monnier writes: > >>> different, though. With this fix, viper just disables automatic boundary >>> addition and adds it's own as necessary, which seems cleaner. >> I see an annoying side-effect of that change, tho: >> >> % emacs -Q -f viper-mode >> y 5 n ;; To get past viper's initial questions. >> i helo C-b k C-/ >> >> This last C-/ used to (and should) just undo the insertion of the last >> "k", but instead it now completely wipes out the *scratch* buffer. >> >> So I think that completely disabling undo boundaries is not a good idea: >> while in many use-cases insertion mode is very transient, it is not so >> unusual to spend more time in insertion mode (which is pretty much >> "emacs mode") and to expect undo boundaries to properly inserted during >> this time. > Oh dear. Yes, that is a problem. The difficulty is that viper modifies > the undo-list, removing boundaries only *after* we leave insert mode. > Hence, when you type C-/ above they are still there. > > If you do > > i helo C-b k escape C-/ > > before the undo changes, then the whole buffer is deleted also. So, undo > behaves different in insert mode and in command mode. > > Viper's solution of introducing a 'viper symbol is a nice one, but has > it's problems. If you do, for example > > i helo C-b k C-/ C-/ > > We get an error from the undo system. > > primitive-undo: Unrecognized entry in undo list viper not in 25.0.50 viper worked fine with this for 20 years and I'd say it is Emacs breakage, not Viper's. > The deep problem here is that undo boundary == nil -- i.e. there is one > and only one symbol for undo-boundary. If it could carry a value, viper > could do this cleanly. > > Only solution that leaps to mind is this: > > > 1) Restore all the old viper code > 2) Instead of adding a 'viper mark, copy the buffer-undo-list to > "viper-old-buffer-undo-list". > 3) Instead of this.... > > (if (setq tmp (memq viper-buffer-undo-list-mark buffer-undo-list)) > > we should now already have the cons cell that represents the tail of the > buffer-undo-list. > > This is also quite a big change, and I worry about buffer compaction -- > viper-old-buffer-undo-list would not be open for GC. Do you know who made the changes to the emacs undo list? Maybe complain to him? > >> Have we been able to identify the original problem? > No, fraid not. Thought about it lots. Failed. could not understand what happened either. -- --- michael > >> The old code seemed "simple" enough that the problem was probably >> simple to fix (once identified). > Well, most problems are simple to fix once you actually know what they > are. > > I shall look again at the old code, and see if I can figure it out. > > Phil From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 18:41:46 2016 Received: (at 22295) by debbugs.gnu.org; 1 Jun 2016 22:41:46 +0000 Received: from localhost ([127.0.0.1]:50253 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8Epe-0003TZ-E7 for submit@debbugs.gnu.org; Wed, 01 Jun 2016 18:41:46 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:34542) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8Epd-0003TL-6j for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 18:41:45 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=AVMeDffdl0FVGAvN6lHefXy+GGafyOuQhBGAU+lxiFI=; b=UXdL86IteZsaH6CQSNrY0orspo /w32xIFoUaDS69d3Dkb9SiVKZifOMUc06n4dtyG1kIR3rpGD2oZTxSl7F6j2B2FVKVNJvjb5bFiBo djwpPnCOEclJiDw6ZQX/jR3eZkBc8pW2ZC+3J+ruOOt8XwcpSTqhlenLwXMUGLsodr4my0fykDXpi C3J4cn7LWl9pzxw89qemw73yDn7MEWbLBImqTrrsUJIzIwAwXWhXW7iQitmnsJ99TzK1F+XoQ8045 ac6Gj6ztqhkoRYjykp3z670ZE8gcmlUotag3YqYZD5/anh1bwfTidcuQwsZAZaC0ytPp8/JtLcE+E p+M0szAw==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:53771 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b8EpW-0041wp-UY; Wed, 01 Jun 2016 23:41:39 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <574F62DD.4000506@cs.stonybrook.edu> Date: Wed, 01 Jun 2016 23:41:38 +0100 In-Reply-To: <574F62DD.4000506@cs.stonybrook.edu> (Michael Kifer's message of "Wed, 1 Jun 2016 18:34:05 -0400") Message-ID: <8737ow5y71.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Stefan Monnier , Jim Meyering 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 (/) Michael Kifer writes: > On 06/01/2016 06:23 PM, Phillip Lord wrote: >> Viper's solution of introducing a 'viper symbol is a nice one, but has >> it's problems. If you do, for example >> >> i helo C-b k C-/ C-/ >> >> We get an error from the undo system. >> >> primitive-undo: Unrecognized entry in undo list viper > > not in 25.0.50 > viper worked fine with this for 20 years and I'd say it is Emacs breakage, not > Viper's. Okay, will check on that and see what has changed. I was surprised no one had complained about it. >> we should now already have the cons cell that represents the tail of the >> buffer-undo-list. >> >> This is also quite a big change, and I worry about buffer compaction -- >> viper-old-buffer-undo-list would not be open for GC. > > Do you know who made the changes to the emacs undo list? Maybe complain to > him? Sadly, that would be me. This is the reason I am trying to fix a mode that I don't use! Although, by the time I have finished this, maybe I will know the keystrokes well enough that I will switch. Phil From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 18:47:58 2016 Received: (at 22295) by debbugs.gnu.org; 1 Jun 2016 22:47:58 +0000 Received: from localhost ([127.0.0.1]:50262 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8Eve-0003cb-Cz for submit@debbugs.gnu.org; Wed, 01 Jun 2016 18:47:58 -0400 Received: from mail-qg0-f53.google.com ([209.85.192.53]:33331) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8Evc-0003cO-8c for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 18:47:56 -0400 Received: by mail-qg0-f53.google.com with SMTP id 52so50618887qgy.0 for <22295@debbugs.gnu.org>; Wed, 01 Jun 2016 15:47:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=DK5BdYnnL4UfHPuCyQLxE4gpZYbg+Y9MQnlpNkA9yG0=; b=umcDHCbmf+43jjh/gmznzTIHIiKNrtoI4xfHkb7FcBg6wb17D/R2xZtKxJT+TT7Wpw edfRKtRVeFTkPulZbDZ26hTNojx85CyN/57b8COIjWzHW24qeS/+w+b4vZVc/9ndiX1T I7nXHuqbA10q1IttRdzU8z3NbKaTCQCr+FyycmFuSH1TyD2AhybdTr/SeUQBKCEJjCYU HHPZ67NXppD7CR5abV8Sy92l1Fgk8qcfZY4jadjzpY1M19PKSrS2ALWN8rP/iag9U34+ b/EDtcTINr/uhSg/O2VHLvx2McOswdEcN9JIeJ3rFeDhT5aKQINBZ32bp1duPpfxWKaB rRrg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=DK5BdYnnL4UfHPuCyQLxE4gpZYbg+Y9MQnlpNkA9yG0=; b=DM53JAmipBu7yFG1fzRSRK1oSIH1x47NU3Lj3sknlCma+RV/kCJEF51McvR6O2o7Ww P2bY2fPJbashPRHy5uvlfqslT7hcnbZNopOMI/qdONQxA7oFdf9eyky8rP1OPiTBaPvr r9wT/eIr35bgJULELtGxKt0Fw2jJe7FuKNw/nVlh/G80Lzk6QPPzsolhO5ljgdsCQy8J 2BwYhd0jcNk0rpnNWyUla1nbHj4MPJncfWK2yd27WxJM2KhBgoo4R6LNNObhcA8n9GdK ceVSJVWt/XHR6MdYWGXshryvsleUDMuDiTd0ETlGgYXEhswjzg42FmWSD1uSDsSHOQZo 9SWw== X-Gm-Message-State: ALyK8tIBjMq0HXEE44xV6Hs0ubIdLswZN0C+hi8HSI0Xr5qyqgdmz5MUjL9ZJk57dso1jtqf X-Received: by 10.140.97.136 with SMTP id m8mr38191295qge.1.1464821270891; Wed, 01 Jun 2016 15:47:50 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id u18sm13151849qtc.15.2016.06.01.15.47.50 (version=TLSv1/SSLv3 cipher=OTHER); Wed, 01 Jun 2016 15:47:50 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <574F62DD.4000506@cs.stonybrook.edu> <8737ow5y71.fsf@russet.org.uk> From: Michael Kifer Message-ID: <574F6615.5030709@cs.stonybrook.edu> Date: Wed, 1 Jun 2016 18:47:49 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <8737ow5y71.fsf@russet.org.uk> Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: 7bit X-Spam-Score: 0.4 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Stefan Monnier , Jim Meyering 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.4 (/)

On 06/01/2016 06:41 PM, Phillip Lord wrote:
Sadly, that would be me. This is the reason I am trying to fix a mode
that I don't use! Although, by the time I have finished this, maybe I
will know the keystrokes well enough that I will switch.

it's about time :-)
From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 20:11:45 2016 Received: (at 22295) by debbugs.gnu.org; 2 Jun 2016 00:11:45 +0000 Received: from localhost ([127.0.0.1]:50280 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8GEi-0005fH-Rx for submit@debbugs.gnu.org; Wed, 01 Jun 2016 20:11:45 -0400 Received: from ironport2-out.teksavvy.com ([206.248.154.181]:43407) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8GEh-0005f4-AC for 22295@debbugs.gnu.org; Wed, 01 Jun 2016 20:11:43 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: A0BVBQA731xV/y+tSC1cDoMChALHWIEOAoE9PBABAQEBAQEBgQqEIwEBAwF5EAsNJxIUGDEuiAkIzyMBAQEHAgEfizqBPYNIB4QtBZA0lUGPDyOBZiQND4EUWiKCeAEBAQ X-IPAS-Result: A0BVBQA731xV/y+tSC1cDoMChALHWIEOAoE9PBABAQEBAQEBgQqEIwEBAwF5EAsNJxIUGDEuiAkIzyMBAQEHAgEfizqBPYNIB4QtBZA0lUGPDyOBZiQND4EUWiKCeAEBAQ X-IronPort-AV: E=Sophos;i="5.13,465,1427774400"; d="scan'208";a="240201680" Received: from unknown (HELO pastel.home) ([45.72.173.47]) by ironport2-out.teksavvy.com with ESMTP; 01 Jun 2016 20:11:37 -0400 Received: by pastel.home (Postfix, from userid 20848) id 524F763FDB; Wed, 1 Jun 2016 20:11:37 -0400 (EDT) From: Stefan Monnier To: Michael Kifer Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <574F62DD.4000506@cs.stonybrook.edu> Date: Wed, 01 Jun 2016 20:11:37 -0400 In-Reply-To: <574F62DD.4000506@cs.stonybrook.edu> (Michael Kifer's message of "Wed, 1 Jun 2016 18:34:05 -0400") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-Spam-Score: 1.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: >> Oh dear. Yes, that is a problem. The difficulty is that viper modifies >> the undo-list, removing boundaries only *after* we leave insert mode. I don't see any difficulty in there. >> Viper's solution of introducing a 'viper symbol is a nice one, but has >> it's problems. [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [206.248.154.181 listed in list.dnswl.org] 1.0 FSL_HELO_HOME No description available. -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [206.248.154.181 listed in wl.mailspike.net] 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Phillip Lord 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.3 (+) X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org", has NOT identified this incoming email as spam. The original message has been attached to this so you can view it or label similar future email. If you have any questions, see the administrator of that system for details. Content preview: >> Oh dear. Yes, that is a problem. The difficulty is that viper modifies >> the undo-list, removing boundaries only *after* we leave insert mode. I don't see any difficulty in there. >> Viper's solution of introducing a 'viper symbol is a nice one, but has >> it's problems. [...] Content analysis details: (1.3 points, 10.0 required) pts rule name description ---- ---------------------- -------------------------------------------------- -0.7 RCVD_IN_DNSWL_LOW RBL: Sender listed at http://www.dnswl.org/, low trust [206.248.154.181 listed in list.dnswl.org] -0.0 RCVD_IN_MSPIKE_H3 RBL: Good reputation (+3) [206.248.154.181 listed in wl.mailspike.net] 1.0 FSL_HELO_HOME No description available. 1.0 SPF_SOFTFAIL SPF: sender does not match SPF record (softfail) -0.0 RCVD_IN_MSPIKE_WL Mailspike good senders >> Oh dear. Yes, that is a problem. The difficulty is that viper modifies >> the undo-list, removing boundaries only *after* we leave insert mode. I don't see any difficulty in there. >> Viper's solution of introducing a 'viper symbol is a nice one, but has >> it's problems. Agreed. >> primitive-undo: Unrecognized entry in undo list viper > not in 25.0.50 viper worked fine with this for 20 years and I'd say > it is Emacs breakage, not Viper's. FWIW, Viper adds an entry to buffer-undo-list which is incompatible with the documented format of the entries, so while it worked, Viper was doing something unkosher. In any case it shouldn't be difficult to fix that problem. E.g. you could use (defconst viper--undo-marker '(1 . 1)) instead of a symbol. >> The deep problem here is that undo boundary == nil I know you like to think of it as a problem ;-) >> 1) Restore all the old viper code >> 2) Instead of adding a 'viper mark, copy the buffer-undo-list to >> "viper-old-buffer-undo-list". Don't copy, just (setq viper--original-undo-list buffer-undo-list). >> This is also quite a big change, and I worry about buffer compaction -- >> viper-old-buffer-undo-list would not be open for GC. Why not? This said, AFAIK the OP's problem may not be directly linked to the addition of a special symbol in the undo-list. We should first figure out what's actually going wrong there. Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 01 21:08:13 2016 Received: (at control) by debbugs.gnu.org; 2 Jun 2016 01:08:13 +0000 Received: from localhost ([127.0.0.1]:50294 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8H7M-0006vc-TP for submit@debbugs.gnu.org; Wed, 01 Jun 2016 21:08:13 -0400 Received: from eggs.gnu.org ([208.118.235.92]:58260) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8H7M-0006vM-2P for control@debbugs.gnu.org; Wed, 01 Jun 2016 21:08:12 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1b8H7G-0008Bt-0Z for control@debbugs.gnu.org; Wed, 01 Jun 2016 21:08:06 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:54360) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1b8H7F-0008Bo-TX for control@debbugs.gnu.org; Wed, 01 Jun 2016 21:08:05 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1b8H7E-00073r-Gi for control@debbugs.gnu.org; Wed, 01 Jun 2016 21:08:04 -0400 Subject: control message for bug 22295 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Wed, 01 Jun 2016 21:08:04 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: control 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: -6.4 (------) notfixed 22295 25.1 reopen 22295 From unknown Mon Jun 23 13:12:03 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: Did not alter fixed versions and reopened. Date: Thu, 02 Jun 2016 01:09:02 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # Did not alter fixed versions and reopened. thanks # This fakemail brought to you by your local debbugs # administrator From debbugs-submit-bounces@debbugs.gnu.org Thu Jun 02 04:45:42 2016 Received: (at 22295) by debbugs.gnu.org; 2 Jun 2016 08:45:42 +0000 Received: from localhost ([127.0.0.1]:50459 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8OG6-0002LY-Ft for submit@debbugs.gnu.org; Thu, 02 Jun 2016 04:45:42 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:34983) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b8OG4-0002LL-1v for 22295@debbugs.gnu.org; Thu, 02 Jun 2016 04:45:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=YRWy9fSjBZhSPoM16GqYrkcfcsG/2PQRZaJatlQQn2E=; b=zdeuMG0ZPJ9kZkw6pbRejkfWVS wa+qy/TTjHvgyMgEXiUPcT5//6vTte7RchI5eU0Xf9xH+vAd0pSbLbYz77TzY4pTgnEaf+T6nGX1I gq5s+qkeXA6rkNO6G60Jg96kVAP+holALtrXlIp7LZpcjun6wl6Bt16uvQdGvHZGRDwEzUhw60buX r+ApX5lZgXa0A1VfOAaZdfmPQ4Ls3omDcDe5iQwSfntF8qJBMx6WpifeUr+NPXmnyiV+BU2qKiYVq y+FV1XqkmMUysRvac0V1V2EQbQ9748NhXWAzfcaExw506VtMXhufPgtpuT+WH7USveXFEDfWpm6Vt 2cCmZAHg==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:54404 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1b8OFw-0018xQ-Tu; Thu, 02 Jun 2016 09:45:33 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Stefan Monnier Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <574F62DD.4000506@cs.stonybrook.edu> Date: Thu, 02 Jun 2016 09:45:27 +0100 In-Reply-To: (Stefan Monnier's message of "Wed, 01 Jun 2016 20:11:37 -0400") Message-ID: <877fe8uggo.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Michael Kifer , 22295@debbugs.gnu.org, Eli Zaretskii , Jim Meyering 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 (/) Stefan Monnier writes: >>> Oh dear. Yes, that is a problem. The difficulty is that viper modifies >>> the undo-list, removing boundaries only *after* we leave insert mode. > > I don't see any difficulty in there. Sorry, "difficulty" in the sense that this is the cause of the different behaviour. > >>> Viper's solution of introducing a 'viper symbol is a nice one, but has >>> it's problems. > > Agreed. > >>> primitive-undo: Unrecognized entry in undo list viper >> not in 25.0.50 viper worked fine with this for 20 years and I'd say >> it is Emacs breakage, not Viper's. > > FWIW, Viper adds an entry to buffer-undo-list which is incompatible with > the documented format of the entries, so while it worked, Viper was > doing something unkosher. > > In any case it shouldn't be difficult to fix that problem. > E.g. you could use > > (defconst viper--undo-marker '(1 . 1)) > > instead of a symbol. I think that has the advantage of fulfilling the spec by putting what is a nop in the undo. >>> The deep problem here is that undo boundary == nil > > I know you like to think of it as a problem ;-) It is. In my poking through Emacs, I have found several places where the code say "remove the last undo-boundary which should be..." or "don't remove undo-boundary which are explicit". But we have to guess which is which. Instead we could do: (nil . :explicit) (nil . :auto) (nil . :timer) >>> 1) Restore all the old viper code >>> 2) Instead of adding a 'viper mark, copy the buffer-undo-list to >>> "viper-old-buffer-undo-list". > > Don't copy, just (setq viper--original-undo-list buffer-undo-list). Agreed; meant "copy the reference". Poor choice of words. > >>> This is also quite a big change, and I worry about buffer compaction -- >>> viper-old-buffer-undo-list would not be open for GC. > > Why not? Oh, yes, you are correct. I was thinking of this as some sort of weak reference, but actually, buffer-undo-list is specifically truncated by GC. It wouldn't matter if there were a copy elsewhere. > This said, AFAIK the OP's problem may not be directly linked to the addition > of a special symbol in the undo-list. We should first figure out what's > actually going wrong there. I will try and investigate again, but I am running out of ideas to test. Phil From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 10 13:05:27 2016 Received: (at 22295) by debbugs.gnu.org; 10 Jun 2016 17:05:27 +0000 Received: from localhost ([127.0.0.1]:36193 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBPs6-0005pt-Um for submit@debbugs.gnu.org; Fri, 10 Jun 2016 13:05:27 -0400 Received: from chene.dit.umontreal.ca ([132.204.246.20]:36535) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBPs5-0005pl-53 for 22295@debbugs.gnu.org; Fri, 10 Jun 2016 13:05:25 -0400 Received: from pastel.home (lechon.iro.umontreal.ca [132.204.27.242]) by chene.dit.umontreal.ca (8.14.7/8.14.1) with ESMTP id u5AH5MDb011351; Fri, 10 Jun 2016 13:05:22 -0400 Received: by pastel.home (Postfix, from userid 20848) id 4A8C8602E9; Fri, 10 Jun 2016 13:05:22 -0400 (EDT) From: Stefan Monnier To: phillip.lord@russet.org.uk (Phillip Lord) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> Date: Fri, 10 Jun 2016 13:05:22 -0400 In-Reply-To: <877fe85z1e.fsf@russet.org.uk> (Phillip Lord's message of "Wed, 01 Jun 2016 23:23:25 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV5702=0 X-NAI-Spam-Version: 2.3.0.9418 : core <5702> : inlines <4918> : streams <1649780> : uri <2227947> X-Spam-Score: -1.8 (-) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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.8 (-) >> The old code seemed "simple" enough that the problem was probably >> simple to fix (once identified). > Well, most problems are simple to fix once you actually know what they > are. The problem seems to be the following: when you hit ESC, Viper will remove boundaries from the undo-list, without making any changes to the buffer, so the top-level loop won't add a boundary before the next command and ends up hence "amalgamating" the next command with the previous one. In the old code, we just always blindly added a boundary to current-buffer before running a command, whereas now we only do so if the buffer has been modified since the last time we pushed a boundary. I think the patch below fixes the original problem. Another way to fix it would be to change undo-auto--add-boundary so it always considers (current-buffer) regardless of undo-auto--undoably-changed-buffers. Stefan diff --git a/lisp/emulation/viper-cmd.el b/lisp/emulation/viper-cmd.el index 93cf3b0..ca52f98 100644 --- a/lisp/emulation/viper-cmd.el +++ b/lisp/emulation/viper-cmd.el @@ -1715,7 +1715,8 @@ viper-adjust-undo (let ((inhibit-quit t) tmp tmp2) (setq viper-undo-needs-adjustment nil) - (if (listp buffer-undo-list) + (when (listp buffer-undo-list) + (let ((had-boundary (null (car buffer-undo-list)))) (if (setq tmp (memq viper-buffer-undo-list-mark buffer-undo-list)) (progn (setq tmp2 (cdr tmp)) ; the part after mark @@ -1729,8 +1730,11 @@ viper-adjust-undo (delq viper-buffer-undo-list-mark buffer-undo-list)) ;; restore tail of buffer-undo-list (setq buffer-undo-list (nconc buffer-undo-list tmp2))) - (setq buffer-undo-list (delq nil buffer-undo-list))))) - )) + (setq buffer-undo-list (delq nil buffer-undo-list))) + ;; The top-level loop only adds boundaries if there has been + ;; modifications in the buffer, so make sure we don't accidentally + ;; drop the "final" boundary (bug#22295). + (if had-boundary (undo-boundary))))))) (defun viper-set-complex-command-for-undo () From debbugs-submit-bounces@debbugs.gnu.org Fri Jun 10 18:18:39 2016 Received: (at 22295) by debbugs.gnu.org; 10 Jun 2016 22:18:39 +0000 Received: from localhost ([127.0.0.1]:36308 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBUlD-00032s-CV for submit@debbugs.gnu.org; Fri, 10 Jun 2016 18:18:39 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:48508) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBUlB-00032f-BN for 22295@debbugs.gnu.org; Fri, 10 Jun 2016 18:18:37 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=TKLrIP7GS7jbjafPpi/cQ+Nd83lNjRlhSvW2h1nNxJw=; b=wDobiGN5o7X/9V2MbEzsyqqKkv gP3y8FSrjl13zFU/hGmhUkAkC01F/Ob2RDa082NLmitniN9FnabaPLptpEet0wtCQrG11mqiD4+Pp +DDUX9iRfL3RMnhAZVS9X7O/THv53654xeIwk6aK3RLi6UPF1c1AnnZV2cO2FgrJCQp8RvAv4VhSi KVxTLowQvMvuDCCBD9H6y+J8uiwfIaDAd8EvP93U/PRVOgVsL+yw59+mafliTEyQUY4TkF687+Wvt kzmWMnsCHm8yfGev9h+Sqm2u1dhLh6Yvu35+4q9kCGWdpDZakjt0HXiOiDgWstGi6zOqJsEBAUkw+ EriEV8rg==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:48854 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1bBUl4-000r9X-AQ; Fri, 10 Jun 2016 23:18:30 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Stefan Monnier Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> Date: Fri, 10 Jun 2016 23:18:29 +0100 In-Reply-To: (Stefan Monnier's message of "Fri, 10 Jun 2016 13:05:22 -0400") Message-ID: <8760tghemi.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.94 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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 (/) Stefan Monnier writes: >>> The old code seemed "simple" enough that the problem was probably >>> simple to fix (once identified). >> Well, most problems are simple to fix once you actually know what they >> are. > > The problem seems to be the following: when you hit ESC, Viper will remove > boundaries from the undo-list, without making any changes to the buffer, > so the top-level loop won't add a boundary before the next command and > ends up hence "amalgamating" the next command with the previous one. > > In the old code, we just always blindly added a boundary to > current-buffer before running a command, whereas now we only do so if > the buffer has been modified since the last time we pushed a boundary. > > I think the patch below fixes the original problem. > Another way to fix it would be to change undo-auto--add-boundary so it > always considers (current-buffer) regardless of > undo-auto--undoably-changed-buffers. Stefan Many thanks for working this out -- I was going crazy trying to track this down, and I was looking in the wrong place all along. I've tried your patch against emacs-25 (after reverting c0139e32f1f3b) and it appears to work. The current behaviour of undo-auto--add-boundary seems sensible to me; the difference in behaviour only shows up because viper is manipulating the undo-list. I can try modifying u-a--a-b though -- viper is, I am sure, not the only package to fiddle with undo. I'd propose adding this to emacs-25. Eli, are you happy with this --- my last fix appears to not work and Stefans approach is much more discrete. As a separate issue, I'd like to add part of c0139e32f1f3b back though to master -- adding the variable undo-auto-disable-boundaries. It's not immediately necessary now, but it seems a useful option to have. Phil From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 11 00:04:13 2016 Received: (at 22295) by debbugs.gnu.org; 11 Jun 2016 04:04:14 +0000 Received: from localhost ([127.0.0.1]:36377 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBa9d-0006Fa-2T for submit@debbugs.gnu.org; Sat, 11 Jun 2016 00:04:13 -0400 Received: from pruche.dit.umontreal.ca ([132.204.246.22]:36966) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBa9a-0006FR-Lb for 22295@debbugs.gnu.org; Sat, 11 Jun 2016 00:04:11 -0400 Received: from fmsmemgm.homelinux.net (lechon.iro.umontreal.ca [132.204.27.242]) by pruche.dit.umontreal.ca (8.14.7/8.14.1) with ESMTP id u5B446wE016982; Sat, 11 Jun 2016 00:04:06 -0400 Received: by fmsmemgm.homelinux.net (Postfix, from userid 20848) id 39510AE108; Sat, 11 Jun 2016 00:04:06 -0400 (EDT) From: Stefan Monnier To: phillip.lord@russet.org.uk (Phillip Lord) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> Date: Sat, 11 Jun 2016 00:04:06 -0400 In-Reply-To: <8760tghemi.fsf@russet.org.uk> (Phillip Lord's message of "Fri, 10 Jun 2016 23:18:29 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 1 Rules triggered RV5702=0 X-NAI-Spam-Version: 2.3.0.9418 : core <5702> : inlines <4920> : streams <1650024> : uri <2228294> X-Spam-Score: -2.8 (--) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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: -2.8 (--) > As a separate issue, I'd like to add part of c0139e32f1f3b back > though to master -- adding the variable undo-auto-disable-boundaries. > It's not immediately necessary now, but it seems a useful option to > have. FWIW, I'd rather not have such an option. It's seeing this option which made me look further into your patch, since it seemed like using such a thing would inevitably lead to trouble. Stefan From debbugs-submit-bounces@debbugs.gnu.org Sat Jun 11 03:33:54 2016 Received: (at 22295) by debbugs.gnu.org; 11 Jun 2016 07:33:54 +0000 Received: from localhost ([127.0.0.1]:36392 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBdQX-0003F5-PW for submit@debbugs.gnu.org; Sat, 11 Jun 2016 03:33:53 -0400 Received: from eggs.gnu.org ([208.118.235.92]:60627) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bBdQU-0003Em-7c for 22295@debbugs.gnu.org; Sat, 11 Jun 2016 03:33:52 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bBdQJ-0006xK-0b for 22295@debbugs.gnu.org; Sat, 11 Jun 2016 03:33:43 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:46654) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bBdQ5-0006ol-ID; Sat, 11 Jun 2016 03:33:25 -0400 Received: from 84.94.185.246.cable.012.net.il ([84.94.185.246]:1123 helo=home-c4e4a596f7) by fencepost.gnu.org with esmtpsa (TLS1.2:RSA_AES_128_CBC_SHA1:128) (Exim 4.82) (envelope-from ) id 1bBdQ3-0006Zd-DC; Sat, 11 Jun 2016 03:33:23 -0400 Date: Sat, 11 Jun 2016 10:34:08 +0300 Message-Id: <83bn38p4b3.fsf@gnu.org> From: Eli Zaretskii To: phillip.lord@russet.org.uk (Phillip Lord) In-reply-to: <8760tghemi.fsf@russet.org.uk> (phillip.lord@russet.org.uk) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: 22295 Cc: kifer@cs.stonybrook.edu, 22295@debbugs.gnu.org, monnier@IRO.UMontreal.CA, jim@meyering.net 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: , Reply-To: Eli Zaretskii Errors-To: debbugs-submit-bounces@debbugs.gnu.org Sender: "Debbugs-submit" X-Spam-Score: -6.4 (------) > From: phillip.lord@russet.org.uk (Phillip Lord) > Cc: 22295@debbugs.gnu.org, Eli Zaretskii , Jim Meyering , Michael Kifer > Date: Fri, 10 Jun 2016 23:18:29 +0100 > > I'd propose adding this to emacs-25. Eli, are you happy with this --- my > last fix appears to not work and Stefans approach is much more discrete. Yes, thanks. From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 13 08:37:08 2016 Received: (at 22295) by debbugs.gnu.org; 13 Jun 2016 12:37:08 +0000 Received: from localhost ([127.0.0.1]:38619 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCR76-0000SO-51 for submit@debbugs.gnu.org; Mon, 13 Jun 2016 08:37:08 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:51239) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCR71-0000Rr-RG for 22295@debbugs.gnu.org; Mon, 13 Jun 2016 08:37:07 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=smPnkJi3wscCvUAJbke6Elb6MfwIy7otuRdW7EWNi/o=; b=vmMS7Aa5USQ/MtZik6vVbQr2Xn gvzW1Z61iyyWgTIRNRte8UxBOz0j2XwMo76+RLwOY8/DN4BsHmOn/FIYNdG1TgiOa01LD6AEW6ThI 3/CU+fBBGjr0gX8jLw5uLuRkZN/Y/CvQ3ArAhnCh7kCkgK8GKnhbx0ueHC2g5EmuCF8dwvydtIzUE do21yAsv4kV6bFTgqy0sTNOdDxYtVwimUpbsCfF7QEzHbIJe7aW7LqIY6Z2LGTVrIUVWzuMGC7OcK UFGDRbH1/5HCjo5wEvIhuE4ejOKNrtpCaqcqntIkt/YGT6e7v8H8XDjdQjQR3KvmGHJdfyKzXihyz zV0QtvZg==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:58130 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1bCR6u-000uOB-1u; Mon, 13 Jun 2016 13:36:56 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Stefan Monnier Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> Date: Mon, 13 Jun 2016 13:36:51 +0100 In-Reply-To: (Stefan Monnier's message of "Sat, 11 Jun 2016 00:04:06 -0400") Message-ID: <8737ohjme4.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.95 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Jim Meyering , Michael Kifer 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 (/) Stefan Monnier writes: >> As a separate issue, I'd like to add part of c0139e32f1f3b back >> though to master -- adding the variable undo-auto-disable-boundaries. >> It's not immediately necessary now, but it seems a useful option to >> have. > > FWIW, I'd rather not have such an option. > > It's seeing this option which made me look further into your patch, > since it seemed like using such a thing would inevitably lead > to trouble. No worries, I will leave this out. Phil From debbugs-submit-bounces@debbugs.gnu.org Mon Jun 13 08:37:36 2016 Received: (at 22295) by debbugs.gnu.org; 13 Jun 2016 12:37:36 +0000 Received: from localhost ([127.0.0.1]:38623 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCR7Y-0000T2-E1 for submit@debbugs.gnu.org; Mon, 13 Jun 2016 08:37:36 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:51265) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCR7W-0000Sp-K8 for 22295@debbugs.gnu.org; Mon, 13 Jun 2016 08:37:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID: In-Reply-To:Date:References:Subject:Cc:To:From; bh=VUFaO+n3x9OOC8RjLs8y4npN7uyXzgiLaIzcaPz3pF8=; b=AtrLqn6qfseo+9z5qHeB5Upn4U UHLeu+pLERR2m1ogICj3X13FfCdJsBw1LXyD7sF7cEo7bNSLb30HhioHIoQlVjfa9bkcF9jhC1vS6 mlZaKrETZl6qSTdGwkaMQQo4erp3Tc00il+NByr6qexb7Ai7nff0vVy7VaC8pTWep2loOoE2tAglY UMuyXLmaAgTL5jn/ge4qjyU7artbRSKp5tpvrrNn+lkZaiqcGuj1XlHNUOgYEY8AUusxOmh5oy7Yr vFFKjM93+CoabJ/kQfywS2UsAbiZAKsBlDQ0Y4X5l+0MNHFtYclF2+6WahRv9YTIrrbXkINVdrRrw X1+/5Sow==; Received: from cpc1-benw10-2-0-cust373.gate.cable.virginm.net ([77.98.219.118]:58131 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1bCR7P-000uUT-RL; Mon, 13 Jun 2016 13:37:28 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: Eli Zaretskii Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> <83bn38p4b3.fsf@gnu.org> Date: Mon, 13 Jun 2016 13:37:23 +0100 In-Reply-To: <83bn38p4b3.fsf@gnu.org> (Eli Zaretskii's message of "Sat, 11 Jun 2016 10:34:08 +0300") Message-ID: <87y469i7ss.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.95 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: 22295 Cc: kifer@cs.stonybrook.edu, 22295@debbugs.gnu.org, monnier@IRO.UMontreal.CA, jim@meyering.net 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 (/) Eli Zaretskii writes: >> From: phillip.lord@russet.org.uk (Phillip Lord) >> Cc: 22295@debbugs.gnu.org, Eli Zaretskii , Jim Meyering >> , Michael Kifer >> Date: Fri, 10 Jun 2016 23:18:29 +0100 >> >> I'd propose adding this to emacs-25. Eli, are you happy with this --- my >> last fix appears to not work and Stefans approach is much more discrete. > > Yes, thanks. This has been added to Emacs-25. Everyone happy for me to close? From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 14 14:11:12 2016 Received: (at control) by debbugs.gnu.org; 14 Jun 2016 18:11:12 +0000 Received: from localhost ([127.0.0.1]:40830 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCsnw-0005BG-AU for submit@debbugs.gnu.org; Tue, 14 Jun 2016 14:11:12 -0400 Received: from eggs.gnu.org ([208.118.235.92]:40897) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCsnv-0005B4-3V for control@debbugs.gnu.org; Tue, 14 Jun 2016 14:11:11 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bCsnp-0001WR-3z for control@debbugs.gnu.org; Tue, 14 Jun 2016 14:11:05 -0400 X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on eggs.gnu.org X-Spam-Level: X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD autolearn=disabled version=3.3.2 Received: from fencepost.gnu.org ([2001:4830:134:3::e]:57858) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bCsnp-0001WE-0o for control@debbugs.gnu.org; Tue, 14 Jun 2016 14:11:05 -0400 Received: from rgm by fencepost.gnu.org with local (Exim 4.82) (envelope-from ) id 1bCsnn-0002Dz-Jz for control@debbugs.gnu.org; Tue, 14 Jun 2016 14:11:03 -0400 Subject: control message for bug 22295 To: X-Mailer: mail (GNU Mailutils 2.99.98) Message-Id: From: Glenn Morris Date: Tue, 14 Jun 2016 14:11:03 -0400 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 2001:4830:134:3::e X-Spam-Score: -6.4 (------) X-Debbugs-Envelope-To: control 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: -6.4 (------) close 22295 25.1 From debbugs-submit-bounces@debbugs.gnu.org Tue Jun 14 19:39:04 2016 Received: (at 22295) by debbugs.gnu.org; 14 Jun 2016 23:39:04 +0000 Received: from localhost ([127.0.0.1]:40965 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCxv8-0003uh-IX for submit@debbugs.gnu.org; Tue, 14 Jun 2016 19:39:04 -0400 Received: from chene.dit.umontreal.ca ([132.204.246.20]:58956) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bCxv6-0003uY-8r for 22295@debbugs.gnu.org; Tue, 14 Jun 2016 19:38:56 -0400 Received: from ceviche.home (lechon.iro.umontreal.ca [132.204.27.242]) by chene.dit.umontreal.ca (8.14.7/8.14.1) with ESMTP id u5ENcr5C005491; Tue, 14 Jun 2016 19:38:54 -0400 Received: by ceviche.home (Postfix, from userid 20848) id 2714C6622D; Mon, 13 Jun 2016 09:06:02 -0400 (EDT) From: Stefan Monnier To: phillip.lord@russet.org.uk (Phillip Lord) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 Message-ID: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> <83bn38p4b3.fsf@gnu.org> <87y469i7ss.fsf@russet.org.uk> Date: Mon, 13 Jun 2016 09:06:02 -0400 In-Reply-To: <87y469i7ss.fsf@russet.org.uk> (Phillip Lord's message of "Mon, 13 Jun 2016 13:37:23 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-NAI-Spam-Flag: NO X-NAI-Spam-Level: X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0.2 X-NAI-Spam-Rules: 2 Rules triggered GEN_SPAM_FEATRE=0.2, RV5706=0 X-NAI-Spam-Version: 2.3.0.9418 : core <5706> : inlines <4932> : streams <1652066> : uri <2230949> X-Spam-Score: -1.3 (-) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, jim@meyering.net, kifer@cs.stonybrook.edu 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.3 (-) > This has been added to Emacs-25. Everyone happy for me to close? Fine by me, Stefan From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 15 00:40:40 2016 Received: (at 22295) by debbugs.gnu.org; 15 Jun 2016 04:40:40 +0000 Received: from localhost ([127.0.0.1]:41064 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bD2d5-00063N-QW for submit@debbugs.gnu.org; Wed, 15 Jun 2016 00:40:40 -0400 Received: from mail-oi0-f50.google.com ([209.85.218.50]:33801) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bD2d4-00063B-Nq for 22295@debbugs.gnu.org; Wed, 15 Jun 2016 00:40:39 -0400 Received: by mail-oi0-f50.google.com with SMTP id d132so16675331oig.1 for <22295@debbugs.gnu.org>; Tue, 14 Jun 2016 21:40:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=Csf5aqLCTwQWHhe4Rqn1NioJF7FsIp6564eq+i7XISY=; b=BannE6m9flKgpLlxOnNEhk0zd1i8BYpezUBKo5sRbw6PuXiHEZDtJ6/yWwPvV8j1jl Ue0zfyEiz/w8JfwCNNk4ETbJTIa1KyYV+qejuF8EvTr6qldRWJm/42Rr+JlCEgv27Lx2 6Iwm4BCj6etqBC583Vv6jjZxfHba4i4A1hEVg/ASIwOP/FKoQmDTZ6R9djjWxWyHEuSu IctWByvTI4NPTs1lEuC/UEHoeukbxKptXLTp3+pjpuJjGydLTxI5Q/cIMIiNY6tjtP/i SnG97iLwpypNXBpKtGjcfwQE+uvWJTOw+IMjK45KI0Ik1Iq9jHhQY0i4XGsNqIrTBiFs mpPA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=Csf5aqLCTwQWHhe4Rqn1NioJF7FsIp6564eq+i7XISY=; b=mKYihfalzcvWoN/a1vynn7JXy2CuPZ+glDdJyiulV1qhVpS5gfq0S0fTm7QUNzN/ZI b/80cvvWgpJvTBW9PyPeOnpXy+Z5Cal4jVtj1ba34vjs3AHgO8/PN3LpZwutrV88ikiF Od3X3EIpf+2n/kGr9PvTlMrqNAMQmR/kbBzG9hPvB8UH2cKISJrUjpW8JACmsaDx9RLO 00jWzrMoGbU7E8/hw/c6YECUwEir9pe0jbgsm560aVQ7l1FUIhfLKmsjo6dxTxE6H/hn 77Bs48vA89Ab8Pfa2K7VkxxgB6BGz2u/aT3RGsV6GLCkfJFvyIJwXhkfITxovGJhO9v+ NXVA== X-Gm-Message-State: ALyK8tIP9sBsbNK1Ry3Qc9kshVvdB15NO6edgF9qXOTvAeAm93gtBbkPhVwG1sOuKtwyi+qbr4Gvs0jy+plrvA== X-Received: by 10.202.80.5 with SMTP id e5mr6901313oib.182.1465965633046; Tue, 14 Jun 2016 21:40:33 -0700 (PDT) MIME-Version: 1.0 Received: by 10.202.73.23 with HTTP; Tue, 14 Jun 2016 21:40:13 -0700 (PDT) In-Reply-To: References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> <83bn38p4b3.fsf@gnu.org> <87y469i7ss.fsf@russet.org.uk> From: Jim Meyering Date: Tue, 14 Jun 2016 21:40:13 -0700 X-Google-Sender-Auth: IGj7Q49_agrEsMm1rjDuz9_yB5Y Message-ID: Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Stefan Monnier Content-Type: text/plain; charset=UTF-8 X-Spam-Score: -0.5 (/) X-Debbugs-Envelope-To: 22295 Cc: Eli Zaretskii , 22295@debbugs.gnu.org, Michael Kifer , Phillip Lord 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.5 (/) On Mon, Jun 13, 2016 at 6:06 AM, Stefan Monnier wrote: >> This has been added to Emacs-25. Everyone happy for me to close? > > Fine by me, Same here. Thanks for all the work. From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 15 01:25:04 2016 Received: (at 22295) by debbugs.gnu.org; 15 Jun 2016 05:25:04 +0000 Received: from localhost ([127.0.0.1]:41069 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bD3K4-0007BK-Cr for submit@debbugs.gnu.org; Wed, 15 Jun 2016 01:25:04 -0400 Received: from mail-qk0-f180.google.com ([209.85.220.180]:33033) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bD3K0-0007Am-N8 for 22295@debbugs.gnu.org; Wed, 15 Jun 2016 01:25:03 -0400 Received: by mail-qk0-f180.google.com with SMTP id a186so9529422qkf.0 for <22295@debbugs.gnu.org>; Tue, 14 Jun 2016 22:25:00 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cs-stonybrook-edu.20150623.gappssmtp.com; s=20150623; h=subject:to:references:cc:from:message-id:date:user-agent :mime-version:in-reply-to:content-transfer-encoding; bh=BiZSUWejh0AGlFYNnY4ASLHtdGXxNZPqGGCThvT/Ou0=; b=Dh71wj5I1PtbNJQA4UEBAX+eXx7ysnGG6EjIgkHM9IUM5Jb7df/z+5A4MIK9jwvPYD WTsVWl+Jr84AJVuVwdOZq4NrZkAkSxfegz9kD5Q6RbntvAN6jqQiaiiVoVt3AhAk9B3f /JH9JtpoFosf3G4OQDUBxZqQq4u8esHKnfg8z/uAl95DCoaHFOt+AJSxdajdQB1WTTk+ 9K17gDluF8oAwg44lLlJQxluklsxocZ+QfChy+lKc6Ifz+hoJfMECz5n5DOd5yRZikPG i3GRF3vYhW7KYTDx/eQq+/VM9BtUm/eALAOAUO1tmem+4e27MKOP0dQZN+Tp/UrEvIbj k0sA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:subject:to:references:cc:from:message-id:date :user-agent:mime-version:in-reply-to:content-transfer-encoding; bh=BiZSUWejh0AGlFYNnY4ASLHtdGXxNZPqGGCThvT/Ou0=; b=X2PAVbOPABbXf2m3KxSpUgD9FKEvLC4ZIAZQY9Pf12sHa4F/cCeRya5vzvsfMzLUxc 1NLUtn8Xy1pJ7Fz5/AcqqioC7NUlgNP+001YAkR6Q25v39Y6d3gQ1TrKg68odbsVgXws z0gZfd8QN77Z5cAHOlL/IQj9M2V4c/GArPvcvUwOGffBnSrqUwQ5+8FiHR+tZVPXbfgU qNqIi+F4JOvBrWk3QMyxW9eNUwoAyhfMf1YJBpBlIndJ5AiWvC1lT9PKnkQ5VyJVslOW cRlDR2DqQNaYIJFOEQZTZzA4RTF2hqfZ7pJQfTHNOYn15UKiqET5U6uPTd1kCDHfbY6t cOtA== X-Gm-Message-State: ALyK8tIuifndeZq+L53C0N+qaslnv3uf7pwFfaqQsFBuh2gfoYkBdkh/1Pb/GFMYfy3bG+EG X-Received: by 10.55.201.154 with SMTP id m26mr24209835qkl.18.1465968295234; Tue, 14 Jun 2016 22:24:55 -0700 (PDT) Received: from [192.168.1.106] (ool-18ba1846.dyn.optonline.net. [24.186.24.70]) by smtp.gmail.com with ESMTPSA id x129sm9047674qhc.29.2016.06.14.22.24.54 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 14 Jun 2016 22:24:54 -0700 (PDT) Subject: Re: bug#22295: viper-mode undo bug introduced between Nov 10 and Nov 14 To: Phillip Lord , Eli Zaretskii References: <83vb2h6lfq.fsf@gnu.org> <83r3d56jrg.fsf@gnu.org> <87poso7nf5.fsf@russet.org.uk> <878tzatbte.fsf@russet.org.uk> <877fe85z1e.fsf@russet.org.uk> <8760tghemi.fsf@russet.org.uk> <83bn38p4b3.fsf@gnu.org> <87y469i7ss.fsf@russet.org.uk> From: Michael Kifer Message-ID: <5760E6A6.5060108@cs.stonybrook.edu> Date: Wed, 15 Jun 2016 01:24:54 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.8.0 MIME-Version: 1.0 In-Reply-To: <87y469i7ss.fsf@russet.org.uk> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Score: -0.7 (/) X-Debbugs-Envelope-To: 22295 Cc: 22295@debbugs.gnu.org, monnier@IRO.UMontreal.CA, jim@meyering.net 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.7 (/) On 06/13/2016 08:37 AM, Phillip Lord wrote: > Eli Zaretskii writes: > >>> From: phillip.lord@russet.org.uk (Phillip Lord) >>> Cc: 22295@debbugs.gnu.org, Eli Zaretskii , Jim Meyering >>> , Michael Kifer >>> Date: Fri, 10 Jun 2016 23:18:29 +0100 >>> >>> I'd propose adding this to emacs-25. Eli, are you happy with this --- my >>> last fix appears to not work and Stefans approach is much more discrete. >> Yes, thanks. > This has been added to Emacs-25. Everyone happy for me to close? > Yes, thank you! -- --- michael From debbugs-submit-bounces@debbugs.gnu.org Wed Jun 15 12:32:06 2016 Received: (at control) by debbugs.gnu.org; 15 Jun 2016 16:32:06 +0000 Received: from localhost ([127.0.0.1]:42449 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bDDja-0008T0-23 for submit@debbugs.gnu.org; Wed, 15 Jun 2016 12:32:06 -0400 Received: from cloud103.planethippo.com ([31.216.48.48]:55720) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bDDjY-0008SV-1U for control@debbugs.gnu.org; Wed, 15 Jun 2016 12:32:04 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=russet.org.uk; s=default; h=Content-Type:MIME-Version:Message-ID:Date: Subject:To:From; bh=ZHsCdprs76huONFqP4yrLJhNS9kXzHFNs4v4Qtip6Ds=; b=dNFsXWIEm qNhTi6z+4Lyvj0DKT/kfK8DBU2KXuminRKItqr66aLr0yHsUdRLALooK0B44dwoZksAoOfPzCvkaX QfQaTg6B4aVQwRvO/uoCJMD9zyzHurIUkKxKnJpJmXwLIvWP3nEWM/mCXmtVEdsjga/tv5FmjyPo6 bNozGEsHJb0Te53oa9mJ0Q2GsAabTNx6zTXHdPa3Xqmw+kCIgReaCZO+9zjQh+hBY3Nh7OLms8mam QRmpwTwyaZdOqCRp71wflpDjwV2Q/WrBU9wdbhRJPEFWn66A7Te4RqjpyMlVXMSl+0A/u5So7+5T8 tHBphCHN2pRhOUM+8YxE5JFPw==; Received: from janus-nat-128-240-225-60.ncl.ac.uk ([128.240.225.60]:32398 helo=russet.org.uk) by cloud103.planethippo.com with esmtpsa (TLSv1.2:DHE-RSA-AES128-SHA:128) (Exim 4.86_1) (envelope-from ) id 1bDDjS-0025TD-1u for control@debbugs.gnu.org; Wed, 15 Jun 2016 17:31:58 +0100 From: phillip.lord@russet.org.uk (Phillip Lord) To: control@debbugs.gnu.org Subject: control message for bug #22295 Date: Wed, 15 Jun 2016 17:31:57 +0100 Message-ID: <87shwebegy.fsf@russet.org.uk> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.95 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - cloud103.planethippo.com X-AntiAbuse: Original Domain - debbugs.gnu.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - russet.org.uk X-Get-Message-Sender-Via: cloud103.planethippo.com: authenticated_id: phillip.lord@russet.org.uk X-Authenticated-Sender: cloud103.planethippo.com: phillip.lord@russet.org.uk X-Spam-Score: 0.0 (/) X-Debbugs-Envelope-To: control 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 (/) close 22295 25.1 From unknown Mon Jun 23 13:12:03 2025 Received: (at fakecontrol) by fakecontrolmessage; To: internal_control@debbugs.gnu.org From: Debbugs Internal Request Subject: Internal Control Message-Id: bug archived. Date: Thu, 14 Jul 2016 11:24:03 +0000 User-Agent: Fakemail v42.6.9 # This is a fake control message. # # The action: # bug archived. thanks # This fakemail brought to you by your local debbugs # administrator