From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Richard Stallman Newsgroups: gmane.emacs.devel Subject: Re: reducing defface redundancy Date: Mon, 8 Jul 2002 12:20:46 -0600 (MDT) Sender: emacs-devel-admin@gnu.org Message-ID: <200207081820.g68IKkT12950@aztec.santafe.edu> References: <877kn3qczq.fsf@tc-1-100.kawasaki.gol.ne.jp> <871yd9q09b.fsf@tc-1-100.kawasaki.gol.ne.jp> <200204220747.g3M7lo301995@aztec.santafe.edu> <200204230024.g3N0OH702333@aztec.santafe.edu> <200204241754.g3OHsIm03235@aztec.santafe.edu> Reply-To: rms@gnu.org NNTP-Posting-Host: localhost.gmane.org X-Trace: main.gmane.org 1026152472 22445 127.0.0.1 (8 Jul 2002 18:21:12 GMT) X-Complaints-To: usenet@main.gmane.org NNTP-Posting-Date: Mon, 8 Jul 2002 18:21:12 +0000 (UTC) Cc: abraham@dina.kvl.dk, emacs-devel@gnu.org Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by main.gmane.org with esmtp (Exim 3.33 #1 (Debian)) id 17Rd8K-0005pu-00 for ; Mon, 08 Jul 2002 20:21:12 +0200 Original-Received: from fencepost.gnu.org ([199.232.76.164]) by quimby.gnus.org with esmtp (Exim 3.12 #1 (Debian)) id 17RdGN-0003Tq-00 for ; Mon, 08 Jul 2002 20:29:31 +0200 Original-Received: from localhost ([127.0.0.1] helo=fencepost.gnu.org) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17Rd8p-0007UV-00; Mon, 08 Jul 2002 14:21:43 -0400 Original-Received: from pele.santafe.edu ([192.12.12.119]) by fencepost.gnu.org with esmtp (Exim 3.35 #1 (Debian)) id 17Rd7w-0007QI-00; Mon, 08 Jul 2002 14:20:48 -0400 Original-Received: from aztec.santafe.edu (aztec [192.12.12.49]) by pele.santafe.edu (8.11.6+Sun/8.11.6) with ESMTP id g68IKqV26859; Mon, 8 Jul 2002 12:20:52 -0600 (MDT) Original-Received: (from rms@localhost) by aztec.santafe.edu (8.10.2+Sun/8.9.3) id g68IKkT12950; Mon, 8 Jul 2002 12:20:46 -0600 (MDT) X-Authentication-Warning: aztec.santafe.edu: rms set sender to rms@aztec using -f Original-To: miles@gnu.org In-Reply-To: (message from Miles Bader on 03 Jul 2002 15:38:43 +0900) Errors-To: emacs-devel-admin@gnu.org X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.0.11 Precedence: bulk List-Help: List-Post: List-Subscribe: , List-Id: Emacs development discussions. List-Unsubscribe: , List-Archive: Xref: main.gmane.org gmane.emacs.devel:5579 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:5579 With the suggested algorithm, if he changes `:inherit mode-line', `:underline t', or adds a previously unused attribute, that change will apply to all environments. However, if he changes `:background ...', the change will only apply to the relevant branch of the `conditional' in the defface spec. So basically the rewritten face spec will look like the original face-spec except with the user's changes integrated. What do you think of this suggestion? I think users will find this surprising and inconsistent. In addition, we want to have buffer-local face definitions, and that will make this issue even more complex. This is an instance of the general conflict between WYSIWYG editing and conditional formatting commands. That suggests we should completely separate the WYSIWYG layer from the conditional command later. Here's a proposal. You can customize a face for the current display, for the current session, looking at a simple list of attributes, but you cannot save this. Or you can customize the conditional commands that define the face, by looking at the whole structure of them. That kind of customization you can save if you wish.