From mboxrd@z Thu Jan 1 00:00:00 1970 Path: main.gmane.org!not-for-mail From: Miles Bader Newsgroups: gmane.emacs.devel Subject: Re: Buffer-local faces Date: Tue, 4 May 2004 10:02:41 -0400 Sender: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Message-ID: <20040504140241.GB23709@fencepost> References: <20040503130350.GA1929@fencepost> <20040503232700.GB9451@fencepost> <87hduwyccu.fsf@mail.jurta.org> <20040504082236.GA21306@fencepost> NNTP-Posting-Host: deer.gmane.org Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii X-Trace: sea.gmane.org 1083679673 5372 80.91.224.253 (4 May 2004 14:07:53 GMT) X-Complaints-To: usenet@sea.gmane.org NNTP-Posting-Date: Tue, 4 May 2004 14:07:53 +0000 (UTC) Cc: Juri Linkov , emacs-devel@gnu.org, Miles Bader Original-X-From: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Tue May 04 16:07:42 2004 Return-path: Original-Received: from quimby.gnus.org ([80.91.224.244]) by deer.gmane.org with esmtp (Exim 3.35 #1 (Debian)) id 1BL0aE-0007rH-00 for ; Tue, 04 May 2004 16:07:42 +0200 Original-Received: from monty-python.gnu.org ([199.232.76.173]) by quimby.gnus.org with esmtp (Exim 3.35 #1 (Debian)) id 1BL0aE-0000kR-00 for ; Tue, 04 May 2004 16:07:42 +0200 Original-Received: from localhost ([127.0.0.1] helo=monty-python.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BL0WQ-0003P0-SR for emacs-devel@quimby.gnus.org; Tue, 04 May 2004 10:03:46 -0400 Original-Received: from list by monty-python.gnu.org with tmda-scanned (Exim 4.30) id 1BL0Vu-0003NB-Tk for emacs-devel@gnu.org; Tue, 04 May 2004 10:03:14 -0400 Original-Received: from mail by monty-python.gnu.org with spam-scanned (Exim 4.30) id 1BL0VO-00038l-1H for emacs-devel@gnu.org; Tue, 04 May 2004 10:03:13 -0400 Original-Received: from [199.232.76.164] (helo=fencepost.gnu.org) by monty-python.gnu.org with esmtp (Exim 4.30) id 1BL0VN-00038Q-Li for emacs-devel@gnu.org; Tue, 04 May 2004 10:02:41 -0400 Original-Received: from miles by fencepost.gnu.org with local (Exim 4.24) id 1BL0VN-00070L-5E; Tue, 04 May 2004 10:02:41 -0400 Original-To: Stefan Monnier Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.3.28i Blat: Foop X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.4 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+emacs-devel=quimby.gnus.org@gnu.org Xref: main.gmane.org gmane.emacs.devel:22709 X-Report-Spam: http://spam.gmane.org/gmane.emacs.devel:22709 On Tue, May 04, 2004 at 09:37:52AM -0400, Stefan Monnier wrote: > > It's a much less obvious operation (what does subtracting red from black > > yield? [Ok, maybe cyan :-]) and I can't offhand think of any obvious uses > > for it.... > > As I suggested, we might want to add a notion of color composition, so we > could have a face that make the foreground darker, or redder, or ... Yeah, that's one of the areas I've wanted to work on -- I was thinking about things like `darker'/`lighter'/ `more-intense'/`less-intense' color operators (the latter two automatically choosing darker or lighter depending on the context), plus `shaded' versions of the same operators (e.g., doing the operation with a particular tint). The reason is so that many faces could be written to be independent of particular background colors; currently many faces only work well in a single context (as evidenced by the occasional bickering over face colors :-) -- with such operators, they could even work well in dynamic contexts thanks to face merging. I don't know about CMY vs. RGB though -- in my somewhat limited experience, _all_ color systems suck for this of thing... :-) > I'm not sure what's a useful generalization, maybe a "filtered inheritance" > where you can specify which attributes are inherited from a given parent. Yeah, the question is what's a good way to specify it? It's always tempting to just throw in lisp code, but we've seen the messes that gets us into with the signal handlers &c... -Miles -- `There are more things in heaven and earth, Horatio, Than are dreamt of in your philosophy.'