From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: "Robert J. Chassell" Newsgroups: gmane.emacs.devel Subject: Re: Customize buttons that change user's customfileshouldaskforconfirmation Date: Wed, 9 Feb 2005 20:31:55 +0000 (UTC) Message-ID: References: Reply-To: bob@rattlesnake.com NNTP-Posting-Host: main.gmane.org X-Trace: sea.gmane.org 1107981177 5897 80.91.229.2 (9 Feb 2005 20:32:57 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Wed, 9 Feb 2005 20:32:57 +0000 (UTC) Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Wed Feb 09 21:32:57 2005 Original-Received: from lists.gnu.org ([199.232.76.165]) by ciao.gmane.org with esmtp (Exim 4.43) id 1CyyVt-0000yV-DW for ged-emacs-devel@m.gmane.org; Wed, 09 Feb 2005 21:32:41 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1CyykU-0000qe-Au for ged-emacs-devel@m.gmane.org; Wed, 09 Feb 2005 15:47:46 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Cyyjf-0000dT-W8 for emacs-devel@gnu.org; Wed, 09 Feb 2005 15:46:57 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Cyyjc-0000b7-EA for emacs-devel@gnu.org; Wed, 09 Feb 2005 15:46:52 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Cyyjc-0000aq-Ay for emacs-devel@gnu.org; Wed, 09 Feb 2005 15:46:52 -0500 Original-Received: from [69.168.108.225] (helo=rattlesnake.com) by monty-python.gnu.org with esmtp (Exim 4.34) id 1CyyVO-0004hV-0N for emacs-devel@gnu.org; Wed, 09 Feb 2005 15:32:10 -0500 Original-Received: by rattlesnake.com via sendmail from stdin id (Debian Smail3.2.0.115) Wed, 9 Feb 2005 20:31:55 +0000 (UTC) Original-To: emacs-devel@gnu.org In-reply-to: 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 X-MailScanner-To: ged-emacs-devel@m.gmane.org Xref: main.gmane.org gmane.emacs.devel:33154 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:33154 I don't understand this. Set All (F=>C) means set all current values (C) to the values shown in the edit fields (F). What does this have to do with the init file? Everything is written to the init file (or files loaded from it); that is where customization forms are evaluated. So `Set All (F=>C)' means to set in the init file those values changed by customize. Or are you suggesting that the form be evaluated in some place a user cannot see? I can understand doing that; but it makes it less likely that the person will learn to write simple forms. Customization is, after all, an automatic expression writing and evaluating function. Not only do people like to see what the Lisp expression looks like, we want to encourage them to do so! After all, that leads to hacking. The customize automatic expression writing action is rather like the (not very good) function that came with Calc mode more than a decade ago and since been removed. The difference is that the Calc mode automatic expression writing function wrote `defun' expressions and could handle anything you could put in a keyboard macro of the time; the Customization functions write `custom-set-*' expressions instead. Presumably, `Save All' means simply `automatically write custom-set-* values into your initialization file, write that file, and then evaluate it'. I was with you up until the last clause, "and then evaluate it". Well, when you `Save for Future Sessions' the new value takes effect right away. The expression is evaluated. At least, that is what happens now. (I just checked.) So save `all' must mean that _all_ customizations are saved and also evaluated. That means saving and evaluating your .emacs file. Perhaps the button should be reworded to `Set and Save All'. That is clearer to me; I prefer this wording. But it takes more room. The help (or `tip') on the button or function should explain that saving the init file also involves evaluating it, so the new valued become effective, that is, they become set as well as saved. Actually, the more I think about it, the more I like the rewording to `Set and Save All' even if it is longer. After all, you can set values in your initialization file without saving it; and you can save it without evaluating it. You have led to a good point. -- Robert J. Chassell bob@rattlesnake.com GnuPG Key ID: 004B4AC8 http://www.rattlesnake.com http://www.teak.cc