emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: recent faces.el change


From: Richard Stallman
Subject: Re: recent faces.el change
Date: Sun, 30 Dec 2007 09:01:56 -0500

I revisited the 9/17 patch that you removed,
and saw why it caused another bug.

So I've redesigned the idea of the data structure.
Now if you call `face-spec-set' in the ordinary way
it puts a `face-override-spec' property on the face name.
When you make a new frame, or do certain other things,
that spec will be reapplied.

Thus, the idea now is that defface sets the basic spec,
and ordinary calls to `face-spec-set' set the override spec,
and the combination of the two determines what you actually get.

My idea is that the data structures that control the appearance of a
face should always be in a clearly-defined priority structure, and
that all operations to alter a face should affect a defined level in
that structure, so that the consequences for any and all affected
frames are well-defined.  This change takes us a step closer to that.

One part of the design which has not yet been clarified
is the relationship between the default (not specific frame)
face attributes and the face spec.  Should those attributes
override the face spec, or should they reflect the face spec?
The current design is still confused between those two ideas.
I expect there are some bugs due to this design incoherence.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]