From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Ted Zlatanov Newsgroups: gmane.emacs.devel Subject: Re: :file keyword for Customize Date: Thu, 08 May 2008 12:41:27 -0500 Organization: =?utf-8?B?0KLQtdC+0LTQvtGAINCX0LvQsNGC0LDQvdC+0LI=?= @ Cienfuegos Message-ID: <86d4nwr8vs.fsf@lifelogs.com> References: <004101c8b129$788cd490$0ab32382@us.oracle.com> <48232D95.3020304@gnu.org> <004501c8b12c$d10ce620$0ab32382@us.oracle.com> <48233394.5060205@gnu.org> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: ger.gmane.org 1210268324 26443 80.91.229.12 (8 May 2008 17:38:44 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Thu, 8 May 2008 17:38:44 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu May 08 19:39:19 2008 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 1JuA5H-0004oF-DE for ged-emacs-devel@m.gmane.org; Thu, 08 May 2008 19:39:11 +0200 Original-Received: from localhost ([127.0.0.1]:34475 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JuA4Z-0003JI-8n for ged-emacs-devel@m.gmane.org; Thu, 08 May 2008 13:38:27 -0400 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1JuA4V-0003J4-6N for emacs-devel@gnu.org; Thu, 08 May 2008 13:38:23 -0400 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1JuA4T-0003Im-RH for emacs-devel@gnu.org; Thu, 08 May 2008 13:38:22 -0400 Original-Received: from [199.232.76.173] (port=35271 helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1JuA4T-0003Ij-Js for emacs-devel@gnu.org; Thu, 08 May 2008 13:38:21 -0400 Original-Received: from main.gmane.org ([80.91.229.2]:41996 helo=ciao.gmane.org) by monty-python.gnu.org with esmtps (TLS-1.0:RSA_AES_256_CBC_SHA1:32) (Exim 4.60) (envelope-from ) id 1JuA4S-0005nR-LH for emacs-devel@gnu.org; Thu, 08 May 2008 13:38:21 -0400 Original-Received: from list by ciao.gmane.org with local (Exim 4.43) id 1JuA4R-0007ot-1C for emacs-devel@gnu.org; Thu, 08 May 2008 17:38:19 +0000 Original-Received: from 38.98.147.130 ([38.98.147.130]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 08 May 2008 17:38:19 +0000 Original-Received: from tzz by 38.98.147.130 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Thu, 08 May 2008 17:38:19 +0000 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 29 Original-X-Complaints-To: usenet@ger.gmane.org X-Gmane-NNTP-Posting-Host: 38.98.147.130 X-Face: bd.DQ~'29fIs`T_%O%C\g%6jW)yi[zuz6; d4V0`@y-~$#3P_Ng{@m+e4o<4P'#(_GJQ%TT= D}[Ep*b!\e,fBZ'j_+#"Ps?s2!4H2-Y"sx" User-Agent: Gnus/5.110009 (No Gnus v0.9) Emacs/23.0.60 (gnu/linux) Cancel-Lock: sha1:VqPwYQnAQXQ8fmADiDeasEXgydE= X-detected-kernel: by monty-python.gnu.org: Linux 2.6, seldom 2.4 (older, 4) 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:96805 Archived-At: On Thu, 08 May 2008 18:08:36 +0100 Jason Rumney wrote: JR> Drew Adams wrote: >> The granularity for Customize customizations, in terms of persistence and >> loading is currently all or none: everything is in one file (`custom-file' or >> `init-file'). JR> JDEE at least, saves its own customizations in project files in the JR> local directory. I think Gnus also lets you save your Gnus related JR> customizations in .gnus. That is why I suggested looking at what those JR> packages do. Gnus has two kinds of settings: normal ELisp variables, customized and used as usual, and newsrc settings, which go into .newsrc.eld. There are a few others, like the Gnus registry and score files, but generally the two groups above are the major ones. There's some magic with the group/topic parameters that I can explain but it wouldn't matter much for what Drew proposed. .gnus.el is just ELisp code, nothing special. Gnus doesn't set anything special for the ELisp variables it defines, so if they are customized, they will be saved in the usual places. FWIW, I would make custom-file accept an alist of defgroup/defcustom symbol name regex, associated with a file name or a function. That puts the power in the user's hands, yet allows package authors to add to the alist. The big win is that no special :file keyword is needed, and all existing packages will work with or without this special settings. Ted