From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Markus Triska Newsgroups: gmane.emacs.bugs Subject: bug#23906: 25.0.95; Undo boundary after process output is not consistent Date: Wed, 13 Jul 2016 00:45:12 +0200 Message-ID: <87zipmpjbb.fsf@metalevel.at> References: <83r3b6lih2.fsf@gnu.org> <87h9bw5rfd.fsf@russet.org.uk> <87eg70i8k5.fsf@metalevel.at> <87d1mikef5.fsf@russet.org.uk> <874m7usn1m.fsf@metalevel.at> <8760sao9im.fsf@metalevel.at> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1468363594 26853 80.91.229.3 (12 Jul 2016 22:46:34 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Tue, 12 Jul 2016 22:46:34 +0000 (UTC) Cc: Phillip Lord , 23906@debbugs.gnu.org To: Stefan Monnier Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Jul 13 00:46:17 2016 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by plane.gmane.org with esmtp (Exim 4.69) (envelope-from ) id 1bN6RU-0006yp-RF for geb-bug-gnu-emacs@m.gmane.org; Wed, 13 Jul 2016 00:46:16 +0200 Original-Received: from localhost ([::1]:43933 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bN6RU-0002OJ-3t for geb-bug-gnu-emacs@m.gmane.org; Tue, 12 Jul 2016 18:46:16 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:56370) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bN6RL-0002O1-WC for bug-gnu-emacs@gnu.org; Tue, 12 Jul 2016 18:46:09 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bN6RG-0007cK-VY for bug-gnu-emacs@gnu.org; Tue, 12 Jul 2016 18:46:07 -0400 Original-Received: from debbugs.gnu.org ([208.118.235.43]:36535) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bN6RG-0007cD-SS for bug-gnu-emacs@gnu.org; Tue, 12 Jul 2016 18:46:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1bN6RG-0002Zp-Hn for bug-gnu-emacs@gnu.org; Tue, 12 Jul 2016 18:46:02 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Markus Triska Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Tue, 12 Jul 2016 22:46:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 23906 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 23906-submit@debbugs.gnu.org id=B23906.14683635149805 (code B ref 23906); Tue, 12 Jul 2016 22:46:02 +0000 Original-Received: (at 23906) by debbugs.gnu.org; 12 Jul 2016 22:45:14 +0000 Original-Received: from localhost ([127.0.0.1]:48871 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bN6QU-0002Y4-Lx for submit@debbugs.gnu.org; Tue, 12 Jul 2016 18:45:14 -0400 Original-Received: from metalevel.at ([78.46.218.83]:35443) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bN6QT-0002Xv-Jy for 23906@debbugs.gnu.org; Tue, 12 Jul 2016 18:45:13 -0400 Original-Received: by metalevel.at (Postfix, from userid 1000) id D4A18A0640; Wed, 13 Jul 2016 00:45:12 +0200 (CEST) In-Reply-To: (Stefan Monnier's message of "Tue, 12 Jul 2016 17:20:47 -0400") User-Agent: Emacs/24.4 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 208.118.235.43 X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.org gmane.emacs.bugs:120968 Archived-At: Stefan Monnier writes: > Please note in this case that, as explained above, the output > normally is inserted continuously in a loop, but it is possible to > break out of the loop with C-g and edit text elsewhere in the > buffer, and in that case I still would like the normal undo > behaviour for user input. To clearify this paragraph: Suppose the Prolog query is in progress and takes a long time. The user presses C-g to quit waiting for process output (the process continues of course) and continues to edit unrelated parts of the program, or writes new queries etc. *These* edits are to be regarded as completely normal edits, with everything as usual. Only everything that happens in the context of "interaction with the Prolog process" should always be undone as a single unit, without any undo boundaries, even if user input happened during the interaction (as it almast always does, because we ask for the next answer etc.). However, user pressing C-g to temporarily get out of the Prolog interaction (you can resume with M-x ediprolog-toplevel RET) is comparatively unusual: Most ediprolog queries are small self-contained test cases that quickly yield the desired answer, at least from my experience. So I do not care that much what happens after C-g: For example, if the undo "transaction" ends upon C-g, and normal undo behaviour ensues for the rest of the interaction, that's very OK! All the best, Markus