From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: disabling undo boundaries Date: Tue, 19 May 2015 22:00:12 -0400 Message-ID: References: <87fv746rd5.fsf@newcastle.ac.uk> <87617zl4kh.fsf@newcastle.ac.uk> <87h9rjhy8w.fsf@newcastle.ac.uk> <87oalqrgm7.fsf@newcastle.ac.uk> <87ioby3tdy.fsf@newcastle.ac.uk> <87y4kth5ps.fsf@newcastle.ac.uk> <87sib0a3jr.fsf@newcastle.ac.uk> <871tiiowjw.fsf@newcastle.ac.uk> <87siaxk4dl.fsf@newcastle.ac.uk> <87iobsr6m2.fsf@newcastle.ac.uk> <87oalgaicm.fsf@newcastle.ac.uk> <87y4kkkzlo.fsf@newcastle.ac.uk> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: ger.gmane.org 1432087230 1080 80.91.229.3 (20 May 2015 02:00:30 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 20 May 2015 02:00:30 +0000 (UTC) Cc: Emacs-Devel devel To: phillip.lord@newcastle.ac.uk (Phillip Lord) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed May 20 04:00:21 2015 Return-path: Envelope-to: ged-emacs-devel@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 1YutIy-0000F8-O1 for ged-emacs-devel@m.gmane.org; Wed, 20 May 2015 04:00:20 +0200 Original-Received: from localhost ([::1]:49542 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YutIy-0007m9-A9 for ged-emacs-devel@m.gmane.org; Tue, 19 May 2015 22:00:20 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:45021) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YutIu-0007m4-TX for emacs-devel@gnu.org; Tue, 19 May 2015 22:00:17 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1YutIr-0003de-Es for emacs-devel@gnu.org; Tue, 19 May 2015 22:00:16 -0400 Original-Received: from ironport2-out.teksavvy.com ([206.248.154.181]:20682) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1YutIr-0003da-Ar for emacs-devel@gnu.org; Tue, 19 May 2015 22:00:13 -0400 X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: AgUFAGvvdVTO+LMW/2dsb2JhbAA3DoFFoW+BCIF1AQEEAVYjEAs0EhQYDYg3CaIEBIt2NDoJAwODPgM2AgWDMwSjY4QFUw X-IPAS-Result: AgUFAGvvdVTO+LMW/2dsb2JhbAA3DoFFoW+BCIF1AQEEAVYjEAs0EhQYDYg3CaIEBIt2NDoJAwODPgM2AgWDMwSjY4QFUw X-IronPort-AV: E=Sophos;i="5.11,557,1422939600"; d="scan'208";a="121057515" Original-Received: from 206-248-179-22.dsl.teksavvy.com (HELO pastel.home) ([206.248.179.22]) by ironport2-out.teksavvy.com with ESMTP/TLS/DHE-RSA-AES256-SHA; 19 May 2015 22:00:13 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id 6CD36342D; Tue, 19 May 2015 22:00:12 -0400 (EDT) In-Reply-To: <87y4kkkzlo.fsf@newcastle.ac.uk> (Phillip Lord's message of "Tue, 19 May 2015 22:48:51 +0100") User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.0.50 (gnu/linux) X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 206.248.154.181 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:186638 Archived-At: >> Could you describe the exact case that bothers you, so we could start by >> thinking what should be the ideal behavior for that one? > Yes. Any after-change-function that changes another buffer breaks undo. > My "noisy-change" package which just logs the before and > after-change-function args is an example of this. > https://raw.githubusercontent.com/phillord/lentic/master/noisy-change.el > My real use case is lentic. > Ideal behaviour: is just not to do it. Uncommenting all the > "undo_boundary" calls in undo.c seems to achieve this for me, although > obviously that's a blunt fix. Could you be more specific. Give a very concrete example of a sequence of commands, and then explain which the undo-boundaries end up being and what they should be instead. Stefan