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: Thu, 25 Sep 2008 01:09:28 +0200 Message-ID: <48DAC8A8.6020304@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> <48D8BB40.6060806@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 1222297797 24350 80.91.229.12 (24 Sep 2008 23:09:57 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Wed, 24 Sep 2008 23:09:57 +0000 (UTC) Cc: dmhouse@gmail.com, emacs-devel@gnu.org, monnier@iro.umontreal.ca, aaron.s.hawley@gmail.com To: rms@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Sep 25 01:10:54 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 1KidVR-0000Fw-VN for ged-emacs-devel@m.gmane.org; Thu, 25 Sep 2008 01:10:50 +0200 Original-Received: from localhost ([127.0.0.1]:40197 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KidUP-0001yk-MM for ged-emacs-devel@m.gmane.org; Wed, 24 Sep 2008 19:09:45 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1KidUJ-0001x6-T0 for emacs-devel@gnu.org; Wed, 24 Sep 2008 19:09:39 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1KidUI-0001vH-7M for emacs-devel@gnu.org; Wed, 24 Sep 2008 19:09:38 -0400 Original-Received: from [199.232.76.173] (port=33859 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1KidUH-0001v8-V9 for emacs-devel@gnu.org; Wed, 24 Sep 2008 19:09:37 -0400 Original-Received: from ch-smtp01.sth.basefarm.net ([80.76.149.212]:36419) by monty-python.gnu.org with esmtps (TLS-1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1KidUG-0007fm-9L; Wed, 24 Sep 2008 19:09:36 -0400 Original-Received: from c83-254-151-87.bredband.comhem.se ([83.254.151.87]:61257 helo=[127.0.0.1]) by ch-smtp01.sth.basefarm.net with esmtp (Exim 4.68) (envelope-from ) id 1KidUE-0001PS-4G; Thu, 25 Sep 2008 01:09:34 +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-1, 2008-09-24), Outbound message X-Antivirus-Status: Clean X-Originating-IP: 83.254.151.87 X-ACL-Warn: Too high rate of unknown addresses received from you X-Scan-Result: No virus found in message 1KidUE-0001PS-4G. X-Scan-Signature: ch-smtp01.sth.basefarm.net 1KidUE-0001PS-4G 833cff3300428579ad473785b4668133 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:104126 Archived-At: Richard M. Stallman wrote: > The "idle sorting" mechanism in majmodpri.el is asking for trouble. > Loading a file should _fully_ install the code in that file. To leave > _anything_ for later is unreliable. > > I'm not sure whether majmodpri is a useful feature, because I am not > convinced there is a real problem to be solved. What is a real case > of the problem, and is there another solution? > > But if we want such a facility, we should implement it right. The > right way is to insert these elements in the proper position the first > time. I think I am beeing a bit stupid here. I should have said before that the implementation in majmodpri.el is for the case that this feature is not included in Emacs. If it is included in Emacs it can be done much more simple. What majmodpri.el does is effectively that it implements a priority list beside the lists used by `normal-mode'. (And it makes this list customizable.) If we include this in Emacs I would suggest something similar to what I have used in mumamo in `mumamo-major-modes'. This is for a different purpose but the structure of the problem is sufficiently similar. That list is used for converting what I call major mode specifiers to major modes. Major modes are used when definiing multi major modes. An example is the major mode specifier for javascript. I call this javascript-mode. In mumamo-major-modes this is used as a key to find the major mode to use: (defcustom mumamo-major-modes '( (javascript-mode javascript-mode js2-fl-mode ecmascript-mode) (java-mode jde-mode java-mode) ) If a multi major mode has a major mode specifier for a chunk that is javascript-mode this will result in a lookup in this list and give the result (javascript-mode js2-fl-mode ecmasript-mode). These three are major modes ordered in priority order. If javascript-mode is available that will be used, else js2-fl-mode etc. A similar implementation can be used for major mode priorities for normal-mode. Then there is no need at all to change the lists normal-mode uses (but I have to do that in majmodpri.el because I can't change the way normal-mode behaves).