From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Luc Teirlinck Newsgroups: gmane.emacs.devel Subject: Re: Documentation for custom-file - is not (load custom-file) needed? Date: Wed, 15 Dec 2004 18:48:02 -0600 (CST) Message-ID: <200412160048.iBG0m2W17018@raven.dms.auburn.edu> References: <200412140150.iBE1oTY02196@raven.dms.auburn.edu> <200412150251.iBF2pKb10852@raven.dms.auburn.edu> NNTP-Posting-Host: deer.gmane.org X-Trace: sea.gmane.org 1103158262 22847 80.91.229.6 (16 Dec 2004 00:51:02 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Thu, 16 Dec 2004 00:51:02 +0000 (UTC) Cc: johnw@gnu.org, emacs-devel@gnu.org Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Thu Dec 16 01:50:55 2004 Return-path: Original-Received: from lists.gnu.org ([199.232.76.165]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1Cejr4-0003HE-00 for ; Thu, 16 Dec 2004 01:50:55 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1Cek1I-0007mH-GE for ged-emacs-devel@m.gmane.org; Wed, 15 Dec 2004 20:01:28 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.33) id 1Cek0l-0007bY-JS for emacs-devel@gnu.org; Wed, 15 Dec 2004 20:00:55 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.33) id 1Cek0j-0007TO-0t for emacs-devel@gnu.org; Wed, 15 Dec 2004 20:00:53 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.33) id 1Cek0h-0007Rq-V5 for emacs-devel@gnu.org; Wed, 15 Dec 2004 20:00:51 -0500 Original-Received: from [131.204.53.104] (helo=manatee.dms.auburn.edu) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CejqJ-0004A5-Cw; Wed, 15 Dec 2004 19:50:07 -0500 Original-Received: from raven.dms.auburn.edu (raven.dms.auburn.edu [131.204.53.29]) by manatee.dms.auburn.edu (8.12.10/8.12.10) with ESMTP id iBG0o6Fu027759; Wed, 15 Dec 2004 18:50:06 -0600 (CST) Original-Received: (from teirllm@localhost) by raven.dms.auburn.edu (8.11.7p1+Sun/8.11.7) id iBG0m2W17018; Wed, 15 Dec 2004 18:48:02 -0600 (CST) X-Authentication-Warning: raven.dms.auburn.edu: teirllm set sender to teirllm@dms.auburn.edu using -f Original-To: rms@gnu.org In-reply-to: (message from Richard Stallman on Wed, 15 Dec 2004 18:20:25 -0500) 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: main.gmane.org gmane.emacs.devel:31189 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:31189 Richard Stallman wrote: initsplit may need to be changed to cope with the new behavior of Emacs. That is normal: something that overrides part of Emacs probably will need to be changed when that part of Emacs changes. All initsplit has to do is: (unless custom-file (setq custom-file user-initfile)) (If I understood correctly, setting `custom-file' non-nil will ensure this is the file that is going to be written into.) However, somebody who upgrades Emacs to 21.4 will usually not upgrade initsplit at the same time. Such a person is in for some surprise. All he has to do is `(setq custom-file "~/.emacs")', except that the user will not be aware of anything. (Unless he was able to find it buried in NEWS, which has grown huge, and understood the implications for initsplit.) It looks like I am not going to be able to convince you that this is a very bad idea. However, I hope that, if `custom-file' is not set, you are at least going to _ask_ the user before writing into any file he did not ask you to write into. Some people got very upset about Emacs adding a final newline behind their backs. Clobbering `custom-set-variables' forms behind the user's back would be substantially worse. By the way, what do you plan to do if Emacs is started with `emacs -q'? The user may load several files with `custom-set-variables' forms to add a set of customizations to his .emacs. Then he just nominally saves some option using Custom to make Custom write all the stuff into .emacs. So you save everything in the last file he loaded. What Emacs would do at present is write all of them into .emacs, which is probably also not what he wants. But that is why he loaded them. Sincerely, Luc.