Jan Vroonhof <vroonhof(a)math.ethz.ch> writes:
> wmperry(a)aventail.com (William M. Perry) writes:
> > It merges all the attributes from the faces at a specific point, and merges
> > in 'default' then realizes it. By the time realize_x_face() is called, it
> > is always fully specified. I could just as easily have written:
> So the fallbacks are implicit? That changes the definition of what a
> face is. Did they change the text properties interface or is more than
> one face at a single location only possible with overlays?
You've been able to use multiple faces with text properties for quite a
while. Emacs/W3 uses this all over the place, and has for ages.
A face is now (and really has always been) a collection of attributes. It
just happens that the set of attributes is bigger/saner, and inheritance
happens at face realization time, not face creation time.
> It seems to me that in such a setup you could just as well just do
> away with the concept of face all together.
> All this would me much easier if we actually had access to the damn
> thing :-)
Some of us do. :) I just with gerd had followed the API in font.el, but
you can't have everything I guess. :)