emacs-devel
[Top][All Lists]
Advanced

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

Re: 23.0.50; face-problems with multy-tty


From: Johan Bockgård
Subject: Re: 23.0.50; face-problems with multy-tty
Date: Fri, 28 Sep 2007 00:57:40 +0200
User-agent: Gnus/5.110007 (No Gnus v0.7) Emacs/22.1.50 (gnu/linux)

Richard Stallman <address@hidden> writes:

>     But nil is not a valid option for many of the attributes
>
>     (set-face-attribute 'highlight nil :family nil)
>       => Wrong type argument: stringp, nil
>
> You are right.  Does  :unspecified work?

No (this is just what face-spec-reset-face does, btw). A value of
`unspecified' given to set-face-attribute is replaced with
:ignore-defface in face-new-frame-defaults.

   (set-face-attribute 'highlight nil :family 'unspecified)

   =>

   face-new-frame-defaults
      = (... (highlight . [face :ignore-defface unspecified ...]) ...)
                                ^^^^^^^^^^^^^^^

This does not have the right effect (`unspecified' means "no global
definition", whereas :ignore-defface means "the global definition is
`unspecified'").

See

2005-11-20  Chong Yidong  <address@hidden>

        * xfaces.c (Finternal_set_lisp_face_attribute):
        Use :ignore-defface for new frame defaults when `unspecified' is
        supplied.
        (Finternal_get_lisp_face_attribute): Hide :ignore-defface.
        (merge_face_vectors): Don't do :ignore-defface overwriting here.
        (Finternal_merge_in_global_face): Do it here.

The change was made in response to

Re: problems with face-spec-reset-face and set-face-attribute
<address@hidden>
http://lists.gnu.org/archive/html/emacs-pretest-bug/2005-10/msg00208.html


AFAICS, there's currently no way to get a value of `unspecified' into
face-new-frame-defaults using set-face-attribute (set-face-attribute
accepts both `unspecified' and :ignore-defface but they both mean the
latter). (Attributes can be reset to `unspecified' in
face-new-frame-defaults with (internal-make-lisp-face FACE), but that is
kind of ugly.)

-- 
Johan Bockgård





reply via email to

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