From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: "CHANGED outside Customize" in frames customization group Date: Sun, 30 Dec 2007 17:58:44 -0500 Message-ID: References: <477616F3.8000003@gmx.at> <4777A62F.9080009@gmx.at> <4777E0F1.3080100@gmx.at> Reply-To: rms@gnu.org NNTP-Posting-Host: lo.gmane.org Content-Type: text/plain; charset=ISO-8859-15 X-Trace: ger.gmane.org 1199055720 18431 80.91.229.12 (30 Dec 2007 23:02:00 GMT) X-Complaints-To: usenet@ger.gmane.org NNTP-Posting-Date: Sun, 30 Dec 2007 23:02:00 +0000 (UTC) Cc: emacs-devel@gnu.org To: martin rudalics Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Mon Dec 31 00:02:14 2007 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 1J97Ac-0003aM-7e for ged-emacs-devel@m.gmane.org; Mon, 31 Dec 2007 00:02:14 +0100 Original-Received: from localhost ([127.0.0.1] helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1J97AG-0005dI-TY for ged-emacs-devel@m.gmane.org; Sun, 30 Dec 2007 18:01:52 -0500 Original-Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1J977G-0002ve-Co for emacs-devel@gnu.org; Sun, 30 Dec 2007 17:58:46 -0500 Original-Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1J977F-0002uW-PV for emacs-devel@gnu.org; Sun, 30 Dec 2007 17:58:45 -0500 Original-Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1J977F-0002uM-EE for emacs-devel@gnu.org; Sun, 30 Dec 2007 17:58:45 -0500 Original-Received: from fencepost.gnu.org ([140.186.70.10]) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1J977F-0007SG-6D for emacs-devel@gnu.org; Sun, 30 Dec 2007 17:58:45 -0500 Original-Received: from rms by fencepost.gnu.org with local (Exim 4.60) (envelope-from ) id 1J977E-0003yc-Ku; Sun, 30 Dec 2007 17:58:44 -0500 In-reply-to: <4777E0F1.3080100@gmx.at> (message from martin rudalics on Sun, 30 Dec 2007 19:18:25 +0100) 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:85713 Archived-At: `frame-notice-user-settings' may set the value of `default-frame-alist' overriding a saved or standard value. The value of `blink-cursor-mode' is not reset by Emacs. Ok, but why does that matter for this issue? > Delete them in the customization buffer, save your settings, restart > Emacs, and here they are again. > > That is arguably a bug, and maybe we should fix it. > However, I do not see that this bug is so grave > that we should conclude that `default-frame-alist' is > unsuitable for use with Custom. The bug causes the "CHANGED outside Customize ..." state. Here's an idea. We can create a new variable `command-args-frame-alist', and make the functions which obey `default-frame-alist' use `command-args-frame-alist' too. Settings such as `menu-bar-lines', which are set by arguments and X resources can go in `command-args-frame-alist', and would not affect `default-frame-alist'. One consequence would be that the values specified by command line options and X resources would override your customizations. That seems correct. Customizing `fringe-mode' calls `modify-all-frames-parameters' which sets `default-frame-alist'. I'm now told that `default-frame-alist' was CHANGED outside Customize although all I actually did was _customizing_ some option. The solution to that is just to inform Custom about the change, so it will realize that the change to `default-frame-alist' was made within Custom. It's just a bug, it just needs to be fixed. > If the problem is in some detail of the behavior of Custom when it is > used on `default-frame-alist', maybe we can fix that detail. > For instance, maybe those other commands should do somethingto inform > Custom of the changes, so that it looks like `default-frame-alist' > was set using Custom. Suppose I set and save a new value for `fringe-mode'. Should Emacs automatically set and save the new value for `default-frame-alist'? Maybe it should, but that would require a new Custom feature: dependencies, "If you save `foo', always save `bar' too".