From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Lennart Borgman (gmail)" Newsgroups: gmane.emacs.devel Subject: Re: Specifying mode in file variables trouble Date: Wed, 24 Sep 2008 23:45:46 +0200 Message-ID: <48DAB50A.6060600@gmail.com> References: <48D44761.6000809@gmail.com> <87ljxny6n8.fsf@catnip.gol.com> <48D44C79.9020004@gmail.com> <48D63F30.8060102@gmail.com> <48D6E8FB.4070108@gmail.com> <48D79A25.7050000@gmail.com> <48D8BD92.5080403@gmail.com> <48D950F9.6030401@gmail.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-15 Content-Transfer-Encoding: 7bit X-Trace: ger.gmane.org 1222292774 9875 80.91.229.12 (24 Sep 2008 21:46:14 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 24 Sep 2008 21:46:14 +0000 (UTC) Cc: monnier@iro.umontreal.ca, emacs-devel@gnu.org To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Sep 24 23:47:11 2008 connect(): Connection refused Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([199.232.76.165]) by lo.gmane.org with esmtp (Exim 4.50) id 1KicCR-0003gI-F0 for ged-emacs-devel@m.gmane.org; Wed, 24 Sep 2008 23:47:08 +0200 Original-Received: from localhost ([127.0.0.1]:57123 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KicBO-0007lz-O7 for ged-emacs-devel@m.gmane.org; Wed, 24 Sep 2008 17:46:02 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KicBK-0007la-6B for emacs-devel@gnu.org; Wed, 24 Sep 2008 17:45:58 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KicBH-0007ky-JU for emacs-devel@gnu.org; Wed, 24 Sep 2008 17:45:56 -0400 Original-Received: from [199.232.76.173] (port=54139 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KicBH-0007kv-EM for emacs-devel@gnu.org; Wed, 24 Sep 2008 17:45:55 -0400 Original-Received: from ch-smtp02.sth.basefarm.net ([80.76.149.213]:40255) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KicBE-0005bU-Vl; Wed, 24 Sep 2008 17:45:53 -0400 Original-Received: from c83-254-151-87.bredband.comhem.se ([83.254.151.87]:63899 helo=[127.0.0.1]) by ch-smtp02.sth.basefarm.net with esmtp (Exim 4.68) (envelope-from ) id 1KicBC-0007Ri-8A; Wed, 24 Sep 2008 23:45:50 +0200 User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.9) Gecko/20071031 Thunderbird/2.0.0.9 Mnenhy/0.7.5.666 In-Reply-To: X-Enigmail-Version: 0.95.7 X-Antivirus: avast! (VPS 080924-0, 2008-09-24), Outbound message X-Antivirus-Status: Clean X-Originating-IP: 83.254.151.87 X-Scan-Result: No virus found in message 1KicBC-0007Ri-8A. X-Scan-Signature: ch-smtp02.sth.basefarm.net 1KicBC-0007Ri-8A 59ae7609786dd4984a2d2ace65037d37 X-detected-operating-system: by monty-python.gnu.org: GNU/Linux 2.6? (barebone, rare!) X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Original-Sender: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:104124 Archived-At: Richard M. Stallman wrote: > > The mechanism is just part of this. We also need an interface. There > > are lots of minor mode definitions, and we want them to be simple and > > clean. > > > > So please propose a change in minor mode definitions so as to do the > > job. Then we can evaluate it and maybe propose better alternatives. > > I think the suggestions above may be sufficient, but that might be just > because of lack of imagination/knowledge of Emacs ;-) > > Please show how you would change a few of the existing minor mode definitions > to specify what to do here. Good question. I am however not sure about it. What I am trying to do is discuss the structures needed - though I sometimes gives them as implementation examples. The only thing I am quite sure about is that for what I call "per buffer variables" we can use (put 'PER-BUF-VAR 'permanent-local t). But when it comes to "per major modes" I am a bit confused. I just realize that I made a mistake in my last post. I have (implicitly) spoken about two different types of "per major modes" variables; those that are reset every time a major mode function is called and those that should be resurrected when point comes to a major mode with the same major mode. I have tried to make this distinction because the user may want to set some buffer local variable for a major mode even in mumamo. I am not sure this is a good distinction however. I can see two ways to resolve it: either say that all such variables should be set in major mode hooks. Or just resurrect all buffer local variables (with some necessary exceptions) when arriving to a chunk with the same major mode. If switching to a new major mode just where setting some local variables this could be used instead of calling the major mode function when moving between chunks (after the major mode has been called once in the buffer and the buffer local values have been saved), but it is not clear to me whether this would work. What do you think?