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: user-controlled load-path extension: load-dir Date: Tue, 08 Mar 2011 15:38:02 -0600 Organization: =?utf-8?B?0KLQtdC+0LTQvtGAINCX0LvQsNGC0LDQvdC+0LI=?= @ Cienfuegos Message-ID: <874o7ds37p.fsf@lifelogs.com> References: <87ei6mz24h.fsf@lifelogs.com> <20110306072147.GA11067@event-horizon.homenet> <871v2i525h.fsf@lifelogs.com> <87oc5lx607.fsf@lifelogs.com> NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain X-Trace: dough.gmane.org 1299620321 8949 80.91.229.12 (8 Mar 2011 21:38:41 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 8 Mar 2011 21:38:41 +0000 (UTC) To: emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Mar 08 22:38:34 2011 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.69) (envelope-from ) id 1Px4bx-0006NA-Eu for ged-emacs-devel@m.gmane.org; Tue, 08 Mar 2011 22:38:33 +0100 Original-Received: from localhost ([127.0.0.1]:38291 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Px4bw-0001O9-VP for ged-emacs-devel@m.gmane.org; Tue, 08 Mar 2011 16:38:33 -0500 Original-Received: from [140.186.70.92] (port=39742 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Px4bq-0001NH-5O for emacs-devel@gnu.org; Tue, 08 Mar 2011 16:38:27 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Px4bo-0008Kn-EX for emacs-devel@gnu.org; Tue, 08 Mar 2011 16:38:25 -0500 Original-Received: from lo.gmane.org ([80.91.229.12]:46815) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Px4bo-0008KI-2M for emacs-devel@gnu.org; Tue, 08 Mar 2011 16:38:24 -0500 Original-Received: from list by lo.gmane.org with local (Exim 4.69) (envelope-from ) id 1Px4bk-0006HX-8g for emacs-devel@gnu.org; Tue, 08 Mar 2011 22:38:20 +0100 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 ; Tue, 08 Mar 2011 22:38:20 +0100 Original-Received: from tzz by 38.98.147.130 with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Tue, 08 Mar 2011 22:38:20 +0100 X-Injected-Via-Gmane: http://gmane.org/ Original-Lines: 79 Original-X-Complaints-To: usenet@dough.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.110014 (No Gnus v0.14) Emacs/24.0.50 (gnu/linux) Cancel-Lock: sha1:bXek8XIYllxEkrSy7ZBSA8/Fg8Q= X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 3) X-Received-From: 80.91.229.12 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:136921 Archived-At: On Tue, 08 Mar 2011 15:59:51 -0500 Stefan Monnier wrote: >>>> I think this proposal is really about code snippets that people would >>>> otherwise just cut and paste into their .emacs file. The average >>>> user's .emacs often winds up containing mostly code they found >>>> somewhere and use without really understanding it. Dropping each >>>> snippit in its own file would be a big help if the user ever did need >>>> to debug some problem with his init, or if he decided one day to >>>> actually learn elisp. SM> I'm far from convinced it's better for people to drop random chunks of SM> configuration into separate files rather than all in the .emacs file. >> It's not "better," it's what people already do. SM> I must be missing something. I see two different things on the web: SM> packages on the one hand and Elisp configuration chunks on the other. SM> The first come in files you can download, the other comes in SM>
...
elements in HTML pages which you can copy&paste. SM> My claim is that the first can be better handled by package.el or themes SM> and the other works just fine in .emacs. There is a third class: streams (or snippets) of code I don't want to keep inside my .emacs because I don't like to make it big. There are some users who will use and enjoy this functionality, even if other users won't. As I proposed it, it will be off by default so it only benefits those who enable it and won't harm those who don't. This kind of modularization doesn't make it to the web as much because it's usually specific to the user's needs. Here are some examples: http://www.emacswiki.org/emacs/JoelAdamson#toc5 http://www.io.com/~jimm/emacs_tips.html#my-dot-emacs http://www.emacswiki.org/emacs/DotEmacsModular https://github.com/technomancy/emacs-starter-kit http://www.emacswiki.org/emacs/InitSplit http://stackoverflow.com/questions/2079095/how-to-modularize-an-emacs-configuration It's a common need as you can see. In the Emacs core it will be easier to enable it, that's all. Otherwise the instructions have to be "install package load-dir, THEN do the rest" which is a bit more work, requires a network connection, etc. >> want to load them modularly. So I put them in the load-dir. Do I have >> to make 8 packages? And every time I update one of those files, do I >> have to repackage it with a new version? That seems workable but >> tedious compared to the code proposed by Ben Key and Evans Winner. SM> If you're really talking about configuration code rather than packages, SM> then I tend to assume that people whose .emacs is so large as to need SM> modularization can figure out which kind of modularization they want and SM> implement (or copy&paste) the corresponding loop to load the various files. Yes, but you're assuming managing configuration modules in monolithic Emacs Lisp is the best way. Give us something simple and easy to manage the loop at the filesystem level, so we don't have to write it ourselves. SM> I'm not even sure why you'd want to "modularize" in this way: my .emacs SM> was fairly large but splitting it into separate files never seemed like SM> a good way to help, since I'd then have to figure out how to make C-s SM> and M-/ find matches in neighboring files. Instead I "split" it with SM> outline-minor-mode. For me it works better. I like small files; outline-minor-mode and folding-mode don't work for me. I suspect I'm not the only one. See the URLs above for a list of similar needs. >> If you're against including the load-dir in the core and enabling it by >> default, how about making it a GNU ELPA package so it's easily >> installable? SM> Such a package would be perfectly acceptable, yes. I'll work with Ben Key to do this in a package if you and Chong Yidong reject this functionality from the Emacs core. Ted