Adujst indentation between programlisting in fontconfig-user.sgml

Fixes https://gitlab.freedesktop.org/fontconfig/fontconfig/-/issues/344
This commit is contained in:
Akira TAGOH 2023-01-27 14:25:11 +09:00
parent bd95bafba0
commit c0eaca02ef
1 changed files with 315 additions and 275 deletions

View File

@ -91,57 +91,58 @@ properties for font matching and font completion. Others are provided as a
convenience for the applications' rendering mechanism. convenience for the applications' rendering mechanism.
</para> </para>
<programlisting> <programlisting>
Property Type Description Property Type Description
-------------------------------------------------------------- --------------------------------------------------------------
family String Font family names family String Font family names
familylang String Languages corresponding to each family familylang String Languages corresponding to each family
style String Font style. Overrides weight and slant style String Font style. Overrides weight and slant
stylelang String Languages corresponding to each style stylelang String Languages corresponding to each style
fullname String Font full names (often includes style) fullname String Font full names (often includes style)
fullnamelang String Languages corresponding to each fullname fullnamelang String Languages corresponding to each fullname
slant Int Italic, oblique or roman slant Int Italic, oblique or roman
weight Int Light, medium, demibold, bold or black weight Int Light, medium, demibold, bold or black
size Double Point size size Double Point size
width Int Condensed, normal or expanded width Int Condensed, normal or expanded
aspect Double Stretches glyphs horizontally before hinting aspect Double Stretches glyphs horizontally before hinting
pixelsize Double Pixel size pixelsize Double Pixel size
spacing Int Proportional, dual-width, monospace or charcell spacing Int Proportional, dual-width, monospace or charcell
foundry String Font foundry name foundry String Font foundry name
antialias Bool Whether glyphs can be antialiased antialias Bool Whether glyphs can be antialiased
hinting Bool Whether the rasterizer should use hinting hinting Bool Whether the rasterizer should use hinting
hintstyle Int Automatic hinting style hintstyle Int Automatic hinting style
verticallayout Bool Use vertical layout verticallayout Bool Use vertical layout
autohint Bool Use autohinter instead of normal hinter autohint Bool Use autohinter instead of normal hinter
globaladvance Bool Use font global advance data (deprecated) globaladvance Bool Use font global advance data (deprecated)
file String The filename holding the font file String The filename holding the font
index Int The index of the font within the file index Int The index of the font within the file
ftface FT_Face Use the specified FreeType face object ftface FT_Face Use the specified FreeType face object
rasterizer String Which rasterizer is in use (deprecated) rasterizer String Which rasterizer is in use (deprecated)
outline Bool Whether the glyphs are outlines outline Bool Whether the glyphs are outlines
scalable Bool Whether glyphs can be scaled scalable Bool Whether glyphs can be scaled
color Bool Whether any glyphs have color color Bool Whether any glyphs have color
scale Double Scale factor for point->pixel conversions (deprecated) scale Double Scale factor for point->pixel conversions
dpi Double Target dots per inch (deprecated)
rgba Int unknown, rgb, bgr, vrgb, vbgr, dpi Double Target dots per inch
none - subpixel geometry rgba Int unknown, rgb, bgr, vrgb, vbgr,
lcdfilter Int Type of LCD filter none - subpixel geometry
minspace Bool Eliminate leading from line spacing lcdfilter Int Type of LCD filter
charset CharSet Unicode chars encoded by the font minspace Bool Eliminate leading from line spacing
lang String List of RFC-3066-style languages this charset CharSet Unicode chars encoded by the font
font supports lang String List of RFC-3066-style languages this
fontversion Int Version number of the font font supports
capability String List of layout capabilities in the font fontversion Int Version number of the font
fontformat String String name of the font format capability String List of layout capabilities in the font
embolden Bool Rasterizer should synthetically embolden the font fontformat String String name of the font format
embeddedbitmap Bool Use the embedded bitmap instead of the outline embolden Bool Rasterizer should synthetically embolden the font
decorative Bool Whether the style is a decorative variant embeddedbitmap Bool Use the embedded bitmap instead of the outline
fontfeatures String List of the feature tags in OpenType to be enabled decorative Bool Whether the style is a decorative variant
namelang String Language name to be used for the default value of fontfeatures String List of the feature tags in OpenType to be enabled
familylang, stylelang, and fullnamelang namelang String Language name to be used for the default value of
prgname String String Name of the running program familylang, stylelang, and fullnamelang
postscriptname String Font family name in PostScript prgname String String Name of the running program
fonthashint Bool Whether the font has hinting postscriptname String Font family name in PostScript
order Int Order number of the font fonthashint Bool Whether the font has hinting
order Int Order number of the font
</programlisting> </programlisting>
</refsect2> </refsect2>
<refsect2> <refsect2>
@ -211,7 +212,7 @@ list of family names, second a list of point sizes and finally a list of
additional properties: additional properties:
</para> </para>
<programlisting> <programlisting>
&lt;families&gt;-&lt;point sizes&gt;:&lt;name1&gt;=&lt;values1&gt;:&lt;name2&gt;=&lt;values2&gt;... &lt;families&gt;-&lt;point sizes&gt;:&lt;name1&gt;=&lt;values1&gt;:&lt;name2&gt;=&lt;values2&gt;...
</programlisting> </programlisting>
<para> <para>
Values in a list are separated with commas. The name needn't include either Values in a list are separated with commas. The name needn't include either
@ -220,13 +221,13 @@ symbolic constants that simultaneously indicate both a name and a value.
Here are some examples: Here are some examples:
</para> </para>
<programlisting> <programlisting>
Name Meaning Name Meaning
---------------------------------------------------------- ----------------------------------------------------------
Times-12 12 point Times Roman Times-12 12 point Times Roman
Times-12:bold 12 point Times Bold Times-12:bold 12 point Times Bold
Courier:italic Courier Italic in the default size Courier:italic Courier Italic in the default size
Monospace:matrix=1 .1 0 1 The users preferred monospace font Monospace:matrix=1 .1 0 1 The users preferred monospace font
with artificial obliquing with artificial obliquing
</programlisting> </programlisting>
<para> <para>
The '\', '-', ':' and ',' characters in family names must be preceded by a The '\', '-', ':' and ',' characters in family names must be preceded by a
@ -246,21 +247,21 @@ interpreted as a number, and each bit within that value controls different
debugging messages. debugging messages.
</para> </para>
<programlisting> <programlisting>
Name Value Meaning Name Value Meaning
--------------------------------------------------------- ---------------------------------------------------------
MATCH 1 Brief information about font matching MATCH 1 Brief information about font matching
MATCHV 2 Extensive font matching information MATCHV 2 Extensive font matching information
EDIT 4 Monitor match/test/edit execution EDIT 4 Monitor match/test/edit execution
FONTSET 8 Track loading of font information at startup FONTSET 8 Track loading of font information at startup
CACHE 16 Watch cache files being written CACHE 16 Watch cache files being written
CACHEV 32 Extensive cache file writing information CACHEV 32 Extensive cache file writing information
PARSE 64 (no longer in use) PARSE 64 (no longer in use)
SCAN 128 Watch font files being scanned to build caches SCAN 128 Watch font files being scanned to build caches
SCANV 256 Verbose font file scanning information SCANV 256 Verbose font file scanning information
MEMORY 512 Monitor fontconfig memory usage MEMORY 512 Monitor fontconfig memory usage
CONFIG 1024 Monitor which config files are loaded CONFIG 1024 Monitor which config files are loaded
LANGSET 2048 Dump char sets used to construct lang values LANGSET 2048 Dump char sets used to construct lang values
MATCH2 4096 Display font-matching transformation in patterns MATCH2 4096 Display font-matching transformation in patterns
</programlisting> </programlisting>
<para> <para>
Add the value of the desired debug levels together and assign that (in Add the value of the desired debug levels together and assign that (in
@ -301,11 +302,11 @@ The fontconfig document type definition resides in the external entity
directory (&confdir;). Each configuration file should contain the directory (&confdir;). Each configuration file should contain the
following structure: following structure:
<programlisting> <programlisting>
&lt;?xml version="1.0"?&gt; &lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt; &lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;fontconfig&gt; &lt;fontconfig&gt;
... ...
&lt;/fontconfig&gt; &lt;/fontconfig&gt;
</programlisting> </programlisting>
</para> </para>
<refsect2><title><literal>&lt;fontconfig&gt;</literal></title><para> <refsect2><title><literal>&lt;fontconfig&gt;</literal></title><para>
@ -449,16 +450,16 @@ the property are given the indicated binding ("strong", "weak" or "same")
with "same" binding using the value from the matched pattern element. with "same" binding using the value from the matched pattern element.
'mode' is one of: 'mode' is one of:
<programlisting> <programlisting>
Mode With Match Without Match Mode With Match Without Match
--------------------------------------------------------------------- ---------------------------------------------------------------------
"assign" Replace matching value Replace all values "assign" Replace matching value Replace all values
"assign_replace" Replace all values Replace all values "assign_replace" Replace all values Replace all values
"prepend" Insert before matching Insert at head of list "prepend" Insert before matching Insert at head of list
"prepend_first" Insert at head of list Insert at head of list "prepend_first" Insert at head of list Insert at head of list
"append" Append after matching Append at end of list "append" Append after matching Append at end of list
"append_last" Append at end of list Append at end of list "append_last" Append at end of list Append at end of list
"delete" Delete matching value Delete all values "delete" Delete matching value Delete all values
"delete_all" Delete all values Delete all values "delete_all" Delete all values Delete all values
</programlisting> </programlisting>
</para></refsect2> </para></refsect2>
<refsect2><title><literal>&lt;int&gt;</literal>, <literal>&lt;double&gt;</literal>, <literal>&lt;string&gt;</literal>, <literal>&lt;bool&gt;</literal></title><para> <refsect2><title><literal>&lt;int&gt;</literal>, <literal>&lt;double&gt;</literal>, <literal>&lt;string&gt;</literal>, <literal>&lt;bool&gt;</literal></title><para>
@ -499,54 +500,57 @@ of 'font' in a match that has target="pattern".
Holds the name of a constant; these are always integers and serve as Holds the name of a constant; these are always integers and serve as
symbolic names for common font values: symbolic names for common font values:
<programlisting> <programlisting>
Constant Property Value Constant Property Value
------------------------------------- -------------------------------------
thin weight 0 thin weight 0
extralight weight 40 extralight weight 40
ultralight weight 40 ultralight weight 40
light weight 50 light weight 50
demilight weight 55 demilight weight 55
semilight weight 55 semilight weight 55
book weight 75 book weight 75
regular weight 80 regular weight 80
normal weight 80 normal weight 80
medium weight 100 medium weight 100
demibold weight 180 demibold weight 180
semibold weight 180 semibold weight 180
bold weight 200 bold weight 200
extrabold weight 205 extrabold weight 205
black weight 210 ultrabold weight 205
heavy weight 210 black weight 210
roman slant 0 heavy weight 210
italic slant 100 extrablack weight 215
oblique slant 110 ultrablack weight 215
ultracondensed width 50 roman slant 0
extracondensed width 63 italic slant 100
condensed width 75 oblique slant 110
semicondensed width 87 ultracondensed width 50
normal width 100 extracondensed width 63
semiexpanded width 113 condensed width 75
expanded width 125 semicondensed width 87
extraexpanded width 150 normal width 100
ultraexpanded width 200 semiexpanded width 113
proportional spacing 0 expanded width 125
dual spacing 90 extraexpanded width 150
mono spacing 100 ultraexpanded width 200
charcell spacing 110 proportional spacing 0
unknown rgba 0 dual spacing 90
rgb rgba 1 mono spacing 100
bgr rgba 2 charcell spacing 110
vrgb rgba 3 unknown rgba 0
vbgr rgba 4 rgb rgba 1
none rgba 5 bgr rgba 2
lcdnone lcdfilter 0 vrgb rgba 3
lcddefault lcdfilter 1 vbgr rgba 4
lcdlight lcdfilter 2 none rgba 5
lcdlegacy lcdfilter 3 lcdnone lcdfilter 0
hintnone hintstyle 0 lcddefault lcdfilter 1
hintslight hintstyle 1 lcdlight lcdfilter 2
hintmedium hintstyle 2 lcdlegacy lcdfilter 3
hintfull hintstyle 3 hintnone hintstyle 0
hintslight hintstyle 1
hintmedium hintstyle 2
hintfull hintstyle 3
</programlisting> </programlisting>
</para> </para>
</refsect2> </refsect2>
@ -596,103 +600,135 @@ This is an example of a system-wide configuration file
&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt; &lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;!-- &confdir;/fonts.conf file to configure system font access --&gt; &lt;!-- &confdir;/fonts.conf file to configure system font access --&gt;
&lt;fontconfig&gt; &lt;fontconfig&gt;
&lt;!-- &lt;!--
Find fonts in these directories Find fonts in these directories
--&gt; --&gt;
&lt;dir&gt;/usr/share/fonts&lt;/dir&gt; &lt;dir&gt;/usr/share/fonts&lt;/dir&gt;
&lt;dir&gt;/usr/X11R6/lib/X11/fonts&lt;/dir&gt; &lt;dir&gt;/usr/X11R6/lib/X11/fonts&lt;/dir&gt;
&lt;!-- &lt;!--
Accept deprecated 'mono' alias, replacing it with 'monospace' Accept deprecated 'mono' alias, replacing it with 'monospace'
--&gt; --&gt;
&lt;match target="pattern"&gt; &lt;match target="pattern"&gt;
&lt;test qual="any" name="family"&gt;&lt;string&gt;mono&lt;/string&gt;&lt;/test&gt; &lt;test qual="any" name="family"&gt;
&lt;edit name="family" mode="assign"&gt;&lt;string&gt;monospace&lt;/string&gt;&lt;/edit&gt; &lt;string&gt;mono&lt;/string&gt;
&lt;/match&gt; &lt;/test&gt;
&lt;edit name="family" mode="assign"&gt;
&lt;string&gt;monospace&lt;/string&gt;
&lt;/edit&gt;
&lt;/match&gt;
&lt;!-- &lt;!--
Names not including any well known alias are given 'sans-serif' Names not including any well known alias are given 'sans-serif'
--&gt; --&gt;
&lt;match target="pattern"&gt; &lt;match target="pattern"&gt;
&lt;test qual="all" name="family" compare="not_eq"&gt;&lt;string&gt;sans-serif&lt;/string&gt;&lt;/test&gt; &lt;test qual="all" name="family" compare="not_eq"&gt;
&lt;test qual="all" name="family" compare="not_eq"&gt;&lt;string&gt;serif&lt;/string&gt;&lt;/test&gt; &lt;string&gt;sans-serif&lt;/string&gt;
&lt;test qual="all" name="family" compare="not_eq"&gt;&lt;string&gt;monospace&lt;/string&gt;&lt;/test&gt; &lt;/test&gt;
&lt;edit name="family" mode="append_last"&gt;&lt;string&gt;sans-serif&lt;/string&gt;&lt;/edit&gt; &lt;test qual="all" name="family" compare="not_eq"&gt;
&lt;/match&gt; &lt;string&gt;serif&lt;/string&gt;
&lt;/test&gt;
&lt;test qual="all" name="family" compare="not_eq"&gt;
&lt;string&gt;monospace&lt;/string&gt;
&lt;/test&gt;
&lt;edit name="family" mode="append_last"&gt;
&lt;string&gt;sans-serif&lt;/string&gt;
&lt;/edit&gt;
&lt;/match&gt;
&lt;!-- &lt;!--
Load per-user customization file, but don't complain Load per-user customization file, but don't complain
if it doesn't exist if it doesn't exist
--&gt; --&gt;
&lt;include ignore_missing="yes" prefix="xdg"&gt;fontconfig/fonts.conf&lt;/include&gt; &lt;include ignore_missing="yes" prefix="xdg"&gt;
fontconfig/fonts.conf
&lt;/include&gt;
&lt;!-- &lt;!--
Load local customization files, but don't complain Load local customization files, but don't complain
if there aren't any if there aren't any
--&gt; --&gt;
&lt;include ignore_missing="yes"&gt;conf.d&lt;/include&gt; &lt;include ignore_missing="yes"&gt;conf.d&lt;/include&gt;
&lt;include ignore_missing="yes"&gt;local.conf&lt;/include&gt; &lt;include ignore_missing="yes"&gt;local.conf&lt;/include&gt;
&lt;!-- &lt;!--
Alias well known font names to available TrueType fonts. Alias well known font names to available TrueType fonts.
These substitute TrueType faces for similar Type1 These substitute TrueType faces for similar Type1
faces to improve screen appearance. faces to improve screen appearance.
--&gt; --&gt;
&lt;alias&gt; &lt;alias&gt;
&lt;family&gt;Times&lt;/family&gt; &lt;family&gt;Times&lt;/family&gt;
&lt;prefer&gt;&lt;family&gt;Times New Roman&lt;/family&gt;&lt;/prefer&gt; &lt;prefer&gt;
&lt;default&gt;&lt;family&gt;serif&lt;/family&gt;&lt;/default&gt; &lt;family&gt;Times New Roman&lt;/family&gt;
&lt;/alias&gt; &lt;/prefer&gt;
&lt;alias&gt; &lt;default&gt;
&lt;family&gt;Helvetica&lt;/family&gt; &lt;family&gt;serif&lt;/family&gt;
&lt;prefer&gt;&lt;family&gt;Arial&lt;/family&gt;&lt;/prefer&gt; &lt;/default&gt;
&lt;default&gt;&lt;family&gt;sans&lt;/family&gt;&lt;/default&gt; &lt;/alias&gt;
&lt;/alias&gt; &lt;alias&gt;
&lt;alias&gt; &lt;family&gt;Helvetica&lt;/family&gt;
&lt;family&gt;Courier&lt;/family&gt; &lt;prefer&gt;
&lt;prefer&gt;&lt;family&gt;Courier New&lt;/family&gt;&lt;/prefer&gt; &lt;family&gt;Arial&lt;/family&gt;
&lt;default&gt;&lt;family&gt;monospace&lt;/family&gt;&lt;/default&gt; &lt;/prefer&gt;
&lt;/alias&gt; &lt;default&gt;
&lt;family&gt;sans&lt;/family&gt;
&lt;/default&gt;
&lt;/alias&gt;
&lt;alias&gt;
&lt;family&gt;Courier&lt;/family&gt;
&lt;prefer&gt;
&lt;family&gt;Courier New&lt;/family&gt;
&lt;/prefer&gt;
&lt;default&gt;
&lt;family&gt;monospace&lt;/family&gt;
&lt;/default&gt;
&lt;/alias&gt;
&lt;!-- &lt;!--
Provide required aliases for standard names Provide required aliases for standard names
Do these after the users configuration file so that Do these after the users configuration file so that
any aliases there are used preferentially any aliases there are used preferentially
--&gt; --&gt;
&lt;alias&gt; &lt;alias&gt;
&lt;family&gt;serif&lt;/family&gt; &lt;family&gt;serif&lt;/family&gt;
&lt;prefer&gt;&lt;family&gt;Times New Roman&lt;/family&gt;&lt;/prefer&gt; &lt;prefer&gt;
&lt;/alias&gt; &lt;family&gt;Times New Roman&lt;/family&gt;
&lt;alias&gt; &lt;/prefer&gt;
&lt;family&gt;sans&lt;/family&gt; &lt;/alias&gt;
&lt;prefer&gt;&lt;family&gt;Arial&lt;/family&gt;&lt;/prefer&gt; &lt;alias&gt;
&lt;/alias&gt; &lt;family&gt;sans&lt;/family&gt;
&lt;alias&gt; &lt;prefer&gt;
&lt;family&gt;monospace&lt;/family&gt; &lt;family&gt;Arial&lt;/family&gt;
&lt;prefer&gt;&lt;family&gt;Andale Mono&lt;/family&gt;&lt;/prefer&gt; &lt;/prefer&gt;
&lt;/alias&gt; &lt;/alias&gt;
&lt;alias&gt;
&lt;family&gt;monospace&lt;/family&gt;
&lt;prefer&gt;
&lt;family&gt;Andale Mono&lt;/family&gt;
&lt;/prefer&gt;
&lt;/alias&gt;
&lt;-- &lt;--
The example of the requirements of OR operator; The example of the requirements of OR operator;
If the 'family' contains 'Courier New' OR 'Courier' If the 'family' contains 'Courier New' OR 'Courier'
add 'monospace' as the alternative add 'monospace' as the alternative
--&gt; --&gt;
&lt;match target="pattern"&gt; &lt;match target="pattern"&gt;
&lt;test name="family" compare="eq"&gt; &lt;test name="family" compare="eq"&gt;
&lt;string&gt;Courier New&lt;/string&gt; &lt;string&gt;Courier New&lt;/string&gt;
&lt;/test&gt; &lt;/test&gt;
&lt;edit name="family" mode="prepend"&gt; &lt;edit name="family" mode="prepend"&gt;
&lt;string&gt;monospace&lt;/string&gt; &lt;string&gt;monospace&lt;/string&gt;
&lt;/edit&gt; &lt;/edit&gt;
&lt;/match&gt; &lt;/match&gt;
&lt;match target="pattern"&gt; &lt;match target="pattern"&gt;
&lt;test name="family" compare="eq"&gt; &lt;test name="family" compare="eq"&gt;
&lt;string&gt;Courier&lt;/string&gt; &lt;string&gt;Courier&lt;/string&gt;
&lt;/test&gt; &lt;/test&gt;
&lt;edit name="family" mode="prepend"&gt; &lt;edit name="family" mode="prepend"&gt;
&lt;string&gt;monospace&lt;/string&gt; &lt;string&gt;monospace&lt;/string&gt;
&lt;/edit&gt; &lt;/edit&gt;
&lt;/match&gt; &lt;/match&gt;
&lt;/fontconfig&gt; &lt;/fontconfig&gt;
</programlisting> </programlisting>
@ -705,57 +741,61 @@ $XDG_CONFIG_HOME/fontconfig/fonts.conf
<programlisting> <programlisting>
&lt;?xml version="1.0"?&gt; &lt;?xml version="1.0"?&gt;
&lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt; &lt;!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd"&gt;
&lt;!-- $XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration --&gt; &lt;!--
$XDG_CONFIG_HOME/fontconfig/fonts.conf for per-user font configuration
--&gt;
&lt;fontconfig&gt; &lt;fontconfig&gt;
&lt;!-- &lt;!--
Private font directory Private font directory
--&gt; --&gt;
&lt;dir prefix="xdg"&gt;fonts&lt;/dir&gt; &lt;dir prefix="xdg"&gt;fonts&lt;/dir&gt;
&lt;!-- &lt;!--
use rgb sub-pixel ordering to improve glyph appearance on use rgb sub-pixel ordering to improve glyph appearance on
LCD screens. Changes affecting rendering, but not matching LCD screens. Changes affecting rendering, but not matching
should always use target="font". should always use target="font".
--&gt; --&gt;
&lt;match target="font"&gt; &lt;match target="font"&gt;
&lt;edit name="rgba" mode="assign"&gt;&lt;const&gt;rgb&lt;/const&gt;&lt;/edit&gt; &lt;edit name="rgba" mode="assign"&gt;
&lt;/match&gt; &lt;const&gt;rgb&lt;/const&gt;
&lt;!-- &lt;/edit&gt;
use WenQuanYi Zen Hei font when serif is requested for Chinese &lt;/match&gt;
--&gt; &lt;!--
&lt;match&gt; use WenQuanYi Zen Hei font when serif is requested for Chinese
&lt;!-- --&gt;
If you don't want to use WenQuanYi Zen Hei font for zh-tw etc, &lt;match&gt;
you can use zh-cn instead of zh. &lt;!--
Please note, even if you set zh-cn, it still matches zh. If you don't want to use WenQuanYi Zen Hei font for zh-tw etc,
if you don't like it, you can use compare="eq" you can use zh-cn instead of zh.
instead of compare="contains". Please note, even if you set zh-cn, it still matches zh.
--&gt; if you don't like it, you can use compare="eq"
&lt;test name="lang" compare="contains"&gt; instead of compare="contains".
&lt;string&gt;zh&lt;/string&gt; --&gt;
&lt;/test&gt; &lt;test name="lang" compare="contains"&gt;
&lt;test name="family"&gt; &lt;string&gt;zh&lt;/string&gt;
&lt;string&gt;serif&lt;/string&gt; &lt;/test&gt;
&lt;/test&gt; &lt;test name="family"&gt;
&lt;edit name="family" mode="prepend"&gt; &lt;string&gt;serif&lt;/string&gt;
&lt;string&gt;WenQuanYi Zen Hei&lt;/string&gt; &lt;/test&gt;
&lt;/edit&gt; &lt;edit name="family" mode="prepend"&gt;
&lt;/match&gt; &lt;string&gt;WenQuanYi Zen Hei&lt;/string&gt;
&lt;!-- &lt;/edit&gt;
use VL Gothic font when sans-serif is requested for Japanese &lt;/match&gt;
--&gt; &lt;!--
&lt;match&gt; use VL Gothic font when sans-serif is requested for Japanese
&lt;test name="lang" compare="contains"&gt; --&gt;
&lt;string&gt;ja&lt;/string&gt; &lt;match&gt;
&lt;/test&gt; &lt;test name="lang" compare="contains"&gt;
&lt;test name="family"&gt; &lt;string&gt;ja&lt;/string&gt;
&lt;string&gt;sans-serif&lt;/string&gt; &lt;/test&gt;
&lt;/test&gt; &lt;test name="family"&gt;
&lt;edit name="family" mode="prepend"&gt; &lt;string&gt;sans-serif&lt;/string&gt;
&lt;string&gt;VL Gothic&lt;/string&gt; &lt;/test&gt;
&lt;/edit&gt; &lt;edit name="family" mode="prepend"&gt;
&lt;/match&gt; &lt;string&gt;VL Gothic&lt;/string&gt;
&lt;/edit&gt;
&lt;/match&gt;
&lt;/fontconfig&gt; &lt;/fontconfig&gt;
</programlisting> </programlisting>
</refsect2> </refsect2>