;ELC   
;;; Compiled by buildd@akateko.buildd on Fri Oct 25 13:47:51 2013
;;; from file /build/buildd/emacs23-23.4+1/debian/build-x/lisp/faces.el
;;; in Emacs version 23.4
;;; with all optimizations.

;;; This file uses dynamic docstrings, first added in Emacs 19.29.

;;; This file does not contain utf-8 non-ASCII characters,
;;; and so can be loaded in Emacs versions earlier than 23.

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;


#@148 History list for some commands that read face names.
Maximum length of the history list is determined by the value
of `history-length', which see.
(defvar face-name-history nil (#$ . 534))
(custom-declare-group 'font-selection nil "Influencing face font selection." :group 'faces)
#@498 A list specifying how face font selection chooses fonts.
Each of the four symbols `:width', `:height', `:weight', and `:slant'
must appear once in the list, and the list must not contain any other
elements.  Font selection first tries to find a best matching font
for those face attributes that appear before in the list.  For
example, if `:slant' appears before `:height', font selection first
tries to find a font with a suitable slant, even if this results in
a font height that isn't optimal.
(custom-declare-variable 'face-font-selection-order ''(:width :height :weight :slant) '(#$ . 822) :tag "Font selection order" :type '(list symbol symbol symbol symbol) :group 'font-selection :set #[(symbol value) "\302	\"\210\303	!\207" [symbol value set-default internal-set-font-selection-order] 3])
#@191 Alist of alternative font family names.
Each element has the form (FAMILY ALTERNATIVE1 ALTERNATIVE2 ...).
If fonts of family FAMILY can't be loaded, try ALTERNATIVE1, then
ALTERNATIVE2 etc.
(custom-declare-variable 'face-font-family-alternatives '(mapcar (lambda (arg) (mapcar 'purecopy arg)) '(("Monospace" "courier" "fixed") ("courier" "CMU Typewriter Text" "fixed") ("Sans Serif" "helv" "helvetica" "arial" "fixed") ("helv" "helvetica" "arial" "fixed"))) '(#$ . 1629) :tag "Alternative font families to try" :type '(repeat (repeat string)) :group 'font-selection :set #[(symbol value) "\302	\"\210\303	!\207" [symbol value set-default internal-set-alternative-font-family-alist] 3])
#@281 Alist of alternative font registry names.
Each element has the form (REGISTRY ALTERNATIVE1 ALTERNATIVE2 ...).
If fonts of registry REGISTRY can be loaded, font selection
tries to find a best matching font among all fonts of registry
REGISTRY, ALTERNATIVE1, ALTERNATIVE2, and etc.
(custom-declare-variable 'face-font-registry-alternatives '(mapcar (lambda (arg) (mapcar 'purecopy arg)) (if (eq system-type 'windows-nt) '(("iso8859-1" "ms-oemlatin") ("gb2312.1980" "gb2312" "gbk" "gb18030") ("jisx0208.1990" "jisx0208.1983" "jisx0208.1978") ("ksc5601.1989" "ksx1001.1992" "ksc5601.1987") ("muletibetan-2" "muletibetan-0")) '(("gb2312.1980" "gb2312.80&gb8565.88" "gbk" "gb18030") ("jisx0208.1990" "jisx0208.1983" "jisx0208.1978") ("ksc5601.1989" "ksx1001.1992" "ksc5601.1987") ("muletibetan-2" "muletibetan-0")))) '(#$ . 2323) :tag "Alternative font registries to try" :type '(repeat (repeat string)) :version "21.1" :group 'font-selection :set #[(symbol value) "\302	\"\210\303	!\207" [symbol value set-default internal-set-alternative-font-registry-alist] 3])
#@42 Return a list of all defined face names.
(defalias 'face-list #[nil "\301\302\"\207" [face-new-frame-defaults mapcar car] 3 (#$ . 3389)])
#@299 Define a new face with name FACE, a symbol.
NO-INIT-FROM-RESOURCES non-nil means don't initialize frame-local
variants of FACE from X resources.  (X resources recognized are found
in the global variable `face-x-resources'.)  If FACE is already known
as a face, leave it unmodified.  Value is FACE.
(defalias 'make-face #[(face &optional no-init-from-resources) "\304!\2041 \305 \306\211\203 \n@\307	\"\210\nA\211\204 *\310\311!\203) \311!\210\2041 \312!\210\207" [face frame #1=#:--cl-dolist-temp-- no-init-from-resources facep frame-list nil internal-make-lisp-face fboundp facemenu-add-new-face make-face-x-resource-internal] 4 (#$ . 3535) (list (read-from-minibuffer "Make face: " nil nil t 'face-name-history))])
#@109 Define a new, empty face with name FACE.
If the face already exists, it is left unmodified.  Value is FACE.
(defalias 'make-empty-face #[(face) "\301\302\"\207" [face make-face no-init-from-resources] 3 (#$ . 4271) (list (read-from-minibuffer "Make empty face: " nil nil t 'face-name-history))])
#@632 Define a face just like OLD-FACE, with name NEW-FACE.

If NEW-FACE already exists as a face, it is modified to be like
OLD-FACE.  If it doesn't already exist, it is created.

If the optional argument FRAME is given as a frame, NEW-FACE is
changed on FRAME only.
If FRAME is t, the frame-independent default specification for OLD-FACE
is copied to NEW-FACE.
If FRAME is nil, copying is done for the frame-independent defaults
and for each existing frame.

If the optional fourth argument NEW-FRAME is given,
copy the information from face OLD-FACE on frame FRAME
to NEW-FACE on frame NEW-FRAME.  In this case, FRAME may not be nil.
(defalias 'copy-face #[(old-face new-face &optional frame new-frame) "\306	\2046 \n\203 \307\310\"\210\311\f!\210\312 \313\211\203, @\314\f	#\210A\211\204 *\314\f\306#\210\202A \311\f!\210\315\f	\n$\210\f)\207" [inhibit-quit frame new-frame old-face new-face #1=#:--cl-dolist-temp-- t error "Copying face %s from all frames to one frame" make-empty-face frame-list nil copy-face internal-copy-lisp-face] 5 (#$ . 4575)])
#@158 Retrieve the face named NAME.
Return nil if there is no such face.
If NAME is already a face, it is simply returned.
The optional argument FRAME is ignored.
(defalias 'internal-find-face #[(name &optional frame) "\301!\207" [name facep] 2 (#$ . 5646)])
(make-obsolete 'internal-find-face 'facep "21.1")
#@145 Retrieve the face named NAME; error if there is none.
If NAME is already a face, it is simply returned.
The optional argument FRAME is ignored.
(defalias 'internal-get-face #[(name &optional frame) "\301!\206	 \302!\207" [name facep check-face] 2 (#$ . 5957)])
(make-obsolete 'internal-get-face "see `facep' and `check-face'." "21.1")
#@96 Return non-nil if FACE is a face name; nil otherwise.
A face name can be a string or a symbol.
(defalias 'facep #[(face) "\301!\207" [face internal-lisp-face-p] 2 (#$ . 6300)])
#@61 Signal an error if FACE doesn't name a face.
Value is FACE.
(defalias 'check-face #[(face) "\301!\204 \302\303\"\210\207" [face facep error "Not a face: %s"] 3 (#$ . 6484)])
#@217 Return the internal ID of face with name FACE.
If FACE is a face-alias, return the ID of the target face.
The optional argument FRAME is ignored, since the internal face ID
of a face name is the same for all frames.
(defalias 'face-id #[(face &optional frame) "\301!\210\300N\206 \302\303N!\207" [face check-face face-id face-alias] 3 (#$ . 6669)])
#@317 Non-nil if faces FACE1 and FACE2 are equal.
Faces are considered equal if all their attributes are equal.
If the optional argument FRAME is given, report on FACE1 and FACE2 in that frame.
If FRAME is t, report on the defaults for FACE1 and FACE2 (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'face-equal #[(face1 face2 &optional frame) "\303	\n#\207" [face1 face2 frame internal-lisp-face-equal-p] 4 (#$ . 7029)])
#@266 Return non-nil if FACE displays differently from the default face.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'face-differs-from-default-p #[(face &optional frame) "\306\307\310\311\"\"\312\n\2036 	\2046 \n\211A@\313\f\314$\211\315=\2042 \316D\"\2032 *\202\n 	*\207" [face-attribute-name-alist differs attrs attr face frame delq :inherit mapcar car nil face-attribute t unspecified display-supports-face-attributes-p attr-val] 6 (#$ . 7485)])
#@245 True if face FACE has some non-nil attribute.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'face-nontrivial-p #[(face &optional frame) "\302	\"?\207" [face frame internal-lisp-face-empty-p] 3 (#$ . 8115)])
#@303 List of X resources and classes for face attributes.
Each element has the form (ATTRIBUTE ENTRY1 ENTRY2...) where ATTRIBUTE is
the name of a face attribute, and each ENTRY is a cons of the form
(RESOURCE . CLASS) with RESOURCE being the resource and CLASS being the
X resource class for the attribute.
(custom-declare-variable 'face-x-resources '(mapcar (lambda (arg) (cons (car arg) (cons (purecopy (car (cdr arg))) (purecopy (cdr (cdr arg)))))) '((:family (".attributeFamily" . "Face.AttributeFamily")) (:foundry (".attributeFoundry" . "Face.AttributeFoundry")) (:width (".attributeWidth" . "Face.AttributeWidth")) (:height (".attributeHeight" . "Face.AttributeHeight")) (:weight (".attributeWeight" . "Face.AttributeWeight")) (:slant (".attributeSlant" . "Face.AttributeSlant")) (:foreground (".attributeForeground" . "Face.AttributeForeground")) (:background (".attributeBackground" . "Face.AttributeBackground")) (:overline (".attributeOverline" . "Face.AttributeOverline")) (:strike-through (".attributeStrikeThrough" . "Face.AttributeStrikeThrough")) (:box (".attributeBox" . "Face.AttributeBox")) (:underline (".attributeUnderline" . "Face.AttributeUnderline")) (:inverse-video (".attributeInverse" . "Face.AttributeInverse")) (:stipple (".attributeStipple" . "Face.AttributeStipple") (".attributeBackgroundPixmap" . "Face.AttributeBackgroundPixmap")) (:bold (".attributeBold" . "Face.AttributeBold")) (:italic (".attributeItalic" . "Face.AttributeItalic")) (:font (".attributeFont" . "Face.AttributeFont")) (:inherit (".attributeInherit" . "Face.AttributeInherit")))) '(#$ . 8492) :type '(repeat (cons symbol (repeat (cons string string)))) :group 'faces)
#@231 Set FACE's ATTRIBUTE from X resource RESOURCE, class CLASS on FRAME.
Value is the attribute value specified by the resource, or nil
if not present.  This function displays a message if the resource
specifies an invalid attribute.
(defalias 'set-face-attribute-from-resource #[(face attribute resource class frame) "\301!\306	\nP\f#\211\203 \307\310\311\217\210*\207" [face face-name resource class frame value internal-face-x-get-resource nil (byte-code "\304	\n\227$\207" [face attribute value frame internal-set-lisp-face-attribute-from-resource] 5) ((error (message "Face %s, frame %s: invalid attribute %s %s from X resource" face-name frame attribute value)))] 5 (#$ . 10164)])
#@52 Set attributes of FACE from X resources for FRAME.
(defalias 'set-face-attributes-from-resources #[(face frame) "\306!\307>\205B 	\310\211\203@ @\211@\nA\310\211\n\2038 \n@\311\f@A%\210\nA\211\n\204  +A\211\204 *\310\207" [frame face-x-resources definition #1=#:--cl-dolist-temp-- attribute entry framep (x w32) nil set-face-attribute-from-resource #2=#:--cl-dolist-temp-- face] 8 (#$ . 10861)])
#@105 Fill frame-local FACE on FRAME from X resources.
FRAME nil or not specified means do it for all frames.
(defalias 'make-face-x-resource-internal #[(face &optional frame) "\204 \303 \304\211\203 	@\305\n\"\210	A\211\204 *\304\207\305\n\"\207" [frame #1=#:--cl-dolist-temp-- face frame-list nil set-face-attributes-from-resources] 4 (#$ . 11284)])
#@31 Return the name of face FACE.
(defalias 'face-name #[(face) "\301\302!!\207" [face symbol-name check-face] 3 (#$ . 11646)])
#@247 Return an alist stating the attributes of FACE.
Each element of the result has the form (ATTR-NAME . ATTR-VALUE).
Normally the value describes the default attributes,
but if you specify FRAME, the value describes the attributes
of FACE on FRAME.
(defalias 'face-all-attributes #[(face &optional frame) "\301\302\"\207" [face-attribute-name-alist mapcar #[(pair) "@\211\304\n	\206\f \305#)B\207" [pair attr face frame face-attribute t] 6]] 3 (#$ . 11778)])
#@953 Return the value of FACE's ATTRIBUTE on FRAME.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.

If INHERIT is nil, only attributes directly defined by FACE are considered,
  so the return value may be `unspecified', or a relative value.
If INHERIT is non-nil, FACE's definition of ATTRIBUTE is merged with the
  faces specified by its `:inherit' attribute; however the return value
  may still be `unspecified' or relative.
If INHERIT is a face or a list of faces, then the result is further merged
  with that face (or faces), until it becomes specified and absolute.

To ensure that the return value is always specified and absolute, use a
value of `default' for INHERIT; this will resolve any unspecified or
relative values by merging with the `default' face (which is always
completely specified).
(defalias 'face-attribute #[(face attribute &optional frame inherit) "\306	\n#\f\203' \307	\"\203' \310\311\n#\211\203& \312=\204& \313\314\315\217\210)\f\203? \f\316=\204? \307	\"\203? \317	\f\n$)\207" [face attribute frame value inherit inh-from internal-get-lisp-face-attribute face-attribute-relative-p face-attribute :inherit unspecified nil (byte-code "\304	\n$\304\207" [attribute value inh-from frame face-attribute-merged-with] 5) ((error)) t face-attribute-merged-with] 6 (#$ . 12245)])
#@160 Merges ATTRIBUTE, initially VALUE, with faces from FACES until absolute.
FACES may be either a single face or a list of faces.
[This is an internal function.]
(defalias 'face-attribute-merged-with #[(attribute value faces &optional frame) "\304	\"\204	 	\207\n\204 	\207\n:\203\" \305\305	\n@$\nA$\207\306	\307\n\310$#\207" [attribute value faces frame face-attribute-relative-p face-attribute-merged-with merge-face-attribute face-attribute t] 8 (#$ . 13714)])
#@93 Return VALUE, unless it's `unspecified', in which case evaluate BODY and return the result.
(defalias 'face-attribute-specified-or '(macro . #[(value &rest body) "\303\304!\305	DC\306\307\310\311BBD\nBBBE)\207" [temp value body make-symbol "value" let if not eq ('unspecified)] 7 (#$ . 14191)]))
#@905 Return the foreground color name of FACE, or nil if unspecified.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.

If INHERIT is nil, only a foreground color directly defined by FACE is
  considered, so the return value may be nil.
If INHERIT is t, and FACE doesn't define a foreground color, then any
  foreground color that FACE inherits through its `:inherit' attribute
  is considered as well; however the return value may still be nil.
If INHERIT is a face or a list of faces, then it is used to try to
  resolve an unspecified foreground color.

To ensure that a valid color is always returned, use a value of
`default' for INHERIT; this will resolve any unspecified values by
merging with the `default' face (which is always completely specified).
(defalias 'face-foreground #[(face &optional frame inherit) "\304\305	\n$\211\306=?\205 )\207" [face frame inherit #1=#:value face-attribute :foreground unspecified] 6 (#$ . 14498)])
#@905 Return the background color name of FACE, or nil if unspecified.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.

If INHERIT is nil, only a background color directly defined by FACE is
  considered, so the return value may be nil.
If INHERIT is t, and FACE doesn't define a background color, then any
  background color that FACE inherits through its `:inherit' attribute
  is considered as well; however the return value may still be nil.
If INHERIT is a face or a list of faces, then it is used to try to
  resolve an unspecified background color.

To ensure that a valid color is always returned, use a value of
`default' for INHERIT; this will resolve any unspecified values by
merging with the `default' face (which is always completely specified).
(defalias 'face-background #[(face &optional frame inherit) "\304\305	\n$\211\306=?\205 )\207" [face frame inherit #1=#:value face-attribute :background unspecified] 6 (#$ . 15596)])
#@876 Return the stipple pixmap name of FACE, or nil if unspecified.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.

If INHERIT is nil, only a stipple directly defined by FACE is
  considered, so the return value may be nil.
If INHERIT is t, and FACE doesn't define a stipple, then any stipple
  that FACE inherits through its `:inherit' attribute is considered as
  well; however the return value may still be nil.
If INHERIT is a face or a list of faces, then it is used to try to
  resolve an unspecified stipple.

To ensure that a valid stipple or nil is always returned, use a value of
`default' for INHERIT; this will resolve any unspecified values by merging
with the `default' face (which is always completely specified).
(defalias 'face-stipple #[(face &optional frame inherit) "\304\305	\n$\211\306=?\205 )\207" [face frame inherit #1=#:value face-attribute :stipple unspecified] 6 (#$ . 16694)])
(defalias 'face-background-pixmap 'face-stipple)
#@237 Return non-nil if FACE is underlined.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'face-underline-p #[(face &optional frame) "\302\303	#\304=\207" [face frame face-attribute :underline t] 4 (#$ . 17806)])
#@252 Return non-nil if FACE is in inverse video on FRAME.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'face-inverse-video-p #[(face &optional frame) "\302\303	#\304=\207" [face frame face-attribute :inverse-video t] 4 (#$ . 18183)])
#@292 Return non-nil if the font of FACE is bold on FRAME.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
Use `face-attribute' for finer control.
(defalias 'face-bold-p #[(face &optional frame) "\303\304	#\211\305>)\207" [face frame bold face-attribute :weight (semi-bold bold extra-bold ultra-bold)] 5 (#$ . 18583)])
#@294 Return non-nil if the font of FACE is italic on FRAME.
If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
Use `face-attribute' for finer control.
(defalias 'face-italic-p #[(face &optional frame) "\303\304	#\211\305>)\207" [face frame italic face-attribute :slant (italic oblique)] 5 (#$ . 19055)])
#@108 Get the documentation string for FACE.
If FACE is a face-alias, get the documentation for the target face.
(defalias 'face-documentation #[(face) "\303N\304\211\203\" \n\305N\306\307\n	\203 \306\310	\"\202 \311$\202% \305N*\207" [face doc alias face-alias nil face-documentation format "%s is an alias for the face `%s'.%s" "\n%s" ""] 8 (#$ . 19510)])
#@50 Set the documentation string for FACE to STRING.
(defalias 'set-face-documentation #[(face string) "\302\303\304	!#\207" [face string put face-documentation purecopy] 5 (#$ . 19876)])
(byte-code "\300\301\302\"\210\300\303\304\"\207" [defalias face-doc-string face-documentation set-face-doc-string set-face-documentation] 3)
#@5224 Set attributes of FACE on FRAME from ARGS.

FRAME nil means change attributes on all frames.  FRAME t means change
the default for new frames (this is done automatically each time an
attribute is changed on all frames).

ARGS must come in pairs ATTRIBUTE VALUE.  ATTRIBUTE must be a valid
face attribute name.  All attributes can be set to `unspecified';
this fact is not further mentioned below.

The following attributes are recognized:

`:family'

VALUE must be a string specifying the font family, e.g. ``monospace'',
or a fontset alias name.  If a font family is specified, wild-cards `*'
and `?' are allowed.

`:foundry'

VALUE must be a string specifying the font foundry,
e.g. ``adobe''.  If a font foundry is specified, wild-cards `*'
and `?' are allowed.

`:width'

VALUE specifies the relative proportionate width of the font to use.
It must be one of the symbols `ultra-condensed', `extra-condensed',
`condensed', `semi-condensed', `normal', `semi-expanded', `expanded',
`extra-expanded', or `ultra-expanded'.

`:height'

VALUE specifies the height of the font, in either absolute or relative
terms.  An absolute height is an integer, and specifies font height in
units of 1/10 pt.  A relative height is either a floating point number,
which specifies a scaling factor for the underlying face height;
or a function that takes a single argument (the underlying face height)
and returns the new height.  Note that for the `default' face,
you can only specify an absolute height (since there is nothing
for it to be relative to).

`:weight'

VALUE specifies the weight of the font to use.  It must be one of the
symbols `ultra-bold', `extra-bold', `bold', `semi-bold', `normal',
`semi-light', `light', `extra-light', `ultra-light'.

`:slant'

VALUE specifies the slant of the font to use.  It must be one of the
symbols `italic', `oblique', `normal', `reverse-italic', or
`reverse-oblique'.

`:foreground', `:background'

VALUE must be a color name, a string.

`:underline'

VALUE specifies whether characters in FACE should be underlined.  If
VALUE is t, underline with foreground color of the face.  If VALUE is
a string, underline with that color.  If VALUE is nil, explicitly
don't underline.

`:overline'

VALUE specifies whether characters in FACE should be overlined.  If
VALUE is t, overline with foreground color of the face.  If VALUE is a
string, overline with that color.  If VALUE is nil, explicitly don't
overline.

`:strike-through'

VALUE specifies whether characters in FACE should be drawn with a line
striking through them.  If VALUE is t, use the foreground color of the
face.  If VALUE is a string, strike-through with that color.  If VALUE
is nil, explicitly don't strike through.

`:box'

VALUE specifies whether characters in FACE should have a box drawn
around them.  If VALUE is nil, explicitly don't draw boxes.  If
VALUE is t, draw a box with lines of width 1 in the foreground color
of the face.  If VALUE is a string, the string must be a color name,
and the box is drawn in that color with a line width of 1.  Otherwise,
VALUE must be a property list of the form `(:line-width WIDTH
:color COLOR :style STYLE)'.  If a keyword/value pair is missing from
the property list, a default value will be used for the value, as
specified below.  WIDTH specifies the width of the lines to draw; it
defaults to 1.  If WIDTH is negative, the absolute value is the width
of the lines, and draw top/bottom lines inside the characters area,
not around it.  COLOR is the name of the color to draw in, default is
the foreground color of the face for simple boxes, and the background
color of the face for 3D boxes.  STYLE specifies whether a 3D box
should be draw.  If STYLE is `released-button', draw a box looking
like a released 3D button.  If STYLE is `pressed-button' draw a box
that appears like a pressed button.  If STYLE is nil, the default if
the property list doesn't contain a style specification, draw a 2D
box.

`:inverse-video'

VALUE specifies whether characters in FACE should be displayed in
inverse video.  VALUE must be one of t or nil.

`:stipple'

If VALUE is a string, it must be the name of a file of pixmap data.
The directories listed in the `x-bitmap-file-path' variable are
searched.  Alternatively, VALUE may be a list of the form (WIDTH
HEIGHT DATA) where WIDTH and HEIGHT are the size in pixels, and DATA
is a string containing the raw bits of the bitmap.  VALUE nil means
explicitly don't use a stipple pattern.

For convenience, attributes `:family', `:foundry', `:width',
`:height', `:weight', and `:slant' may also be set in one step
from an X font name:

`:font'

Set font-related face attributes from VALUE.  VALUE must be a valid
XLFD font name.  If it is a font name pattern, the first matching font
will be used.

For compatibility with Emacs 20, keywords `:bold' and `:italic' can
be used to specify that a bold or italic font should be used.  VALUE
must be t or nil in that case.  A value of `unspecified' is not allowed.

`:inherit'

VALUE is the name of a face from which to inherit attributes, or a list
of face names.  Attributes from inherited faces are merged into the face
like an underlying face would be, with higher priority than underlying faces.
(defalias 'set-face-attribute #[(face frame &rest args) "\306!	\204\f \307\202 	\310\211\211\311>\203( \312\313N\206$ \314\315#\210\f\203Y \f@\316=\203> \f\211A@)\202M \f@\317=\203M \f\211A@)\f\211AA)\211\204, \204a \n\203\245 ;\203{ \320\321\"\203{ \n\204v \322\323\"\322\324\";\204\206 \325=\203\220 \326\316\306!$\210\n;\204\233 \n\325=\203\245 \326\317\306\n!$\210\205\316 @\327>\204\301 \326@\306\211A@)!$\210\211AA)\211\204\251 \310,\207" [args frame foundry family spec where purecopy 0 nil (0 t) put face-alias face-modified t :family :foundry string-match "\\([^-]*\\)-\\([^-]*\\)" match-string 1 2 unspecified internal-set-lisp-face-attribute (:family :foundry) face x] 6 (#$ . 20211)])
#@228 Make the font of FACE be bold, if possible.
FRAME nil or not specified means change face on all frames.
Argument NOERROR is ignored and retained for compatibility.
Use `set-face-attribute' for finer control of the font weight.
(defalias 'make-face-bold #[(face &optional frame noerror) "\302	\303\304$\207" [face frame set-face-attribute :weight bold] 5 (#$ . 26188) (list (read-face-name "Make which face bold"))])
#@169 Make the font of FACE be non-bold, if possible.
FRAME nil or not specified means change face on all frames.
Argument NOERROR is ignored and retained for compatibility.
(defalias 'make-face-unbold #[(face &optional frame noerror) "\302	\303\304$\207" [face frame set-face-attribute :weight normal] 5 (#$ . 26612) (list (read-face-name "Make which face non-bold"))])
#@229 Make the font of FACE be italic, if possible.
FRAME nil or not specified means change face on all frames.
Argument NOERROR is ignored and retained for compatibility.
Use `set-face-attribute' for finer control of the font slant.
(defalias 'make-face-italic #[(face &optional frame noerror) "\302	\303\304$\207" [face frame set-face-attribute :slant italic] 5 (#$ . 26985) (list (read-face-name "Make which face italic"))])
#@171 Make the font of FACE be non-italic, if possible.
FRAME nil or not specified means change face on all frames.
Argument NOERROR is ignored and retained for compatibility.
(defalias 'make-face-unitalic #[(face &optional frame noerror) "\302	\303\304$\207" [face frame set-face-attribute :slant normal] 5 (#$ . 27415) (list (read-face-name "Make which face non-italic"))])
#@245 Make the font of FACE be bold and italic, if possible.
FRAME nil or not specified means change face on all frames.
Argument NOERROR is ignored and retained for compatibility.
Use `set-face-attribute' for finer control of font weight and slant.
(defalias 'make-face-bold-italic #[(face &optional frame noerror) "\302	\303\304\305\306&\207" [face frame set-face-attribute :weight bold :slant italic] 7 (#$ . 27793) (list (read-face-name "Make which face bold-italic"))])
#@281 Change font-related attributes of FACE to those of FONT (a string).
FRAME nil or not specified means change face on all frames.
This sets the attributes `:family', `:foundry', `:width',
`:height', `:weight', and `:slant'.  When called interactively,
prompt for the face and font.
(defalias 'set-face-font #[(face font &optional frame) "\303	\304\n$\207" [face frame font set-face-attribute :font] 5 (#$ . 28271) (read-face-and-attribute :font)])
#@286 Change the background color of face FACE to COLOR (a string).
FRAME nil or not specified means change face on all frames.
COLOR can be a system-defined color name (see `list-colors-display')
or a hex spec of the form #RRGGBB.
When called interactively, prompts for the face and color.
(defalias 'set-face-background #[(face color &optional frame) "\303	\304\n\206	 \305$\207" [face frame color set-face-attribute :background unspecified] 5 (#$ . 28725) (read-face-and-attribute :background)])
#@286 Change the foreground color of face FACE to COLOR (a string).
FRAME nil or not specified means change face on all frames.
COLOR can be a system-defined color name (see `list-colors-display')
or a hex spec of the form #RRGGBB.
When called interactively, prompts for the face and color.
(defalias 'set-face-foreground #[(face color &optional frame) "\303	\304\n\206	 \305$\207" [face frame color set-face-attribute :foreground unspecified] 5 (#$ . 29226) (read-face-and-attribute :foreground)])
#@427 Change the stipple pixmap of face FACE to STIPPLE.
FRAME nil or not specified means change face on all frames.
STIPPLE should be a string, the name of a file of pixmap data.
The directories listed in the `x-bitmap-file-path' variable are searched.

Alternatively, STIPPLE may be a list of the form (WIDTH HEIGHT DATA)
where WIDTH and HEIGHT are the size in pixels,
and DATA is a string, containing the raw bits of the bitmap.
(defalias 'set-face-stipple #[(face stipple &optional frame) "\303	\304\n\206	 \305$\207" [face frame stipple set-face-attribute :stipple unspecified] 5 (#$ . 29727) (read-face-and-attribute :stipple)])
#@376 Specify whether face FACE is underlined.
UNDERLINE nil means FACE explicitly doesn't underline.
UNDERLINE non-nil means FACE explicitly does underlining
with the same of the foreground color.
If UNDERLINE is a string, underline with the color named UNDERLINE.
FRAME nil or not specified means change face on all frames.
Use `set-face-attribute' to ``unspecify'' underlining.
(defalias 'set-face-underline-p #[(face underline &optional frame) "\303	\304\n$\207" [face frame underline set-face-attribute :underline] 5 (#$ . 30364) (let ((list (read-face-and-attribute :underline))) (list (car list) (eq (car (cdr list)) t)))])
(byte-code "\300\301\302\303#\210\304\301\302\305#\207" [defalias set-face-underline set-face-underline-p nil make-obsolete "22.1"] 4)
#@319 Specify whether face FACE is in inverse video.
INVERSE-VIDEO-P non-nil means FACE displays explicitly in inverse video.
INVERSE-VIDEO-P nil means FACE explicitly is not in inverse video.
FRAME nil or not specified means change face on all frames.
Use `set-face-attribute' to ``unspecify'' the inverse video attribute.
(defalias 'set-face-inverse-video-p #[(face inverse-video-p &optional frame) "\303	\304\n$\207" [face frame inverse-video-p set-face-attribute :inverse-video] 5 (#$ . 31132) (let ((list (read-face-and-attribute :inverse-video))) (list (car list) (eq (car (cdr list)) t)))])
#@273 Specify whether face FACE is bold.
BOLD-P non-nil means FACE should explicitly display bold.
BOLD-P nil means FACE should explicitly display non-bold.
FRAME nil or not specified means change face on all frames.
Use `set-face-attribute' or `modify-face' for finer control.
(defalias 'set-face-bold-p #[(face bold-p &optional frame) "\204	 \303	\n\"\207\304	\n\"\207" [bold-p face frame make-face-unbold make-face-bold] 3 (#$ . 31732)])
#@283 Specify whether face FACE is italic.
ITALIC-P non-nil means FACE should explicitly display italic.
ITALIC-P nil means FACE should explicitly display non-italic.
FRAME nil or not specified means change face on all frames.
Use `set-face-attribute' or `modify-face' for finer control.
(defalias 'set-face-italic-p #[(face italic-p &optional frame) "\204	 \303	\n\"\207\304	\n\"\207" [italic-p face frame make-face-unitalic make-face-italic] 3 (#$ . 32175)])
(defalias 'set-face-background-pixmap 'set-face-stipple)
#@279 Swap the foreground and background colors of FACE.
If FRAME is omitted or nil, it means change face on all frames.
If FACE specifies neither foreground nor background color,
set its foreground and background to the background and foreground
of the default face.  Value is FACE.
(defalias 'invert-face #[(face &optional frame) "\304\305	#\304\306	#\211\307=\203 \n\307=\204% \310	\305\n\306&\210\2027 \310	\305\304\311\306	#\306\304\311\305	#&\210*\207" [face frame bg fg face-attribute :foreground :background unspecified set-face-attribute default] 11 (#$ . 32695) (list (read-face-name "Invert face"))])
#@479 Read a face, defaulting to the face or faces on the char after point.
If it has the property `read-face-name', that overrides the `face' property.
PROMPT should be a string that describes what the caller will do with the face;
it should not end in a space.
STRING-DESCRIBING-DEFAULT should describe what default the caller will use if
the user just types RET; you can omit it.
If MULTIPLE is non-nil, return a list of faces (possibly only one).
Otherwise, return a single face.
(defalias 'read-face-name #[(prompt &optional string-describing-default multiple) "\306`\307\"\206 \306`\310\"\311\211\211\312\313\314!!\315 >\203$ \312\313\314!!C<\203V \316@!\204V @\317>\204V \311\211\203R @\2119\203K \fBA\211\204? *\202_ 9\203_ B\320!\210\321\322!\210%\204t \203t @C\323\324!\210\325\204\202 &\203\230 \326\327'\203\222 \330\331\332#\202\224 &#\202\235 \326\333'\"\334	\n\"\311\335\311\336\205\256 \330\331\332#&\211(\337\232\204\277 (\340\232\203\303 \202\345 (;\203\325 \341\342\343(\344\335#\"\202\345 (<\203\343 \341\342(\"\202\345 ()%\203\361 )\202\364 )@.\207" [faces nonaliasfaces aliasfaces faceprop f #1=#:--cl-dolist-temp-- get-char-property read-face-name face nil intern-soft thing-at-point symbol face-list keywordp (foreground-color background-color) delete-dups mapatoms #[(s) "\303!\205 \304N\203 \305!	B\211\207\305!\nB\211\207" [s aliasfaces nonaliasfaces custom-facep face-alias symbol-name] 2] require crm completing-read-multiple format "%s (default %s): " mapconcat symbol-name "," "%s: " completion-table-in-turn t face-name-history #2="" (#2#) mapcar intern split-string ", *" multiple string-describing-default prompt input output] 12 (#$ . 33319)])
#@346 Return valid values for face attribute ATTRIBUTE.
The optional argument FRAME is used to determine available fonts
and colors.  If it is nil or not specified, the selected frame is used.
Value is an alist of (NAME . VALUE) if ATTRIBUTE expects a value out
of a set of discrete values.  Value is `integerp' if ATTRIBUTE expects
an integer value.
(defalias 'face-valid-attribute-values #[(attribute &optional frame) "\306=\203 \307	!\203 \310\311\312 \"\202\313 \313\211BC\202\313 \314=\203& \315C\202\313 \316=\2033 \310\317\n\"\202\313 \320=\203@ \310\321\"\202\313 \322=\203M \310\323\f\"\202\313 \324=\203\\ \310\325\326!\"\202\313 \327\330\"\203\202 \307	!\203y \310\331\326!\"\310\332\333	!\"\244\202\313 \310\334\326!\"\202\313 \327\335\"\203\222 \310\336\333	!\"\202\313 \327\337\"\203\235 \340\202\313 \341=\203\270 \307	!\342>\205\313 \310\343\344\345\310\346\"\"\"\202\313 \347=\203\310 \350\310\351\352 \"B\202\313 \353\354!\2110<\203\342 \355>\204\342 \356\357BC0\244\202\344 0)\207" [attribute frame font-width-table font-weight-table font-slant-table x-bitmap-file-path :family window-system mapcar #[(x) "\211B\207" [x] 2] font-family-list "default" :foundry nil :width #[(x) "\301\302H!\302HB\207" [x symbol-name 1] 3] :weight #[(x) "\301\302H!\302HB\207" [x symbol-name 1] 3] :slant #[(x) "\301\302H!\302HB\207" [x symbol-name 1] 3] :inverse-video #[(x) "\301!B\207" [x symbol-name] 2] internal-lisp-face-attribute-values memql (:underline :overline :strike-through :box) #[(x) "\301!B\207" [x symbol-name] 2] #[(c) "\211B\207" [c] 2] defined-colors #[(x) "\301!B\207" [x symbol-name] 2] (:foreground :background) #[(c) "\211B\207" [c] 2] (:height) integerp :stipple (x ns) list apply nconc #[(dir) "\301!\205 \302!\205 \303!\207" [dir file-readable-p file-directory-p directory-files] 2] :inherit ("none") #[(c) "\301!B\207" [c symbol-name] 2] face-list error "Internal error" (:inherit) "unspecified" unspecified valid] 8 (#$ . 35057)])
#@233 An alist of descriptive names for face attributes.
Each element has the form (ATTRIBUTE-NAME . DESCRIPTION) where
ATTRIBUTE-NAME is a face attribute name (a keyword symbol), and
DESCRIPTION is a descriptive name for ATTRIBUTE-NAME.
(defconst face-attribute-name-alist '((:family . "font family") (:foundry . "font foundry") (:width . "character set width") (:height . "height in 1/10 pt") (:weight . "weight") (:slant . "slant") (:underline . "underline") (:overline . "overline") (:strike-through . "strike-through") (:box . "box") (:inverse-video . "inverse-video display") (:foreground . "foreground color") (:background . "background color") (:stipple . "background stipple") (:inherit . "inheritance")) (#$ . 37063))
#@42 Return a descriptive name for ATTRIBUTE.
(defalias 'face-descriptive-attribute-name #[(attribute) "	\236A\207" [attribute face-attribute-name-alist] 2 (#$ . 37791)])
#@381 Interactively read a face attribute string value.
FACE is the face whose attribute is read.  If non-nil, DEFAULT is the
default string to return if no new value is entered.  NAME is a
descriptive name of the attribute for prompting.  COMPLETION-ALIST is an
alist of valid values, if non-nil.

Entering nothing accepts the default string DEFAULT.
Value is the new attribute value.
(defalias 'face-read-string #[(face default name &optional completion-alist) "\306\307O\226\307\310OP\311\312\n\203 \313\314\n$\202  \313\315#\f\310\211\211\211\n&\211\316\232\2033 \n\2024 *\207" [name completion-ignore-case default face completion-alist value 0 1 nil t completing-read format "%s for face `%s' (default %s): " "%s for face `%s': " ""] 9 (#$ . 37965)])
#@258 Interactively read an integer face attribute value.
FACE is the face whose attribute is read.  DEFAULT is the default
value to return if no new value is entered.  NAME is a descriptive
name of the attribute for prompting.  Value is the new attribute value.
(defalias 'face-read-integer #[(face default name) "\304\305\306	\"\n\307\310BC$\211\307\232\203 \310\202$ \311\235\203! \202$ \312!)\207" [face default name new-value face-read-string format "%s" "unspecified" unspecified ("unspecified-fg" "unspecified-bg") string-to-number] 7 (#$ . 38734)])
#@180 Interactively read a new value for FACE's ATTRIBUTE.
Optional argument FRAME nil or unspecified means read an attribute value
of a global face.  Value is the new attribute value.
(defalias 'read-face-attribute #[(face attribute &optional frame) "\306	\n#\307	!\310	\n\"\311	\312=\204 	\313=\203- :\204) \314!\203- \315!<\203\207 \316\"@\206> \317\320\" \321 \f$\211 \232\203V \202\203 	\322>\203s \323\n!\324>\204s \325\235\204s \326\n\"@\327\"\203\203 \327\"A)\202\233 \330=\203\227 \331\f#\202\233 \332\333!\210	\312=\204\247 	\313=\203\273 ;\203\273 \334\335\"\203\273 \336!,\207" [face attribute frame old-value attribute-name valid face-attribute face-descriptive-attribute-name face-valid-attribute-values nil :stipple :box vectorp prin1-to-string rassoc format "%s" face-read-string (:foreground :background) window-system (x w32 ns) ("unspecified" "unspecified-fg" "unspecified-bg") tty-color-desc assoc integerp face-read-integer error "Internal error" string-match "^[[(]" read new-value default] 6 (#$ . 39298)])
#@114 Read the name of a font for FACE on FRAME.
If optional argument FRAME is nil or omitted, use the selected frame.
(defalias 'read-face-font #[(face &optional frame) "\303\304\305\306	\"\307\310 \311\312\313\n#\"\")\207" [completion-ignore-case face frame t completing-read format "Set font attributes of face `%s' from font: " append fontset-list x-list-fonts "*" nil] 8 (#$ . 40383)])
#@175 Interactively read all attributes for FACE.
If optional argument FRAME is nil or omitted, use the selected frame.
Value is a property list of attribute names and new values.
(defalias 'read-all-face-attributes #[(face &optional frame) "\306	\306\211\203  @\211@\307\f\n@#BBA\211\204\n \306+\207" [result face-attribute-name-alist attribute #1=#:--cl-dolist-temp-- face frame nil read-face-attribute] 6 (#$ . 40776)])
#@357 Modify attributes of faces interactively.
If optional argument FRAME is nil or omitted, modify the face used
for newly created frame, i.e. the global face.
For non-interactive use, `set-face-attribute' is preferred.
When called from Lisp, if FACE is nil, all arguments but FRAME are ignored
and the face and its settings are obtained by querying the user.
(defalias 'modify-face #[(&optional face foreground background stipple bold-p italic-p underline inverse-p frame) "\203# \306	\307\n\206 \310\311\206 \310\312\f\313\314\315\316&\207\317\320!\321\306	\322	\"$\207" [face frame foreground background stipple bold-p set-face-attribute :foreground unspecified :background :stipple :bold :italic :underline :inverse-video read-face-name "Modify face" apply read-all-face-attributes italic-p underline inverse-p] 17 (#$ . 41212) nil])
#@264 Read face name and face attribute value.
ATTRIBUTE is the attribute whose new value is read.
FRAME nil or unspecified means read attribute value of global face.
Value is a list (FACE NEW-VALUE) where FACE is the face read
(a symbol), and NEW-VALUE is value read.
(defalias 'read-face-and-attribute #[(attribute &optional frame) "\306=\203 \307\310	!\311\n\"\n\f+D\207\312!\313\314\"\310	!\315\n#\n,D\207" [attribute prompt face frame font attribute-name :font "Set font-related attributes of face" read-face-name read-face-font face-descriptive-attribute-name format "Set %s of face" read-face-attribute new-value] 4 (#$ . 42069)])
#@70 *Text string to display as the sample text for `list-faces-display'.
(defconst list-faces-sample-text "abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ" (#$ . -42724))
#@305 List all faces, using the same sample text in each.
The sample text is a string that comes from the variable
`list-faces-sample-text'.

If REGEXP is non-nil, list only those faces with names matching
this regular expression.  When called interactively with a prefix
arg, prompt for a regular expression.
(defalias 'list-faces-display #[(&optional regexp) "\306G!\307 \310\311\211\211\211\211789\312\311\313\314\315\316 \317\"\"\"\211\204, \320\321\"\2107T7\322\3237\"\324 \311:\325\326\327\330#\210:);<\330=>\311\211\223\210\331\220r?q\210\330@\332\333\334 \205d \335\336\337R!c\210\311A\311,\211B\203\366 B@,\340,!\322\f	\"c\210\212\341 C\342\216\343	!\210\344DD\345\310\346,#\210+`\347 EFGc\210\212\341 C\350\216\343G!\210\345\310\351,#\210+\352c\210\353F`S\354,$\210\353E`S\355,$\210Fb\210\356y\210m\204\354 \357\3607\"\210\356y\210\202\334 *BA\211B\204w *eb)\221\210\361=!\203\n\362<;\"\210\311=*\363\364\331!\330\"\211\203\365\n!\202\"\324 @8=\206D\316 \211\205C\366@@8$\210A\211\2041\311).\207" [regexp face-name window disp-frame line-format faces zerop selected-frame 0 nil delq mapcar #[(f) "\305!\n\204 \306	\"\205 	G\f])\207" [f s all-faces regexp max-length symbol-name string-match] 3] sort face-list string-lessp error "No faces matching \"%s\"" format "%%-%ds" frame-list walk-windows #[(window) "\302!\303!\304!F	B\211\207" [window list window-buffer window-start window-point] 5] no-mini t "*Faces*" substitute-command-keys "Use " display-mouse-p "\\[help-follow-mouse] or " "\\[help-follow] on a face name to customize it\n" "or on its sample text for a description of the face.\n\n" symbol-name match-data ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) search-backward list-faces-display help-xref-button help-customize-face line-beginning-position ((byte-code "\301\302\"\207" [save-match-data-internal set-match-data evaporate] 3)) help-face "\n" put-text-property face read-face-name 1 insert-char 32 windowp help-window-setup get-buffer-window get-buffer window-frame copy-face max-length frame all-faces list list-of-window-tuples list-of-frames help-window help-window-point-marker standard-output truncate-lines help-xref-stack #1=#:--cl-dolist-temp-- save-match-data-internal help-xref-stack-item line-beg beg list-faces-sample-text] 9 (#$ . 42904) (list (and current-prefix-arg (read-regexp "List faces matching regexp")))])
#@359 Display the properties of face FACE on FRAME.
Interactively, FACE defaults to the faces of the character after point
and FRAME defaults to the selected frame.

If the optional argument FRAME is given, report on face FACE in that frame.
If FRAME is t, report on the defaults for face FACE (for new frames).
If FRAME is omitted or nil, use the selected frame.
(defalias 'describe-face #[(face &optional frame) "\306\307\310\311\312\"\"\313\314\nD\315\316!\"\210\n\204 \317\n<\204! \nC\320 \321\322\323\324\325#\210)\325@A\321\211\223\210\326 \220rBq\210\n\321C\211D\203\235D@\211C;\203Z \327C!CC9\203\224\330\331C!\261\210\332C!\204u \333c\210\202\221\334\321EF\335\336\337\340C#\341Qc\210\342\335F\343Q!\210C\344NC\321G\211H\203\314 H\345\346CHC\347N\211G\203\310 \345\350G;\203\301 \345\351G\"\202\302 \352H#\202\311 \352$c\210\353\354\n!\206\324 \355\356\261\210+rBq\210\212\357\360F\361Q\321\325#\210\362\363\364C#\210*\365C\366\"\211E\203&\342\367!\210\342\370E!!\210\342\371!\210\212\357\372\321\325#\210\362\363\373CE$\210)\342\374!\210\375 \210\375 \210\321I\211J\203\220J@I\376CI@K#L\377	IAGZ\201M \"IA\201N \345\201O L\"\261\210I@\201P =\203\201L\201Q =\204\201\212\357\201R \321\325#\210\362\363\201S L#\210)\201T c\210)JA\211J\2040,\375 \210DA\211D\204J +\321\221\201U @!\203\260\201V \f\"\210\321@,\207" [attrs max-width face list list-of-window-tuples list-of-frames ((:family . "Family") (:foundry . "Foundry") (:width . "Width") (:height . "Height") (:weight . "Weight") (:slant . "Slant") (:foreground . "Foreground") (:background . "Background") (:underline . "Underline") (:overline . "Overline") (:strike-through . "Strike-through") (:box . "Box") (:inverse-video . "Inverse") (:stipple . "Stipple") (:font . "Font") (:fontset . "Fontset") (:inherit . "Inherit")) apply max mapcar #[(x) "AG\207" [x] 1] help-setup-xref describe-face called-interactively-p interactive default frame-list nil walk-windows #[(window) "\302!\303!\304!F	B\211\207" [window list window-buffer window-start window-point] 5] no-mini t help-buffer intern "Face: " symbol-name facep "   undefined face.\n" "customize this face" " (" propertize "sample" font-lock-face ")" princ ")\n" face-alias format "\n  %s is an alias for the face `%s'.\n%s" obsolete-face "  This face is obsolete%s; use `%s' instead.\n" " since %s" "" "\nDocumentation:\n" face-documentation "Not documented as a face." "\n\n" re-search-backward "\\(" "\\)" help-xref-button 1 help-customize-face find-lisp-object-file-name defface "Defined in `" file-name-nondirectory "'" "`\\([^`']+\\)'" help-face-def "." terpri face-attribute make-string help-window help-window-point-marker standard-output f #1=#:--cl-dolist-temp-- file-name customize-label obsolete alias a #2=#:--cl-dolist-temp-- frame attr 32 ": " "%s" :inherit unspecified ": \\([^:]+\\)" help-face "\n" windowp help-window-setup] 11 (#$ . 45388) (list (read-face-name "Describe face" "= `default' face" t))])
#@242 Return a `defface'-style attribute list for FACE on FRAME.
Value is a property list of pairs ATTRIBUTE VALUE for all specified
face attributes of FACE where ATTRIBUTE is the attribute name and
VALUE is the specified value of that attribute.
(defalias 'face-attr-construct #[(face &optional frame) "\306	\306\211\203+ @\211@\307\f\"\211	\310=\204# \f	D\244*A\211\204\n \306+\207" [result face-attribute-name-alist entry #1=#:--cl-dolist-temp-- attribute face nil face-attribute unspecified value] 4 (#$ . 48418)])
#@139 Non-nil if DISPLAY matches FRAME.
DISPLAY is part of a spec such as can be used in `defface'.
If FRAME is nil, the current FRAME is used.
(defalias 'face-spec-set-match-display #[(display frame) "\306\211\306\307	\307=\203 \306	\203\306 \203\306 	@	A\n@\nA\310=\203 \311!\f>\206\302 \311!\204B \312\f>\206\302 \313\f>\203N \314\313!\206\302 \315\f>\203Z \314\315!\206\302 \316\f>\203s \314\317!\203s \314\313!\204s \314\315!?\206\302 \317\f>\205\302 \314\317!\202\302 \320=\203\217 \321!\f@Y\202\302 \322=\203\237 \323\324\"\f>\202\302 \325=\203\257 \323\326\"\f>\202\302 \327=\203\275 \330\f\"\202\302 \331\332\f#\202 -\207" [display conjuncts conjunct req options match nil t type window-system tty motif featurep gtk lucid x-toolkit min-colors display-color-cells class frame-parameter display-type background background-mode supports display-supports-face-attributes-p error "Unknown req `%S' with options `%S'" frame] 5 (#$ . 48953)])
#@82 Choose the proper attributes for FRAME, out of SPEC.
If SPEC is nil, return nil.
(defalias 'face-spec-choose #[(spec &optional frame) "\204 \306 	\307\211\f\203P \f\211A@\211@A\f\307\fA\204. \f@\2020 \f\310=\203? \202L \311\"\203L \307,\202 \n\203[ \312\n\"\202\\ +\207" [frame spec defaults result tail entry selected-frame nil default face-spec-set-match-display append display attrs thisval] 4 (#$ . 49934)])
#@55 Reset all attributes of FACE on FRAME to unspecified.
(defalias 'face-spec-reset-face #[(face &optional frame) "\211\205 	@\305\f\n@\306$\210)	A\211\204 \307)\207" [face-attribute-name-alist attrs attr-and-name face frame set-face-attribute unspecified nil] 6 (#$ . 50386)])
#@728 Set FACE's face spec, which controls its appearance, to SPEC.
If FOR-DEFFACE is t, set the base spec, the one that `defface'
  and Custom set.  (In that case, the caller must put it in the
  appropriate property, because that depends on the caller.)
If FOR-DEFFACE is nil, set the overriding spec (and store it
  in the `face-override-spec' property of FACE).

The appearance of FACE is controlled by the base spec,
by any custom theme specs on top of that, and by the
overriding spec on top of all the rest.

FOR-DEFFACE can also be a frame, in which case we set the
frame-specific attributes of FACE for that frame based on SPEC.
That usage is deprecated.

See `defface' for information about the format and meaning of SPEC.
(defalias 'face-spec-set #[(face spec &optional for-defface) "\305!\203\f \306	\n#\207\203 \307	\310N\206 	\311\312#\210\202+ \307	\310N\206' 	\313\n#\210\314 \312\211\203C \f@\315	\"\210\fA\211\2044 *\312\207" [for-defface face spec frame #1=#:--cl-dolist-temp-- framep face-spec-set-2 put face-alias face-modified nil face-override-spec frame-list face-spec-recalc] 4 (#$ . 50675)])
#@165 Reset the face attributes of FACE on FRAME according to its specs.
This applies the defface/custom spec first, then the custom theme specs,
then the override spec.
(defalias 'face-spec-recalc #[(face frame) "\306	\"\210\307N\206\f \310N\204$ \311N\204$ \312	\211\313N)#\210\314\n\315N!\211\316\211\203H @\312	\f\211A@)#\210A\211\2042 +\312	\n\317N#)\207" [face frame face-sym theme-faces spec #1=#:--cl-dolist-temp-- face-spec-reset-face face-alias customized-face saved-face face-spec-set-2 face-defface-spec reverse theme-face nil face-override-spec x] 6 (#$ . 51804)])
#@61 Set the face attributes of FACE on FRAME according to SPEC.
(defalias 'face-spec-set-2 #[(face frame spec) "\306	\"\307\203+ @\236\203  @\nB\211A@)\nB\211AA)\211\204 \310\311	\n\237$*\207" [spec frame attrs face-x-resources x face face-spec-choose nil apply set-face-attribute] 6 (#$ . 52402)])
#@177 Return t if attributes of FACE match values in plist ATTRS.
Optional parameter FRAME is the frame whose definition of FACE
is used.  If nil or omitted, use the selected frame.
(defalias 'face-attr-match-p #[(face attrs &optional frame) "\204 \306 	\307\310\f\311\"\205 \310\f\312\"?\310\f\313\"\205$ \310\f\314\"?\204/ \2035 \315\f!\2026 \f\203K \316\312\203H \305\202I \317#\210\203` \316\314\203] \320\202^ \317#\210\203\230 \n\203\230 \n@@\310\"\203 \321\"\202\200 \322\323#\232\nA+\202` -\207" [frame face-attribute-name-alist list match attrs bold selected-frame t plist-member :bold :weight :italic :slant copy-sequence plist-put normal italic plist-get unspecified face-attribute plist attr specified-value face value-now] 4 (#$ . 52720)])
#@73 Return t if FACE, on FRAME, matches what SPEC says it should look like.
(defalias 'face-spec-match-p #[(face spec &optional frame) "\303\304	\n\"\n#\207" [face spec frame face-attr-match-p face-spec-choose] 5 (#$ . 53525)])
#@118 Return the default face-spec for FACE, ignoring any user customization.
If there is no default for FACE, return nil.
(defalias 'face-default-spec #[(face) "\301N\207" [face face-defface-spec] 2 (#$ . 53757)])
(put 'face-default-spec 'byte-optimizer 'byte-compile-inline-expand)
#@145 Return the user's customized face-spec for FACE, or the default if none.
If there is neither a user setting nor a default for FACE, return nil.
(defalias 'face-user-default-spec #[(face) "\301N\206 \302N\206 \211\303N)\207" [face customized-face saved-face face-defface-spec] 3 (#$ . 54043)])
(put 'face-user-default-spec 'byte-optimizer 'byte-compile-inline-expand)
#@278 Return a list of colors supported for a particular frame.
The argument FRAME specifies which frame to try.
The value may be different for frames on different display types.
If FRAME doesn't support colors, the value is nil.
If FRAME is nil, that stands for the selected frame.
(defalias 'defined-colors #[(&optional frame) "\301\206 \302 !\303>\203 \304!\207\305\306\307!\"\207" [frame framep selected-frame (x w32 ns) xw-defined-colors mapcar car tty-color-alist] 4 (#$ . 54423)])
(defalias 'x-defined-colors 'defined-colors)
#@227 Return non-nil if color COLOR is supported on frame FRAME.
If FRAME is omitted or nil, use the selected frame.
If COLOR is the symbol `unspecified' or one of the strings
"unspecified-fg" or "unspecified-bg", the value is nil.
(defalias 'color-defined-p #[(color &optional frame) "\302\235?\205 \303	\206 \304 !\305\235\203 \306	\"\207\307	\"\247\207" [color frame (unspecified "unspecified-bg" "unspecified-fg") framep selected-frame (x w32 ns) xw-color-defined-p tty-color-translate] 3 (#$ . 54962)])
(defalias 'x-color-defined-p 'color-defined-p)
#@473 Return a description of the color named COLOR on frame FRAME.
The value is a list of integer RGB values--(RED GREEN BLUE).
These values appear to range from 0 to 65280 or 65535, depending
on the system; white is (65280 65280 65280) or (65535 65535 65535).
If FRAME is omitted or nil, use the selected frame.
If FRAME cannot display COLOR, the value is nil.
If COLOR is the symbol `unspecified' or one of the strings
"unspecified-fg" or "unspecified-bg", the value is nil.
(defalias 'color-values #[(color &optional frame) "\302\235?\205 \303	\206 \304 !\305>\203 \306	\"\207\307	\"\207" [color frame (unspecified "unspecified-fg" "unspecified-bg") framep selected-frame (x w32 ns) xw-color-values tty-color-values] 3 (#$ . 55524)])
(defalias 'x-color-values 'color-values)
#@233 Return t if DISPLAY supports color.
The optional argument DISPLAY specifies which display to ask about.
DISPLAY should be either a frame or a display name (a string).
If omitted or nil, that stands for the selected frame's display.
(defalias 'display-color-p #[(&optional display) "\301!\302>\203\f \303!\207\304!\207" [display framep-on-display (x w32 ns) xw-display-color-p tty-display-color-p] 2 (#$ . 56310)])
(defalias 'x-display-color-p 'display-color-p)
#@65 Return non-nil if frames on DISPLAY can display shades of gray.
(defalias 'display-grayscale-p #[(&optional display) "\302!\211\303>\203 \304!\202 \305!\306V)\207" [display frame-type framep-on-display (x w32 ns) x-display-grayscale-p tty-color-gray-shades 2] 3 (#$ . 56780)])
#@1421 Read a color name or RGB hex value: #RRRRGGGGBBBB.
Completion is available for color names, but not for RGB hex strings.
If the user inputs an RGB hex string, it must have the form
#XXXXXXXXXXXX or XXXXXXXXXXXX, where each X is a hex digit.  The
number of Xs must be a multiple of 3, with the same number of Xs for
each of red, green, and blue.  The order is red, green, blue.

In addition to standard color names and RGB hex values, the following
are available as color candidates.  In each case, the corresponding
color is used.

 * `foreground at point'   - foreground under the cursor
 * `background at point'   - background under the cursor

Checks input to be sure it represents a valid color.  If not, raises
an error (but see exception for empty input with non-nil
ALLOW-EMPTY-NAME-P).

Optional arg PROMPT is the prompt; if nil, uses a default prompt.

Interactively, or with optional arg CONVERT-TO-RGB-P non-nil, converts
an input color name to an RGB hex string.  Returns the RGB hex string.

Optional arg ALLOW-EMPTY-NAME-P controls what happens if the user
enters an empty color name (that is, just hits `RET').  If non-nil,
then returns an empty color name, "".  If nil, then raises an error.
Programs must test for "" if ALLOW-EMPTY-NAME-P is non-nil.  They
can then perform an appropriate action in case of empty input.

Interactively, or with optional arg MSG-P non-nil, echoes the color in
a message.
(defalias 'read-color #[(&optional prompt convert-to-RGB-p allow-empty-name-p msg-p) "\306\307\310\311 \"\312\n\206 \313	\"\314\315\230\203 \316 \202( \317\230\203( \320 \204. \321\322\323\"\203A \321\230\203A \321\202\245 \f\203Q \324H\325=\204Q \326P\f\204\232 \321\230\204b \327	\"\204g \330\331\"\210#\203\232 \332!\211$\204z \330\331\"\210\322\333\"\204\231 \334\335\336$@\337\"\336$A@\337\"\336\340$8\337\"$)%\203\244 \341\342\"\210,\207" [completion-ignore-case colors prompt color hex-string allow-empty-name-p t append ("foreground at point" "background at point") defined-colors completing-read "Color (name or #R+G+B+): " nil "foreground at point" foreground-color-at-point "background at point" background-color-at-point "" string-match "^#?\\([a-fA-F0-9][a-fA-F0-9][a-fA-F0-9]\\)+$" 0 35 "#" test-completion error "No such color: %S" x-color-values "^#\\([a-fA-F0-9][a-fA-F0-9][a-fA-F0-9]\\)+$" format "#%04X%04X%04X" logand 65535 2 message "Color: `%s'" convert-to-RGB-p components msg-p] 8 (#$ . 57071) "i\np\ni\np"])
#@139 Return the face of the character after point.
If it has more than one face, return the first one.
Return nil if it has no specified face.
(defalias 'face-at-point #[nil "\302`\303\"\206 \302`\301\"\206 \304\2119\203 \2022 :\2031 \305@!\2041 @\306>\2041 @\2022 \307\310	!\205: 	*\207" [faceprop face get-char-property read-face-name default keywordp (foreground-color background-color) nil facep] 4 (#$ . 59565)])
#@59 Return the foreground color of the character after point.
(defalias 'foreground-color-at-point #[nil "\303 \206 \304`\305\"\206 \304`\300\"\211\203, 9\203, \306\307\310#\211\311\235?\205( 	)\202P :\203O \312>\203> \312>A\202P \313>\205P \313>\211A@)\202P \307)\207" [face value x face-at-point get-char-property read-face-name face-foreground nil default ("unspecified-fg" "unspecified-bg") foreground-color :foreground] 5 (#$ . 59994)])
#@59 Return the background color of the character after point.
(defalias 'background-color-at-point #[nil "\303 \206 \304`\305\"\206 \304`\300\"\211\203, 9\203, \306\307\310#\211\311\235?\205( 	)\202P :\203O \312>\203> \312>A\202P \313>\205P \313>\211A@)\202P \307)\207" [face value x face-at-point get-char-property read-face-name face-background nil default ("unspecified-fg" "unspecified-bg") background-color :background] 5 (#$ . 60450)])
#@294 The brightness of the background.
Set this to the symbol `dark' if your background color is dark,
`light' if your background is light, or nil (automatic by default)
if you want Emacs to examine the brightness for you.  Don't set this
variable with `setq'; this won't have the expected effect.
(custom-declare-variable 'frame-background-mode 'nil '(#$ . 60907) :group 'faces :set #[(var value) "\302	\"\210\303\304\305 \"\207" [var value set-default mapc frame-set-background-mode frame-list] 3] :initialize 'custom-initialize-changed :type '(choice (const dark) (const light) (const :tag "automatic" nil)))
(byte-code "\301B\302\301!\204 \303\301\304\"\210\304\207" [current-load-list inhibit-frame-set-background-mode default-boundp set-default nil] 3)
#@181 Set up display-dependent faces on FRAME.
Display-dependent faces are those which have different definitions
according to the `background-mode' and `display-type' frame parameters.
(defalias 'frame-set-background-mode #[(frame) "?\205V\306	!\205 \307\310\311\"\312	\313\"\314	\315\"\305	!\306	!\204/ \2033 \316\317\"\2033 \320\2024 \321\211+\320=\203@ \321\202A \320,-\206\207 \n\203S \322\n\227!\202\207 \f\206\207 \323\232\203b ,\202\207 \324	\"\204n +\202\207 \325\326\324	\"\"\325\326\324\327	\"\"\330_Y\203\206 \320\202\207 \321.\306	!\204\235 \331	!\203\231 \332\202\262 \333\202\262 \334	!\203\247 \332\202\262 \335	!\203\261 \336\202\262 \333\312	\315\"/\312	\337\"0./=\205\315 0=?\205T\340\3411\342 \3402\2113\2033@\2112\343N\204\3442\2112\211\345N\2062\346N\2062\2112\347N))\350 #\20421B13A\2113\204\341 *\351	\315.B\337BD\"\210\342 \3402\2114\203R4@\21121>\204I\3522	\"\2104A\2114\2047,\340.\n\207" [inhibit-frame-set-background-mode frame bg-resource bg-color terminal-bg-mode tty-type window-system x-get-resource "backgroundMode" "BackgroundMode" frame-parameter background-color terminal-parameter background-mode string-match "^\\(xterm\\|\\rxvt\\|dtterm\\|eterm\\)" light dark intern "unspecified-fg" color-values apply + "white" 0.6 tty-display-color-p color mono display-color-p x-display-grayscale-p grayscale display-type nil t face-list face-override-spec face-spec-match-p customized-face saved-face face-defface-spec selected-frame modify-frame-parameters face-spec-recalc default-bg-mode non-default-bg-mode frame-background-mode bg-mode old-bg-mode old-display-type locally-modified-faces face #1=#:--cl-dolist-temp-- #2=#:--cl-dolist-temp--] 7 (#$ . 61672)])
#@106 Add geometry parameters for a named frame to parameter list PARAMETERS.
Value is the new parameter list.
(defalias 'x-handle-named-frame-geometry #[(parameters) "\306\236A\206 \306	\236A\211\203N \307 \204% \310 \204% \311\312\236A\206# !\210\313\211\314\315\316\"\211\203M \317!\211\203M \320	\f\321\f\236\204J \322\f\236\205K \323$*)\207" [parameters default-frame-alist x-resource-name x-display-name parsed res-geometry name window-system x-display-list x-open-connection display nil x-get-resource "geometry" "Geometry" x-parse-geometry append top left ((user-position . t) (user-size . t))] 7 (#$ . 63432)])
#@101 Handle the reverse-video frame parameter and X resource.
`x-create-frame' does not handle this one.
(defalias 'x-handle-reverse-video #[(frame parameters) "\306\236\206 \306	\236\206 \307\310\311\"\211\205 \312\n\227\313\235B)A\205q \314!\315\f\236A\316\f\236A\317\315B\316BD\"\210\320\f\236A\232\203M \317\320BC\"\210\321\f\236A\232\203_ \317\321BC\"\210\322\f\236A\232\205p \317\322BC\"+\207" [parameters default-frame-alist resource frame params bg reverse x-get-resource "reverseVideo" "ReverseVideo" nil ("on" "true") frame-parameters foreground-color background-color modify-frame-parameters border-color mouse-color cursor-color fg] 6 (#$ . 64066)])
#@387 Create a frame from optional frame parameters PARAMETERS.
Parameters not specified by PARAMETERS are taken from
`default-frame-alist'.  If PARAMETERS specify a frame name,
handle X geometry resources for that name.  If either PARAMETERS
or `default-frame-alist' contains a `reverse' parameter, or
the X resource ``reverseVideo'' is present, handle that.
Value is the new frame created.
(defalias 'x-create-frame-with-faces #[(&optional parameters) "\306!\307!\310\236\311\312\211\312\211\2030 @\313	\"A\211\204 *\314\315	B!\316\216\317\f!\210\320\f\"\210\321\f!\210\322\f\"\210\n\204V \323\f!\210\202\\ \324\f\nC\"\210\325)\f-\207" [parameters params visibility-spec delayed-params frame success x-handle-named-frame-geometry copy-tree visibility (foreground-color background-color font border-color cursor-color mouse-color visibility scroll-bar-foreground scroll-bar-background) nil assq-delete-all x-create-frame (visibility) ((byte-code "\204 \302	!\210\302\207" [success frame delete-frame] 2)) x-setup-function-keys x-handle-reverse-video frame-set-background-mode face-set-after-frame-default make-frame-visible modify-frame-parameters t param #1=#:--cl-dolist-temp--] 5 (#$ . 64756)])
#@284 Initialize the frame-local faces of FRAME.
Calculate the face definitions using the face specs, custom theme
settings, X resources, and `face-new-frame-defaults'.
Finally, apply any relevant face attributes found amongst the
frame parameters in PARAMETERS and `default-frame-alist'.
(defalias 'face-set-after-frame-default #[(frame &optional parameters) "\306 \237\307\211\203 	@\307\310\311\217\210	A\211\204\n *\312\211\307\211\203Q \f@\211@\211\236\2065 \236A\211\203I \313A@\3148$\210*\fA\211\204$ +\307\207" [face #1=#:--cl-dolist-temp-- face-params param #2=#:--cl-dolist-temp-- param-name face-list nil (byte-code "\302	\"\210\303=\204 \304	!\305>\203 \306	\"\210\307	\"\207" [face frame face-spec-recalc default window-system (x w32) make-face-x-resource-internal internal-merge-in-global-face] 3) ((error)) ((foreground-color default :foreground) (background-color default :background) (font default :font) (border-color border :background) (cursor-color cursor :background) (scroll-bar-foreground scroll-bar :foreground) (scroll-bar-background scroll-bar :background) (mouse-color mouse :background)) set-face-attribute 2 parameters default-frame-alist value frame] 7 (#$ . 65988)])
#@63 Handle the reverse-video frame parameter for terminal frames.
(defalias 'tty-handle-reverse-video #[(frame parameters) "\306\236\206	 \306	\236A\205H \307\n!\310\236A\311\236A\312\n\310B\311\fBD\"\210\f\313\236A\232\2037 \312\n\313BC\"\210\f\314\236A\232\205G \312\n\314BC\"+\207" [parameters default-frame-alist frame params bg fg reverse frame-parameters foreground-color background-color modify-frame-parameters mouse-color cursor-color] 5 (#$ . 67217)])
#@261 Create a frame from optional frame parameters PARAMETERS.
Parameters not specified by PARAMETERS are taken from
`default-frame-alist'.  If either PARAMETERS or `default-frame-alist'
contains a `reverse' parameter, handle that.  Value is the new frame
created.
(defalias 'tty-create-frame-with-faces #[(&optional parameters) "\305!\306\307\216\310 p\311\216\312\n\313\"\210\314\n\315\n!\"\210\316\n\317\"\2041 \320\n\317\321#\210\322\306\n\"\210\323\n!\210\324\n!\210\325\n\"\210\321,\n*\207" [parameters success frame #1=#:old-buffer #2=#:old-frame make-terminal-frame nil ((byte-code "\204 \302	!\210\302\207" [success frame delete-frame] 2)) selected-frame ((byte-code "\302!\203 \303\304\"\210\305	!\203 	q\210\302\207" [#2# #1# frame-live-p select-frame norecord buffer-live-p] 3)) select-frame norecord tty-handle-reverse-video frame-parameters terminal-parameter terminal-initted set-terminal-parameter t set-locale-environment tty-run-terminal-initialization frame-set-background-mode face-set-after-frame-default] 4 (#$ . 67693)])
#@266 Return the longest prefix of TYPE to which PRED returns non-nil.
TYPE should be a tty type name such as "xterm-16color".

The function tries only those prefixes that are followed by a
dash or underscore in the original type name, like "xterm" in
the above example.
(defalias 'tty-find-type #[(pred type) "\303	\203 \n	!\204 \304\305	\"\211\205 	\306O\211\204 )	\207" [hyphend type pred nil string-match "[-_][^-_]+$" 0] 4 (#$ . 68752)])
#@174 Run the special initialization code for the terminal type of FRAME.
The optional TYPE parameter may be used to override the autodetected
terminal type to a different value.
(defalias 'tty-run-terminal-initialization #[(frame &optional type) "\206 \306	!\307 p\310\216\311	\312\"\210\f\2053 \313\314\315\"\210\314\316\"\210\317!\203-  \210\320	\321#)+\207" [type frame #1=#:old-buffer #2=#:old-frame term-file-prefix term-init-func tty-type selected-frame ((byte-code "\302!\203 \303\304\"\210\305	!\203 	q\210\302\207" [#2# #1# frame-live-p select-frame norecord buffer-live-p] 3)) select-frame norecord nil tty-find-type #[(type) "\304	P!\211\205 \305\n\"\206 \306\n\307\211#)\207" [term-file-prefix type file load-history locate-library assoc load t] 5] #[(type) "\302\303\304P!\211!\207" [type term-init-func fboundp intern "terminal-init-"] 4] fboundp set-terminal-parameter terminal-initted] 4 (#$ . 69204)])
(defalias 'tty-set-up-initial-frame-faces #[nil "\301 \302!\210\303!)\207" [frame selected-frame frame-set-background-mode face-set-after-frame-default] 2])
(byte-code "\306\307\310\311#\210\312\307\313\314#\210\306\315\316\317#\210\312\315\316\314#\210\320\321\317\322\323\324%\210\325\326\327\330\323\321%\210\325\331\332\333\323\321%\210\325\334\335\336\323\321%\210\325\337\340\341\323\321%\210\325\342\343\344\323\321%\210\325\345\346\347\323\321%\210\325\350\351\352\323\321%\210\325\353\354\355\323\321\356\357&\210\325\360\361\362\323\321\356\357&\210\325\363\364\365\323\321\356\357&\210\325\366\367\370\323\321%\210\325\371\372\373\356\314\323\321&\210\325\374\375\376\323\321%\210\325\377\201Q \201R \356\314\323\201S \323\321&	\210\325\201T \201U \201V \323\321\356\357&\210\325\201W \201X \201Y \323\321\356\357&\210\320\201Z \317\201[ \323\201\\ \323\324\356\357&	\210\325\201\\ \201] \201^ \356\314\323\201Z \323\321&	\210\201_ \201` \201a \201\\ #\210\201_ \201` \201b \201c \314!\206\201d #\210\325\201e \201f \201g \356\357\323\201Z \323\321&	\210\201_ \201h \201a \201e #\210\201_ \201h \201b \201c \357!\206L\201d #\210\325\201i \201j \201k \356\357\323\201Z \323\321&	\210\201_ \201l \201a \201i #\210\201_ \201l \201b \201c \357!\206\205\201d #\210\325\201m \201n \201o \356\201p \323\201Z \323\321&	\210\325\201q \201r \201s \356\357\323\201Z \323\321&	\210\201_ \201t \201a \201q #\210\201_ \201t \201b \201c \357!\206\325\201d #\210\325\201u \201v \201w \356\314\323\321&\210\325\201x \201y \201z \356\357\323\321&\210\325\201{ \201| \201} \356\357\323\321&\210\201~ \201 \201{ D\"\325\201\200 \201\201 \201\202 \356\314\323\201\203 \323\321&	\210\325\201\204 \201\205 \201\206 \356\314\323\201\203 \323\321&	\210\325\201\207 \201\210 \201\211 \356\314\323\201\203 \323\321&	\210\325\201\212 \201\213 \201\214 \356\314\323\201\212 \323\321&	\210\201_ \201\212 \201\215 \201d #\210\325\201\216 \201\217 \201\220 \356\314\323\201\216 \323\321&	\210\325\201\221 \201\222 \201\223 \356\314\323\321&\210\325\201\224 \201\225 \201\226 \356\314\323\201\224 \323\321&	\210\325\201\227 \201\230 \201\231 \323\201\232 %\210\201M 	B\201\233 \201M !\204\335\201\234 \201M \317\"\210\201N 	B\201\233 \201N !\204\366\201\234 \201N \317\"\210\201P 	B\201\233 \201P !\204\201\234 \201P \317\"\210\201O 	B\201\233 \201O !\204(\201\234 \201O \317\"\210\201\235 	B\201\236 \201\237 !\210\201\240 	B\201\241 \201\242 !\210\201\243 	B\201\244 \201\245 !\210\201\246 	B\201\247 \201\250 !\210\201\251 \201\252 \211\201\253 \201\254 \201\255 \201\256 \201\254 \211\201\257 \201\260 \211\211\201\261 \201\257 \201\252 \211@ABCDEFGHIJKL\201c \201\262 KLJLHLFLELDLCLBLAL@LL\fLL\n\201\263 \260!M\201c \201\264 KLJLHLF\201\265 \260	!N\201c LGLQ!O\201c LILQ!P.\317\207" [minibuffer-prompt-properties current-load-list encoding registry avgwidth spacing defalias frame-update-faces ignore "" make-obsolete "no longer necessary." "21.1" frame-update-face-colors frame-set-background-mode nil custom-declare-group basic-faces "The standard faces of Emacs." :group faces custom-declare-face default ((t nil)) "Basic default face." bold ((t :weight bold)) "Basic bold face." italic ((((supports :slant italic)) :slant italic) (((supports :underline t)) :underline t) (t :slant italic)) "Basic italic face." bold-italic ((t :weight bold :slant italic)) "Basic bold-italic face." underline ((((supports :underline t)) :underline t) (((supports :weight bold)) :weight bold) (t :underline t)) "Basic underlined face." fixed-pitch ((t :family "Monospace")) "The basic fixed-pitch face." variable-pitch ((t :family "Sans Serif")) "The basic variable-pitch face." shadow ((((class color grayscale) (min-colors 88) (background light)) :foreground "grey50") (((class color grayscale) (min-colors 88) (background dark)) :foreground "grey70") (((class color) (min-colors 8) (background light)) :foreground "green") (((class color) (min-colors 8) (background dark)) :foreground "yellow")) "Basic face for shadowed text." :version "22.1" link ((((class color) (min-colors 88) (background light)) :foreground "blue1" :underline t) (((class color) (background light)) :foreground "blue" :underline t) (((class color) (min-colors 88) (background dark)) :foreground "cyan1" :underline t) (((class color) (background dark)) :foreground "cyan" :underline t) (t :inherit underline)) "Basic face for unvisited links." link-visited ((default :inherit link) (((class color) (background light)) :foreground "magenta4") (((class color) (background dark)) :foreground "violet")) "Basic face for visited links." highlight ((((class color) (min-colors 88) (background light)) :background "darkseagreen2") (((class color) (min-colors 88) (background dark)) :background "darkolivegreen") (((class color) (min-colors 16) (background light)) :background "darkseagreen2") (((class color) (min-colors 16) (background dark)) :background "darkolivegreen") (((class color) (min-colors 8)) :background "green" :foreground "black") (t :inverse-video t)) "Basic face for highlighting." region ((((class color) (min-colors 88) (background dark)) :background "blue3") (((class color) (min-colors 88) (background light) (type ns)) :background "ns_selection_color") (((class color) (min-colors 88) (background light)) :background "lightgoldenrod2") (((class color) (min-colors 16) (background dark)) :background "blue3") (((class color) (min-colors 16) (background light)) :background "lightgoldenrod2") (((class color) (min-colors 8)) :background "blue" :foreground "white") (((type tty) (class mono)) :inverse-video t) (t :background "gray")) "Basic face for highlighting the region." secondary-selection ((((class color) (min-colors 88) (background light)) :background "yellow1") (((class color) (min-colors 88) (background dark)) :background "SkyBlue4") (((class color) (min-colors 16) (background light)) :background "yellow") (((class color) (min-colors 16) (background dark)) :background "SkyBlue4") (((class color) (min-colors 8)) :background "cyan" :foreground "black") (t :inverse-video t)) "Basic face for displaying the secondary selection." trailing-whitespace resy resx pointsize pixelsize adstyle swidth slant\? slant weight\? weight family foundry - x-font-regexp x-font-regexp-head x-font-regexp-slant x-font-regexp-weight ((((class color) (background light)) :background "red1") (((class color) (background dark)) :background "red1") (t :inverse-video t)) "Basic face for highlighting trailing whitespace." whitespace-faces escape-glyph ((((background dark)) :foreground "cyan") (((type pc)) :foreground "magenta") (t :foreground "brown")) "Face for characters displayed as sequences using `^' or `\\'." nobreak-space ((((class color) (min-colors 88)) :inherit escape-glyph :underline t) (((class color) (min-colors 8)) :background "magenta") (t :inverse-video t)) "Face for displaying nobreak space." mode-line-faces "Faces used in the mode line." mode-line ((((class color) (min-colors 88)) :box (:line-width -1 :style released-button) :background "grey75" :foreground "black") (t :inverse-video t)) "Basic mode line face for selected window." put modeline face-alias obsolete-face purecopy t mode-line-inactive ((default :inherit mode-line) (((class color) (min-colors 88) (background light)) :weight light :box (:line-width -1 :color "grey75" :style nil) :foreground "grey20" :background "grey90") (((class color) (min-colors 88) (background dark)) :weight light :box (:line-width -1 :color "grey40" :style nil) :foreground "grey80" :background "grey30")) "Basic mode line face for non-selected windows." modeline-inactive mode-line-highlight ((((class color) (min-colors 88)) :box (:line-width 2 :color "grey40" :style released-button)) (t :inherit highlight)) "Basic mode line face for highlighting." modeline-highlight mode-line-emphasis ((t (:weight bold))) "Face used to emphasize certain mode line features.\nUse the face `mode-line-highlight' for features that can be selected." "23.1" mode-line-buffer-id ((t (:weight bold))) "Face used for buffer identification parts of the mode line." modeline-buffer-id header-line ((default :inherit mode-line) (((type tty)) :inverse-video nil :underline t) (((class color grayscale) (background light)) :background "grey90" :foreground "grey20" :box nil) (((class color grayscale) (background dark)) :background "grey20" :foreground "grey90" :box nil) (((class mono) (background light)) :background "white" :foreground "black" :inverse-video nil :box nil :underline t) (((class mono) (background dark)) :background "black" :foreground "white" :inverse-video nil :box nil :underline t)) "Basic header-line face." vertical-border ((((type tty)) :inherit mode-line-inactive)) "Face used for vertical window dividers on ttys." minibuffer-prompt ((((background dark)) :foreground "cyan") (((type pc)) :foreground "magenta") (t :foreground "medium blue")) "Face for minibuffer prompts.\nBy default, Emacs automatically adds this face to the value of\n`minibuffer-prompt-properties', which is a list of text properties\nused to display the prompt text." append face fringe ((((class color) (background light)) :background "grey95") (((class color) (background dark)) :background "grey10") (t :background "gray")) "Basic face for the fringes to the left and right of windows under X." frames scroll-bar ((t nil)) "Basic face for the scroll bar colors under X." border ((t nil)) "Basic face for the frame border under X." cursor ((t nil)) "Basic face for the cursor color under X.\nNote: Other faces cannot inherit from the cursor face." face-no-inherit mouse ((t nil)) "Basic face for the mouse color under X." tool-bar ((default :box (:line-width 1 :style released-button) :foreground "black") (((type x w32 ns) (class color)) :background "grey75") (((type x) (class mono)) :background "grey")) "Basic tool-bar face." menu ((((type tty)) :inverse-video t) (((type x-toolkit))) (t :inverse-video t)) "Basic face for the font and colors of the menu bar and popup menus." help-argument-name ((((supports :slant italic)) :inherit italic)) "Face to highlight argument names in *Help* buffers." help default-boundp set-default x-font-regexp-weight-subnum (lambda (#1=#:defconst-tmp-var) (defconst x-font-regexp-weight-subnum #1#)) 1 x-font-regexp-slant-subnum (lambda (#2=#:defconst-tmp-var) (defconst x-font-regexp-slant-subnum #2#)) 2 x-font-regexp-swidth-subnum (lambda (#3=#:defconst-tmp-var) (defconst x-font-regexp-swidth-subnum #3#)) 3 x-font-regexp-adstyle-subnum (lambda (#4=#:defconst-tmp-var) (defconst x-font-regexp-adstyle-subnum #4#)) 4 "[-?]" "[^-]+" "\\(bold\\|demibold\\|medium\\)" "\\([^-]*\\)" "\\([ior]\\)" "\\([^-]?\\)" "[0-9]+" "[0-9][0-9]+" "[cmp?*]" "\\`\\*?[-?*]" "\\*?\\'" "\\`[-?*]" "\\([-*?]\\|\\'\\)"] 30)
#@284 Return a font name matching PATTERN.
All wildcards in PATTERN are instantiated.
If PATTERN is nil, return the name of the frame's base font, which never
contains wildcards.
Given optional arguments FACE and FRAME, return a font which is
also the same size as FACE on FRAME, or fail.
(defalias 'x-resolve-font-name #[(pattern &optional face frame) "9\204	 \304!	\305=\203 \306\n\203` \307\n	\310$\211\204\\ \203W \311\312\n\"\203@ \313!\2048 \314\315!\210\202\\ \314\316\"\210\202\\ \313!\204N \314\317\n\"\210\202\\ \314\320\n#\210\202\\ \314\321\n\"\210@)\207\322\323\324 !\236A\207" [face frame pattern fonts face-name t nil x-list-fonts 1 string-match "\\*" face-font error "No matching fonts are the same height as the frame default font" "No matching fonts are the same height as face `%s'" "Height of font `%s' doesn't match the frame default font" "Height of font `%s' doesn't match face `%s'" "No fonts match `%s'" font frame-parameters selected-frame] 6 (#$ . 80980)])
(defalias 'x-frob-font-weight #[(font which) "\306\307	\n\"\203  \n\310\224O\f\n\225\224O\311\n\225\312O\260\202K \307\f\n\"\2037 \n\310\313\224O\f\n\313\225\312OQ\202K \307\n\"\205K \n\310\313\224O\f\n\313\225\312OQ)\207" [case-fold-search x-font-regexp font x-font-regexp-weight-subnum which x-font-regexp-adstyle-subnum t string-match 0 "*" nil 1 x-font-regexp-head x-font-regexp-weight] 7])
(make-obsolete 'x-frob-font-weight 'make-face-\.\.\. "21.1")
(defalias 'x-frob-font-slant #[(font which) "\306\307	\n\"\203  \n\310\224O\f\n\225\224O\311\n\225\312O\260\202K \307\n\"\2037 \n\310\313\224O\f\n\313\225\312OQ\202K \307\n\"\205K \n\310\314\224O\f\n\314\225\312OQ)\207" [case-fold-search x-font-regexp font x-font-regexp-slant-subnum which x-font-regexp-adstyle-subnum t string-match 0 "*" nil 2 1 x-font-regexp-head x-font-regexp-slant] 7])
(byte-code "\300\301\302\303#\210\304\305\306\"\210\304\307\301\"\207" [make-obsolete x-frob-font-slant make-face-\.\.\. "21.1" defalias internal-frob-font-weight x-frob-font-weight internal-frob-font-slant] 4)
#@94 Given an X font specification, make a bold version of it.
If that can't be done, return nil.
(defalias 'x-make-font-bold #[(font) "\301\302\"\207" [font internal-frob-font-weight "bold"] 3 (#$ . 83055)])
(make-obsolete 'x-make-font-bold 'make-face-bold "21.1")
#@98 Given an X font specification, make a demibold version of it.
If that can't be done, return nil.
(defalias 'x-make-font-demibold #[(font) "\301\302\"\207" [font internal-frob-font-weight "demibold"] 3 (#$ . 83323)])
(make-obsolete 'x-make-font-demibold 'make-face-bold "21.1")
#@98 Given an X font specification, make a non-bold version of it.
If that can't be done, return nil.
(defalias 'x-make-font-unbold #[(font) "\301\302\"\207" [font internal-frob-font-weight "medium"] 3 (#$ . 83607)])
(make-obsolete 'x-make-font-unbold 'make-face-unbold "21.1")
#@97 Given an X font specification, make an italic version of it.
If that can't be done, return nil.
(defalias 'x-make-font-italic #[(font) "\301\302\"\207" [font internal-frob-font-slant "i"] 3 (#$ . 83887)])
(make-obsolete 'x-make-font-italic 'make-face-italic "21.1")
#@98 Given an X font specification, make an oblique version of it.
If that can't be done, return nil.
(defalias 'x-make-font-oblique #[(font) "\301\302\"\207" [font internal-frob-font-slant "o"] 3 (#$ . 84160)])
(make-obsolete 'x-make-font-oblique 'make-face-italic "21.1")
#@100 Given an X font specification, make a non-italic version of it.
If that can't be done, return nil.
(defalias 'x-make-font-unitalic #[(font) "\301\302\"\207" [font internal-frob-font-slant "r"] 3 (#$ . 84437)])
(make-obsolete 'x-make-font-unitalic 'make-face-unitalic "21.1")
#@105 Given an X font specification, make a bold and italic version of it.
If that can't be done, return nil.
(defalias 'x-make-font-bold-italic #[(font) "\301\302\"\211\205 \303\304\"\207" [font internal-frob-font-weight "bold" internal-frob-font-slant "i"] 3 (#$ . 84720)])
(byte-code "\300\301\302\303#\210\304\305!\207" [make-obsolete x-make-font-bold-italic make-face-bold-italic "21.1" provide faces] 4)
