APPROVE COMMIT 21.5
"I know it's not much, but it's the best I can do."
It's not really the right place, it's not really enough, but ....
Patches welcome, and it won't be hard to improve on this! ;-)
Index: lisp/ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/ChangeLog,v
retrieving revision 1.701
diff -u -r1.701 ChangeLog
--- lisp/ChangeLog	29 Nov 2005 08:22:58 -0000	1.701
+++ lisp/ChangeLog	29 Nov 2005 11:22:44 -0000
@@ -0,0 +1,4 @@
+2005-11-29  Stephen J. Turnbull  <stephen(a)xemacs.org>
+
+	* objects.el (make-font-specifier): Document font name syntaxes.
+
Index: man/ChangeLog
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/man/ChangeLog,v
retrieving revision 1.324
diff -u -r1.324 ChangeLog
--- man/ChangeLog	26 Nov 2005 11:46:03 -0000	1.324
+++ man/ChangeLog	29 Nov 2005 11:22:45 -0000
@@ -0,0 +1,5 @@
+2005-11-29  Stephen J. Turnbull  <stephen(a)xemacs.org>
+
+	* xemacs/custom.texi (Faces): Describe some of the more important
+	font naming syntaxes under `set-face-font'.  Fix a typo.
+
Index: lisp/objects.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/lisp/objects.el,v
retrieving revision 1.5
diff -u -r1.5 objects.el
--- lisp/objects.el	12 Apr 2001 18:21:32 -0000	1.5
+++ lisp/objects.el	29 Nov 2005 11:22:44 -0000
@@ -50,9 +50,11 @@
 
 Valid instantiators for font specifiers are:
 
--- a string naming a font (e.g. under X this might be
-   \"-*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*\" for a 14-point
-   upright medium-weight Courier font)
+-- a string naming a font; syntax is platform dependent.  Some examples for
+   a 14-point upright medium-weight Courier font:
+   X11 (and GTK1): \"-*-courier-medium-r-*-*-*-140-*-*-*-*-iso8859-*\"
+   Xft (and GTK2): \"Courier-14\"
+   MS-Windows:     \"Courier:14:Western\"
 -- a font instance (use that instance directly if the device matches,
    or use the string that generated it)
 -- a vector of no elements (only on TTY's; this means to set no font
Index: man/xemacs/custom.texi
===================================================================
RCS file: /pack/xemacscvs/XEmacs/xemacs/man/xemacs/custom.texi,v
retrieving revision 1.20
diff -u -r1.20 custom.texi
--- man/xemacs/custom.texi	18 Apr 2005 04:00:10 -0000	1.20
+++ man/xemacs/custom.texi	29 Nov 2005 11:22:45 -0000
@@ -2148,7 +2148,7 @@
 Alternately, you can use a simpler version of
 @code{set-face-background-pixmap} called
 @code{set-face-background-pixmap-file}. This function does not give you
-as much control on the pixmap instanciator, but provides filename
+as much control on the pixmap instantiator, but provides filename
 completion.
 
 @findex set-face-font
@@ -2157,6 +2157,49 @@
 name of a font.  When called from a program, if the
 optional @var{frame} argument is provided, the face is changed only
 in that frame; otherwise, it is changed in all frames.
+
+The syntax of the @var{font} argument varies according to platform.  In
+each of the following syntaxes, the example shows how to specify a
+14-point upright bold Courier font.
+
+@table @strong
+@item X11
+The X11 syntax is defined by the @dfn{X Logical Font Descriptor} (XLFD)
+standard.  An XLFD contains 14 fields each preceded by a hyphen:
+foundry, family, weight, slant, swidth, adstyle, pixelsize, pointsize,
+xresolution, yresolution, spacing, averagewidth, registry, and encoding.
+It is usually sufficient to specify family, weight, slant, pointsize,
+registry, and encoding, wildcarding the rest with @samp{*}.  If you're
+not sure what's available, you can wildcard some of the fields usually
+specified, too.  Here's our example font in XLFD syntax:
+@code{"-*-courier-bold-r-*-*-*-140-*-*-*-*-iso8859-*"}.
+The XLFD syntax is also used for GTK+ version 1.  XLFD names must be
+encoding in ISO-8859-1.
+
+@item Xft
+The Xft syntax is defined by the @file{fontconfig} library
+@ref{Font Names,,,fontconfig}.  It is less a font naming convention than
+a way to express any arbitrary subset of the font's properties in a
+syntax that is both human- and machine-readable.  A @file{fontconfig}
+font name contains the family, a hyphen, and the pointsize, followed by
+an arbitrary sequence of properties.  Each property consists of a colon,
+a keyword, an equals sign, and the property value.  Here's our example
+font in @file{fontconfig} syntax: @code{"Courier-14:weight=bold"}.  This
+syntax admits ``style abbreviations'' which can be user-defined.  A
+style is a single keyword denoting a sequence of properties.  So the
+example font may be abbreviated to @code{"Courier-14:bold"} ("bold"
is a
+standard abbreviation for "weight=bold").  The @file{fontconfig} syntax
+is also used for GTK+ version 2.  @file{fontconfig} names must be
+encoded in UTF-8.
+
+@item MS-Windows
+The MS Windows syntax is superficially similar to that of Xft but
+actually is more like XLFD.  A font name consists of five fields,
+family, size, slant, weight, and encoding, each expressed as a keyword
+taking on standardized values (except family, which is just a name).
+Here's our example font in MS Windows syntax:
+@code{"Courier:14:Bold:Western"}.
+@end table
 
 @findex set-face-foreground
 You can set the foreground color of the specified @var{face} with the
-- 
School of Systems and Information Engineering 
http://turnbull.sk.tsukuba.ac.jp
University of Tsukuba                    Tennodai 1-1-1 Tsukuba 305-8573 JAPAN
               Ask not how you can "do" free software business;
              ask what your business can "do for" free software.