/usr/local/share/emacs/20.2/etc/NEWS line 199
*** Defining fontsets.
Emacs does not use any fontset by default. Its default font is still
chosen as in previous versions. You can tell Emacs to use a fontset
with the `-fn' option or the `Font' X resource.
Emacs creates a standard fontset automatically according to the value
of standard-fontset-spec. This fontset's short name is
`fontset-standard'. Bold, italic, and bold-italic variants of the
standard fontset are created automatically.
If you specify a default ASCII font with the `Font' resource or `-fn'
argument, a fontset is generated from it. This works by replacing the
FOUNDARY, FAMILY, ADD_STYLE, and AVERAGE_WIDTH fields of the font name
with `*' then using this to specify a fontset. This fontset's short
name is `fontset-startup'.
Emacs checks resources of the form Fontset-N where N is 0, 1, 2...
-
The resource value should have this form:
-
FONTSET-NAME, [CHARSET-NAME:FONT-NAME]...
-
FONTSET-NAME should have the form of a standard X font name,
except:
-
- most fields should be just the wild card "*".
- the CHARSET_REGISTRY field should be "fontset"
- the CHARSET_ENCODING field can be any nickname of the fontset.
The construct CHARSET-NAME:FONT-NAME can be repeated any number
of times; each time specifies the font for one character set.
CHARSET-NAME should be the name name of a character set, and
FONT-NAME should specify an actual font to use for that character set.
Each of these fontsets has an alias which is made from the
last two font name fields, CHARSET_REGISTRY and CHARSET_ENCODING.
You can refer to the fontset by that alias or by its full name.
For any character sets that you don't mention, Emacs tries to choose a
font by substituting into FONTSET-NAME. For instance, with the
following resource,
Emacs*Fontset-0: -*-fixed-medium-r-normal-*-24-*-*-*-*-*-fontset-24
-
the font for ASCII is generated as below:
-
-*-fixed-medium-r-normal-*-24-*-ISO8859-1
-
Here is the substitution rule:
-
Change CHARSET_REGISTRY and CHARSET_ENCODING to that of the charset
defined in the variable x-charset-registries. For instance, ASCII has
the entry
(ascii . "ISO8859-1")
in this variable. Then, reduce sequences of wild cards
-*-...-*-
with a single wildcard
-*-.
(This is to prevent use of auto-scaled fonts.)
The function which processes the fontset resource value to create the
fontset is called create-fontset-from-fontset-spec. You can also call
that function explicitly to create a fontset.
With the X resource Emacs.Font, you can specify a fontset name just
like an actual font name. But be careful not to specify a fontset
name in a wildcard resource like Emacs*Font--that tries to specify the
fontset for other purposes including menus, and they cannot handle
fontsets.