From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!not-for-mail From: "Davis Herring" Newsgroups: gmane.emacs.devel Subject: RE: Eliminating a couple of independent face definitions Date: Tue, 8 Feb 2011 11:10:11 -0800 (PST) Message-ID: <47359.130.55.118.19.1297192211.squirrel@webmail.lanl.gov> References: <87oc6vm67v.fsf@stupidchicken.com><87vd12z77n.fsf@stupidchicken.com><87ipx289cu.fsf@nzebook.haselwarter.org> <1A6A06363E5F4274B2A00E2CA8A242D1@us.oracle.com> <1F1C73FF429943C6A882D1E03CC0BD23@us.oracle.com> <49261.130.55.132.54.1297173488.squirrel@webmail.lanl.gov> <5D5B90DE294D40CCAD7F3B1208A112E7@us.oracle.com> <44495.130.55.118.19.1297179279.squirrel@webmail.lanl.gov> <75C814214C254270ACD5F3E1F8DE9ED0@us.oracle.com> Reply-To: herring@lanl.gov NNTP-Posting-Host: lo.gmane.org Mime-Version: 1.0 Content-Type: text/plain;charset=iso-8859-1 Content-Transfer-Encoding: 8bit X-Trace: dough.gmane.org 1297192239 16758 80.91.229.12 (8 Feb 2011 19:10:39 GMT) X-Complaints-To: usenet@dough.gmane.org NNTP-Posting-Date: Tue, 8 Feb 2011 19:10:39 +0000 (UTC) Cc: 'Tim Cross' , emacs-devel@gnu.org, 'Philipp Haselwarter' To: "Drew Adams" Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Feb 08 20:10:29 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 1PmsxJ-0003Ww-II for ged-emacs-devel@m.gmane.org; Tue, 08 Feb 2011 20:10:29 +0100 Original-Received: from localhost ([127.0.0.1]:46378 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1PmsxI-00057C-N6 for ged-emacs-devel@m.gmane.org; Tue, 08 Feb 2011 14:10:28 -0500 Original-Received: from [140.186.70.92] (port=60392 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Pmsx9-00055v-5J for emacs-devel@gnu.org; Tue, 08 Feb 2011 14:10:20 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1Pmsx8-0007nT-1T for emacs-devel@gnu.org; Tue, 08 Feb 2011 14:10:19 -0500 Original-Received: from proofpoint2.lanl.gov ([204.121.3.26]:44864) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1Pmsx7-0007nL-Ps for emacs-devel@gnu.org; Tue, 08 Feb 2011 14:10:17 -0500 Original-Received: from mailrelay1.lanl.gov (mailrelay1.lanl.gov [128.165.4.101]) by proofpoint2.lanl.gov (8.14.3/8.14.3) with ESMTP id p18KbLEJ016401; Tue, 8 Feb 2011 13:37:21 -0700 Original-Received: from localhost (localhost.localdomain [127.0.0.1]) by mailrelay1.lanl.gov (Postfix) with ESMTP id 9FB721616AD; Tue, 8 Feb 2011 12:10:11 -0700 (MST) X-NIE-2-Virus-Scanner: amavisd-new at mailrelay1.lanl.gov Original-Received: from webmail1.lanl.gov (webmail1.lanl.gov [128.165.4.106]) by mailrelay1.lanl.gov (Postfix) with ESMTP id 8C2191616AC; Tue, 8 Feb 2011 12:10:11 -0700 (MST) Original-Received: by webmail1.lanl.gov (Postfix, from userid 48) id 803881CA82EC; Tue, 8 Feb 2011 12:10:11 -0700 (MST) Original-Received: from 130.55.118.19 (SquirrelMail authenticated user 196434) by webmail.lanl.gov with HTTP; Tue, 8 Feb 2011 11:10:11 -0800 (PST) In-Reply-To: <75C814214C254270ACD5F3E1F8DE9ED0@us.oracle.com> User-Agent: SquirrelMail/1.4.8-5.el5_4.10.lanl3 X-Priority: 3 (Normal) Importance: Normal X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10432:5.2.15, 1.0.148, 0.0.0000 definitions=2011-02-08_05:2011-02-08, 2011-02-08, 1970-01-01 signatures=0 X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 204.121.3.26 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:135767 Archived-At: > That comes back to my earlier suggestion of "inheriting" from constant > (uncustomizable) "faces". I don't see the point in having anything be uncustomizable, though -- just give it a name `function-name-base' and perhaps a docstring that says "customize only if you want a global effect; otherwise customize the inheritors". More on this idea below. > A user might well want to customize A, but without having repercussions > elsewhere. S?he cannot do that, and that fact will affect whether s?he > ultimately "wants" to customize A. After becoming fully aware of the > inheritance relations, that is. ;-) No, they can't want that (barring simple confusion). The important bit is that no code uses A directly for anything, ever. The code uses D (and B) and thus uses A's attributes, but it never uses A. If the user wants just D to be different, they customize it (to override some/all of what it inherits from A, or to inherit from something else entirely). If they choose to customize A it is _because_ they want everything changed along with it; they are preferring "consistency" to "specificity". As for becoming aware, that's why the convention of "this face exists solely for inheritance" must be specified. But that's not hard for the user to notice, so I don't consider it a problem. Davis -- This product is sold by volume, not by mass. If it appears too dense or too sparse, it is because mass-energy conversion has occurred during shipping.