From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Juanma Barranquero Newsgroups: gmane.emacs.devel Subject: Re: Defaults for elisp-mode files Date: Thu, 4 Oct 2012 18:24:05 +0200 Message-ID: References: <877gr7kory.fsf@uwakimon.sk.tsukuba.ac.jp> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 X-Trace: ger.gmane.org 1349401980 25645 80.91.229.3 (5 Oct 2012 01:53:00 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Fri, 5 Oct 2012 01:53:00 +0000 (UTC) Cc: emacs-devel@gnu.org To: Christopher Monsanto Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Fri Oct 05 03:53:04 2012 Return-path: Envelope-to: ged-emacs-devel@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 1TJx4O-0006Y7-8n for ged-emacs-devel@m.gmane.org; Fri, 05 Oct 2012 03:51:16 +0200 Original-Received: from localhost ([::1]:49704 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TJoEI-0002xs-60 for ged-emacs-devel@m.gmane.org; Thu, 04 Oct 2012 12:24:54 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:54729) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TJoEG-0002xN-CR for emacs-devel@gnu.org; Thu, 04 Oct 2012 12:24:53 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TJoEA-0007MM-H6 for emacs-devel@gnu.org; Thu, 04 Oct 2012 12:24:52 -0400 Original-Received: from mail-wi0-f171.google.com ([209.85.212.171]:51202) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TJoEA-0007Lp-Ay for emacs-devel@gnu.org; Thu, 04 Oct 2012 12:24:46 -0400 Original-Received: by mail-wi0-f171.google.com with SMTP id hj13so3616126wib.12 for ; Thu, 04 Oct 2012 09:24:45 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=1kKfqhubVuSm+d8wrrfaewg5lm+6f5QH46KKjcq4Pv8=; b=n2SUSotvitD7iYVE+qj7zC0bCylSER2qy2DgTbvybcSurtLGdotM696uUd7vuCMkNa DcRj9T8YG6jIWXI0J5PPpZGRPQlhofOrTSX2i+0xuypezXaWtsshWLW+pP4FrSHpVS6d bG2citTSikVLz5G0uKduM56Omb9lwQ3bQFPufMvzrQSTEdCJTHqkWPmbIAaUayvB8K14 5a3SPpUy3I0LPOAqxbH1cqpa8nWu4ZbynZtj62KlvTBZVAjmJu3a5dh5xORhi2Qk8sqc kZQcAe9LK/yFUuoDZfpunp6s3qkCamLhKl4nNxb3CAEQhmrehFZpDMUNBqjEbfmlesHV L8JQ== Original-Received: by 10.180.106.130 with SMTP id gu2mr14047311wib.20.1349367885380; Thu, 04 Oct 2012 09:24:45 -0700 (PDT) Original-Received: by 10.223.155.132 with HTTP; Thu, 4 Oct 2012 09:24:05 -0700 (PDT) In-Reply-To: X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 209.85.212.171 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.14 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-bounces+ged-emacs-devel=m.gmane.org@gnu.org Xref: news.gmane.org gmane.emacs.devel:154055 Archived-At: On Thu, Oct 4, 2012 at 5:37 PM, Christopher Monsanto wrote: > I know what directory local variables are :) :-) > They are loaded when > emacs visits a file (that is, to be opened in a buffer), not when > opened by the Lisp load primitive. To do what you are wanting for > lexical-binding, we would have to instrument load to read directory > locals, but that seems strange because none of the variables normally > set in directory locals have relevance to the semantics of LIsp > programs. Yes, I know, but the scaffolding is here. Introducing another mechanism seems messier than expanding what we already have. Or not, I'm not sure. Of course, I'm happily handwaving performance considerations, etc., not to mention that adding that (be through .dir-locals or another file) just for lexical-binding seems a bit heavy handed. But, if we have a (external-to-the-file) way to set variables for editing files, why not for compiling them? In fact, we already mix editing-time variables (like mode or tab-width) and compile-time variables (byte-compile-dynamic, generated-autoload-file, no-byte-compile, no-update-autoloads, lexical-binding itself) through the same mechanism. Juanma