From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Unbalanced change hooks (part 2) [Documentation fix still remaining] Date: Tue, 09 Aug 2016 15:09:02 -0400 Message-ID: References: <83fuqnm6og.fsf@gnu.org> <83eg67m3aq.fsf@gnu.org> <20160808143614.GA7208@acm.fritz.box> <83mvkni7xf.fsf@gnu.org> <20160808165449.GB7208@acm.fritz.box> <83d1lji3ih.fsf@gnu.org> <20160808184223.GC7208@acm.fritz.box> <838tw7hyk2.fsf@gnu.org> <20160808195459.GD7208@acm.fritz.box> <83tweugeu9.fsf@gnu.org> <20160809163814.GD4893@acm.fritz.box> <83inv9hkjd.fsf@gnu.org> NNTP-Posting-Host: blaine.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: blaine.gmane.org 1470770116 26582 195.159.176.226 (9 Aug 2016 19:15:16 GMT) X-Complaints-To: usenet@blaine.gmane.org NNTP-Posting-Date: Tue, 9 Aug 2016 19:15:16 +0000 (UTC) User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/25.1.50 (gnu/linux) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Aug 09 21:15:13 2016 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([208.118.235.17]) by blaine.gmane.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bXCUZ-0006mv-7t for ged-emacs-devel@m.gmane.org; Tue, 09 Aug 2016 21:15:11 +0200 Original-Received: from localhost ([::1]:37592 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXCUV-0003OA-UQ for ged-emacs-devel@m.gmane.org; Tue, 09 Aug 2016 15:15:07 -0400 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:37893) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXCOo-00070D-Lz for emacs-devel@gnu.org; Tue, 09 Aug 2016 15:09:15 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1bXCOn-00041T-Je for emacs-devel@gnu.org; Tue, 09 Aug 2016 15:09:14 -0400 Original-Received: from [195.159.176.226] (port=42083 helo=blaine.gmane.org) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1bXCOn-0003zI-DI for emacs-devel@gnu.org; Tue, 09 Aug 2016 15:09:13 -0400 Original-Received: from list by blaine.gmane.org with local (Exim 4.84_2) (envelope-from ) id 1bXCOh-0006p2-SV for emacs-devel@gnu.org; Tue, 09 Aug 2016 21:09:07 +0200 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 19 Original-X-Complaints-To: usenet@blaine.gmane.org Cancel-Lock: sha1:tnmjWjIDXBwbRC0+f3i4tV69H/I= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.2.x-3.x [generic] X-Received-From: 195.159.176.226 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 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" Xref: news.gmane.org gmane.emacs.devel:206523 Archived-At: >> > This variable holds a list of functions to call before _ANY_ buffer >> > modification. >> I think this description is correct. If there's a modification where we >> forget to run the hook, please report it as a bug. > I think this is just an argument about the definition of > "modification". When a modification is done piecemeal, not every > partial modification calls the before hook. It's OK if we call it once for the whole region and then modify various chunks of the region one by one, yes. In that case, it's still called before those modification. Basically, It think we should guarantee that if buffer position N is changed, then N is between the BEG and END of the latest call to b-c-f (with END potentially adjusted to account for the other modifications that took place in the mean time). Stefan