emacs-devel
[Top][All Lists]
Advanced

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

RE: link appearance and soft face properties


From: Drew Adams
Subject: RE: link appearance and soft face properties
Date: Sun, 19 Jun 2005 10:47:58 -0700

        What about having a :link face attribute (property) that is
        soft, not hard?

    What does "soft" or "hard" mean, here?

Soft: The appearance of a soft text property like :link would be whatever a
user says it is. By default, it might be a set of properties with just one
member: the :underline property.

Hard: The appearance of a hard text property like :underline always means
the same thing: the text is underlined. Users can decide to use it or not
use it, but they cannot redefine it.

        That way, a single (possibly user) definition of the :link
        attribute would automatically affect any faces that have
        that property. And it would also be easy (including for
        users) to selectively apply the :link property to face
        or mouse-face or both.

    I think this can be done by making these faces inherit
    from a face named `link'.

I thought that might be the case. Instead of "soft" text properties (which
would be definable as a set of soft and hard text properties), an inheriting
face could be used. IOW, a face is already a set of text properties (you can
say "has" if you don't like "is"), and we already have face inheritance.

A potential difference I see is that the thing that inherits is a face,
rather than a text property. In the present case, we would define (and use
for all links) a `link' face that inherits certain properties (e.g.
:underline) by default. I'm not sure that would be equivalent in flexibility
to defining an inheriting (= "soft") text property :link, but perhaps it
would be.

If we can do this (predefine links in a soft way) using face inheritance,
then why don't we (after the release), in order to give people more
flexibility?






reply via email to

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