From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.blaine.gmane.org!not-for-mail From: Stefan Monnier Newsgroups: gmane.emacs.devel Subject: Re: Syntax-ppss flush should happen in after-change hook Date: Sat, 16 Mar 2019 18:41:35 -0400 Message-ID: References: <87sgvm50dk.fsf@gmail.com> <87lg1e4t9u.fsf@gmail.com> <87h8c24mr0.fsf@gmail.com> Mime-Version: 1.0 Content-Type: text/plain Injection-Info: blaine.gmane.org; posting-host="blaine.gmane.org:195.159.176.226"; logging-data="145269"; mail-complaints-to="usenet@blaine.gmane.org" User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.0.50 (gnu/linux) Cc: emacs-devel@gnu.org To: Vitalie Spinu Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Sat Mar 16 23:43:06 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by blaine.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1h5I1C-000bhO-4X for ged-emacs-devel@m.gmane.org; Sat, 16 Mar 2019 23:43:06 +0100 Original-Received: from localhost ([127.0.0.1]:47412 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h5I1B-000789-3Q for ged-emacs-devel@m.gmane.org; Sat, 16 Mar 2019 18:43:05 -0400 Original-Received: from eggs.gnu.org ([209.51.188.92]:53587) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h5Hzn-00068w-P8 for emacs-devel@gnu.org; Sat, 16 Mar 2019 18:41:40 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1h5Hzm-00037d-Sr for emacs-devel@gnu.org; Sat, 16 Mar 2019 18:41:39 -0400 Original-Received: from chene.dit.umontreal.ca ([132.204.246.20]:49805) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1h5Hzm-000373-Hc for emacs-devel@gnu.org; Sat, 16 Mar 2019 18:41:38 -0400 Original-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 x2GMfZVO007091; Sat, 16 Mar 2019 18:41:36 -0400 Original-Received: by pastel.home (Postfix, from userid 20848) id BFDC26ABE1; Sat, 16 Mar 2019 18:41:35 -0400 (EDT) In-Reply-To: <87h8c24mr0.fsf@gmail.com> (Vitalie Spinu's message of "Sat, 16 Mar 2019 20:56:03 +0100") X-NAI-Spam-Flag: NO X-NAI-Spam-Threshold: 5 X-NAI-Spam-Score: 0 X-NAI-Spam-Rules: 2 Rules triggered EDT_SA_DN_PASS=0, RV6504=0 X-NAI-Spam-Version: 2.3.0.9418 : core <6504> : inlines <7035> : streams <1815911> : uri <2814197> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 132.204.246.20 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:234248 Archived-At: >> I'd much rather "do it right" and change add-hook to understand a notion of >> depth/priority/order. > > Interesting. This would be useful for this particular case, but are > there other use cases that would benefit from it? Since it's proved useful for add-function, I expect it would be useful for add-hook as well. Off hand, I can only mention electric--sort-post-self-insertion-hook as a concrete example, tho. >>> Combine-change-calls happened in my example, but currently any buffer >>> change results in inconsistent syntax state. > >> Then I must have misunderstood something. >> Can you give more details about the problem scenario you have in mind? > > Sorry, I didn't put it rightly. I meant all those functions that > trigger "syntax-propertize", but looks like I was actually confused > about the number of such functions. > >> It's only when you start using combine-change-calls (or >> combine-after-change-calls) that the code the performs the change >> between a-c-f and b-c-f can run arbitrarly fancy Elisp code. > > I see. Then, as long as combine-change-calls leaves the correct state > everything should be fine. Then your patch looks right, indeed. > It does fix my markdown-mode example for sure. OK, thanks for testing, Stefan