From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Drew Adams" Newsgroups: gmane.emacs.bugs Subject: bug#11106: 24.0.94; enhancement request: have autoload treat faces like it does options Date: Tue, 27 Mar 2012 17:31:42 -0700 Message-ID: <54253A206B4248F99B4AD830266E374C@us.oracle.com> References: <7134C9FED9064A64BCE682995B981BB6@us.oracle.com> NNTP-Posting-Host: plane.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Trace: dough.gmane.org 1332895963 23714 80.91.229.3 (28 Mar 2012 00:52:43 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Wed, 28 Mar 2012 00:52:43 +0000 (UTC) To: <11106@debbugs.gnu.org> Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane.org@gnu.org Wed Mar 28 02:52:40 2012 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 1SCh7u-0003Dv-9v for geb-bug-gnu-emacs@m.gmane.org; Wed, 28 Mar 2012 02:52:38 +0200 Original-Received: from localhost ([::1]:50185 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SCgpE-0007cW-7f for geb-bug-gnu-emacs@m.gmane.org; Tue, 27 Mar 2012 20:33:20 -0400 Original-Received: from eggs.gnu.org ([208.118.235.92]:33060) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SCgoh-0006VM-BS for bug-gnu-emacs@gnu.org; Tue, 27 Mar 2012 20:32:48 -0400 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SCgoe-0008Us-4c for bug-gnu-emacs@gnu.org; Tue, 27 Mar 2012 20:32:46 -0400 Original-Received: from debbugs.gnu.org ([140.186.70.43]:35174) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SCgoe-0008Ug-1j for bug-gnu-emacs@gnu.org; Tue, 27 Mar 2012 20:32:44 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.72) (envelope-from ) id 1SChIv-0001fY-Pg for bug-gnu-emacs@gnu.org; Tue, 27 Mar 2012 21:04:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: "Drew Adams" Original-Sender: debbugs-submit-bounces@debbugs.gnu.org Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Wed, 28 Mar 2012 01:04:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 11106 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: Original-Received: via spool by 11106-submit@debbugs.gnu.org id=B11106.13328966066375 (code B ref 11106); Wed, 28 Mar 2012 01:04:01 +0000 Original-Received: (at 11106) by debbugs.gnu.org; 28 Mar 2012 01:03:26 +0000 Original-Received: from localhost ([127.0.0.1]:42006 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SChIL-0001el-AG for submit@debbugs.gnu.org; Tue, 27 Mar 2012 21:03:26 -0400 Original-Received: from acsinet15.oracle.com ([141.146.126.227]:31560) by debbugs.gnu.org with esmtp (Exim 4.72) (envelope-from ) id 1SChI4-0001eQ-P2 for 11106@debbugs.gnu.org; Tue, 27 Mar 2012 21:03:23 -0400 Original-Received: from ucsinet22.oracle.com (ucsinet22.oracle.com [156.151.31.94]) by acsinet15.oracle.com (Sentrion-MTA-4.2.2/Sentrion-MTA-4.2.2) with ESMTP id q2S0VmZH031420 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for <11106@debbugs.gnu.org>; Wed, 28 Mar 2012 00:31:49 GMT Original-Received: from acsmt356.oracle.com (acsmt356.oracle.com [141.146.40.156]) by ucsinet22.oracle.com (8.14.4+Sun/8.14.4) with ESMTP id q2S0VmR4028653 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO) for <11106@debbugs.gnu.org>; Wed, 28 Mar 2012 00:31:48 GMT Original-Received: from abhmt115.oracle.com (abhmt115.oracle.com [141.146.116.67]) by acsmt356.oracle.com (8.12.11.20060308/8.12.11) with ESMTP id q2S0VlfJ023612 for <11106@debbugs.gnu.org>; Tue, 27 Mar 2012 19:31:47 -0500 Original-Received: from dradamslap1 (/10.159.35.243) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Tue, 27 Mar 2012 17:31:47 -0700 X-Mailer: Microsoft Office Outlook 11 In-Reply-To: <7134C9FED9064A64BCE682995B981BB6@us.oracle.com> Thread-Index: Ac0MdVwv1fa3weI9T2irxJRiyTpQMAAAyVHg X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.6157 X-Source-IP: ucsinet22.oracle.com [156.151.31.94] X-CT-RefId: str=0001.0A090204.4F725BF5.0062,ss=1,re=0.000,fgs=0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.13 Precedence: list X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) X-Received-From: 140.186.70.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:58220 Archived-At: I wasn't as clear as I could have been. Maybe this will help. There are I guess two requests here: 1. Handle faces (deffaces) similarly to how options (defcustoms) are handled. 2. Have function `autoload' handle both faces and options via its TYPE arg. #2 would mean that the face attributes (hereafter default "value" of the face) and the option default value would not be computed by function `autoload'. Instead, that function would just cause the proper Lisp file to be loaded whenever the face or option was first accessed. If something tries to use the face or option, and it is not yet defined, the autoload would kick in and the file would be loaded to define it. #2 is helpful (to me) because it means that actually assigning a value would be done only when the library is loaded, not when the autoload form is created. For example, ;;;###autoload (autoload 'a-face "a-file" nil 'face) would put in place the triggers that would cause file "a-file.el[c]" to be loaded when face `a-face' is first accessed (is still undefined). That load would then cause the face to be defined, by evaluating its default "value" sexp. Similarly for user options. What I'm describing is in effect what happens for autoloaded functions (IIUC). It is the loading of the file that actually defines the functions (not the creation of the autoloads or the loading of a file of autoloads). I fear I'm not being clear enough. Perhaps because it's still fuzzy to me. But maybe it will make sense to someone.