elisp: Faces
37.12 Faces
===========
A “face” is a collection of graphical attributes for displaying text:
font, foreground color, background color, optional underlining, etc.
Faces control how Emacs displays text in buffers, as well as other parts
of the frame such as the mode line.
One way to represent a face is as a property list of attributes, like
‘(:foreground "red" :weight bold)’. Such a list is called an “anonymous
face”. For example, you can assign an anonymous face as the value of
the ‘face’ text property, and Emacs will display the underlying text
with the specified attributes. Special Properties.
More commonly, a face is referred to via a “face name”: a Lisp symbol
associated with a set of face attributes(1). Named faces are defined
using the ‘defface’ macro (Defining Faces). Emacs comes with
several standard named faces (Basic Faces).
Many parts of Emacs required named faces, and do not accept anonymous
DONTPRINTYET faces. These include the functions documented in Attribute
Functions, and the variable ‘font-lock-keywords’ (*noteSearch-based
DONTPRINTYET faces. These include the functions documented in Attribute
Functions, and the variable ‘font-lock-keywords’ (Search-based
Fontification). Unless otherwise stated, we will use the term “face”
to refer only to named faces.
-- Function: facep object
This function returns a non-‘nil’ value if OBJECT is a named face:
a Lisp symbol or string which serves as a face name. Otherwise, it
returns ‘nil’.
Menu