From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Rolf Ade Newsgroups: gmane.emacs.bugs Subject: bug#22348: 24.5; Mode hooks doesn't run as expected if the major mode of a new buffer is determined by the default major mode Date: Mon, 11 Jan 2016 23:56:12 +0100 Message-ID: <5694330C.8080602@pointsman.de> References: <87wprg2snf.fsf@linux-qg7d.fritz.box> <3f8u3vhhvl.fsf@fencepost.gnu.org> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 8bit X-Trace: ger.gmane.org 1452553044 31010 80.91.229.3 (11 Jan 2016 22:57:24 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Mon, 11 Jan 2016 22:57:24 +0000 (UTC) Cc: 22348@debbugs.gnu.org To: Glenn Morris Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Mon Jan 11 23:57:11 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 1aIlOg-0003fz-AW for geb-bug-gnu-emacs@m.gmane.org; Mon, 11 Jan 2016 23:57:10 +0100 Original-Received: from localhost ([::1]:57146 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aIlOf-0007qC-Ad for geb-bug-gnu-emacs@m.gmane.org; Mon, 11 Jan 2016 17:57:09 -0500 Original-Received: from eggs.gnu.org ([2001:4830:134:3::10]:51872) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aIlOc-0007q6-ID for bug-gnu-emacs@gnu.org; Mon, 11 Jan 2016 17:57:07 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1aIlOY-0002O9-D9 for bug-gnu-emacs@gnu.org; Mon, 11 Jan 2016 17:57:06 -0500 Original-Received: from debbugs.gnu.org ([208.118.235.43]:58667) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1aIlOY-0002O3-A1 for bug-gnu-emacs@gnu.org; Mon, 11 Jan 2016 17:57:02 -0500 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84) (envelope-from ) id 1aIlOY-0001KO-08 for bug-gnu-emacs@gnu.org; Mon, 11 Jan 2016 17:57:02 -0500 X-Loop: help-debbugs@gnu.org Resent-From: Rolf Ade Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Mon, 11 Jan 2016 22:57:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 22348 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 22348-submit@debbugs.gnu.org id=B22348.14525529845059 (code B ref 22348); Mon, 11 Jan 2016 22:57:01 +0000 Original-Received: (at 22348) by debbugs.gnu.org; 11 Jan 2016 22:56:24 +0000 Original-Received: from localhost ([127.0.0.1]:46887 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aIlNw-0001JX-Gt for submit@debbugs.gnu.org; Mon, 11 Jan 2016 17:56:24 -0500 Original-Received: from mxout3.interscholz.de ([85.236.196.238]:35012) by debbugs.gnu.org with esmtp (Exim 4.84) (envelope-from ) id 1aIlNu-0001JN-JG for 22348@debbugs.gnu.org; Mon, 11 Jan 2016 17:56:23 -0500 Original-Received: from localhost (mxout3 [127.0.0.1]) by mxout3.interscholz.de (Postfix) with ESMTP id A078322AFF; Mon, 11 Jan 2016 23:56:18 +0100 (CET) X-Virus-Scanned: interscholz amavisd-new at mxout3.interscholz.de Original-Received: from server.web01.interscholz.net (server.web01.interscholz.net [85.236.196.138]) by mxout3.interscholz.de (Postfix) with ESMTP id 7A33E204A9; Mon, 11 Jan 2016 23:56:16 +0100 (CET) Original-Received: from linux-qg7d.site (p4FFBE688.dip0.t-ipconnect.de [79.251.230.136]) by server.web01.interscholz.net (Postfix) with ESMTPSA id 6FF59340398; Mon, 11 Jan 2016 21:20:37 +0100 (CET) User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:24.0) Gecko/20100101 Thunderbird/24.2.0 In-Reply-To: <3f8u3vhhvl.fsf@fencepost.gnu.org> 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-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.bugs:111533 Archived-At: Am 01/11/2016 11:27 PM, Glenn Morris wrote: > > Gosh, that's rather a long bug report. :) Sorry. Unfortunately I feel a bit uncomfortable to express myself in English; I'm afraid I can't make my point clear enough. But you're right. Being longish doesn't help either. > If you do: > > ./src/emacs -Q --eval "(progn (setq-default major-mode 'text-mode) > (add-hook 'text-mode-hook (lambda () (message \"FOO\") (sit-for 3))))" > /tmp/foo.bar > > you'll see it works fine. This suggest that the issue is specific to > point-motion (your example used end-of-buffer). Yes, I know, I even mentioned that in the bug report, somewhere within the endless words ... I probably should have written better "Some Hooks doesn't run ...". But that would have been an even longer title ... > set-auto-mode calls set-buffer-major-mode if nothing else specifies a mode. > set-buffer-major-mode can operate on buffers other than the current one, > and uses save-excursion to preserve buffer. But set-auto-mode calls it > to operate on current-buffer. Thus save-excursion undoes your hook's > point changes. So that's the real issue here. There's an explanation for why it behaves as it does, I'm sure. My main point is it shouldn't behave this way. I think, your "that's the real issue here" does this say, too, right?