Mercurial > emacs
changeset 66979:05e8ff7121b4
mention :ignore-defface
author | Chong Yidong <cyd@stupidchicken.com> |
---|---|
date | Fri, 18 Nov 2005 02:51:12 +0000 |
parents | 40cc5f0fb379 |
children | 22899a514a1c |
files | etc/NEWS lispref/ChangeLog lispref/display.texi |
diffstat | 3 files changed, 22 insertions(+), 0 deletions(-) [+] |
line wrap: on
line diff
--- a/etc/NEWS Fri Nov 18 02:48:58 2005 +0000 +++ b/etc/NEWS Fri Nov 18 02:51:12 2005 +0000 @@ -4935,6 +4935,11 @@ *** `set-fontset-font', `fontset-info', `fontset-font' now operate on the default fontset if the argument NAME is nil.. ++++ +*** In `set-face-attribute', you can assign any attribute the value +`:ignore-defface'. This forces the attribute value to be acquired +from some other face during face merging. + ** Font-Lock changes: +++
--- a/lispref/ChangeLog Fri Nov 18 02:48:58 2005 +0000 +++ b/lispref/ChangeLog Fri Nov 18 02:51:12 2005 +0000 @@ -1,3 +1,7 @@ +2005-11-17 Chong Yidong <cyd@stupidchicken.com> + + * display.texi (Attribute Functions): Mention :ignore-defface. + 2005-11-16 Stefan Monnier <monnier@iro.umontreal.ca> * modes.texi (Minor Mode Conventions): Use custom-set-minor-mode.
--- a/lispref/display.texi Fri Nov 18 02:48:58 2005 +0000 +++ b/lispref/display.texi Fri Nov 18 02:51:12 2005 +0000 @@ -1859,6 +1859,11 @@ next face gets a chance. However, the @code{default} face must specify all attributes. + Any attribute can have the value @code{:ignore-defface}. The effect +of this is identical to @code{unspecified}. It exists because of an +technical ambiguity in giving attributes the value @code{unspecified}. +@xref{Attribute Functions}. + Some of these font attributes are meaningful only on certain kinds of displays---if your display cannot handle a certain attribute, the attribute is ignored. (The attributes @code{:family}, @code{:width}, @@ -2051,6 +2056,14 @@ for frame @var{frame}. If @var{frame} is @code{nil}, it sets the attribute for all frames, and the defaults for new frames. +Unless you know what you're doing, don't set an attribute to +@code{unspecified}. This is ambiguous---it is unclear whether it +means to unspecify the value stored in the frame-local copies of the +face (which means reverting to the original face spec), or the value +in the face spec itself. What you probably want is to set the +attribute to @code{:ignore-defface}. This forces the attribute value +to be acquired from some other face during face merging. + The extra arguments @var{arguments} specify the attributes to set, and the values for them. They should consist of alternating attribute names (such as @code{:family} or @code{:underline}) and corresponding values.