1
<?xml version="1.0"?>
2
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
3
<fontconfig>
4
5
<!--
6
  Accept deprecated 'mono' alias, replacing it with 'monospace'
7
-->
8
	<match target="pattern">
9
		<test qual="any" name="family">
10
			<string>mono</string>
11
		</test>
12
		<edit name="family" mode="assign">
13
			<string>monospace</string>
14
		</edit>
15
	</match>
16
17
<!--
18
  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
19
-->
20
	<match target="pattern">
21
		<test qual="any" name="family">
22
			<string>sans serif</string>
23
		</test>
24
		<edit name="family" mode="assign">
25
			<string>sans-serif</string>
26
		</edit>
27
	</match>
28
29
<!--
30
  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
31
-->
32
	<match target="pattern">
33
		<test qual="any" name="family">
34
			<string>sans</string>
35
		</test>
36
		<edit name="family" mode="assign">
37
			<string>sans-serif</string>
38
		</edit>
39
	</match>
40
41
<!--
42
  If the font still has no generic name, add sans-serif
43
 -->
44
	<match target="pattern">
45
		<test qual="all" name="family" compare="not_eq">
46
			<string>sans-serif</string>
47
		</test>
48
		<test qual="all" name="family" compare="not_eq">
49
			<string>serif</string>
50
		</test>
51
		<test qual="all" name="family" compare="not_eq">
52
			<string>monospace</string>
53
		</test>
54
		<edit name="family" mode="append_last">
55
			<string>sans-serif</string>
56
		</edit>
57
	</match>
58
59
	<config>
60
<!--
61
  These are the default Unicode chars that are expected to be blank
62
  in fonts.  All other blank chars are assumed to be broken and
63
  won't appear in the resulting charsets
64
 -->
65
		<blank>
66
			<int>0x0020</int>	<!-- SPACE -->
67
			<int>0x00A0</int>	<!-- NO-BREAK SPACE -->
68
			<int>0x00AD</int>	<!-- SOFT HYPHEN -->
69
			<int>0x034F</int>	<!-- COMBINING GRAPHEME JOINER -->
70
			<int>0x0600</int>	<!-- ARABIC NUMBER SIGN -->
71
			<int>0x0601</int>	<!-- ARABIC SIGN SANAH -->
72
			<int>0x0602</int>	<!-- ARABIC FOOTNOTE MARKER -->
73
			<int>0x0603</int>	<!-- ARABIC SIGN SAFHA -->
74
			<int>0x06DD</int>	<!-- ARABIC END OF AYAH -->
75
			<int>0x070F</int>	<!-- SYRIAC ABBREVIATION MARK -->
76
			<int>0x115F</int>	<!-- HANGUL CHOSEONG FILLER -->
77
			<int>0x1160</int>	<!-- HANGUL JUNGSEONG FILLER -->
78
			<int>0x1680</int>	<!-- OGHAM SPACE MARK -->
79
			<int>0x17B4</int>	<!-- KHMER VOWEL INHERENT AQ -->
80
			<int>0x17B5</int>	<!-- KHMER VOWEL INHERENT AA -->
81
			<int>0x180E</int>	<!-- MONGOLIAN VOWEL SEPARATOR -->
82
			<int>0x2000</int>	<!-- EN QUAD -->
83
			<int>0x2001</int>	<!-- EM QUAD -->
84
			<int>0x2002</int>	<!-- EN SPACE -->
85
			<int>0x2003</int>	<!-- EM SPACE -->
86
			<int>0x2004</int>	<!-- THREE-PER-EM SPACE -->
87
			<int>0x2005</int>	<!-- FOUR-PER-EM SPACE -->
88
			<int>0x2006</int>	<!-- SIX-PER-EM SPACE -->
89
			<int>0x2007</int>	<!-- FIGURE SPACE -->
90
			<int>0x2008</int>	<!-- PUNCTUATION SPACE -->
91
			<int>0x2009</int>	<!-- THIN SPACE -->
92
			<int>0x200A</int>	<!-- HAIR SPACE -->
93
			<int>0x200B</int>	<!-- ZERO WIDTH SPACE -->
94
			<int>0x200C</int>	<!-- ZERO WIDTH NON-JOINER -->
95
			<int>0x200D</int>	<!-- ZERO WIDTH JOINER -->
96
			<int>0x200E</int>	<!-- LEFT-TO-RIGHT MARK -->
97
			<int>0x200F</int>	<!-- RIGHT-TO-LEFT MARK -->
98
			<int>0x2028</int>	<!-- LINE SEPARATOR -->
99
			<int>0x2029</int>	<!-- PARAGRAPH SEPARATOR -->
100
			<int>0x202A</int>	<!-- LEFT-TO-RIGHT EMBEDDING -->
101
			<int>0x202B</int>	<!-- RIGHT-TO-LEFT EMBEDDING -->
102
			<int>0x202C</int>	<!-- POP DIRECTIONAL FORMATTING -->
103
			<int>0x202D</int>	<!-- LEFT-TO-RIGHT OVERRIDE -->
104
			<int>0x202E</int>	<!-- RIGHT-TO-LEFT OVERRIDE -->
105
			<int>0x202F</int>	<!-- NARROW NO-BREAK SPACE -->
106
			<int>0x205F</int>	<!-- MEDIUM MATHEMATICAL SPACE -->
107
			<int>0x2060</int>	<!-- WORD JOINER -->
108
			<int>0x2061</int>	<!-- FUNCTION APPLICATION -->
109
			<int>0x2062</int>	<!-- INVISIBLE TIMES -->
110
			<int>0x2063</int>	<!-- INVISIBLE SEPARATOR -->
111
			<int>0x206A</int>	<!-- INHIBIT SYMMETRIC SWAPPING -->
112
			<int>0x206B</int>	<!-- ACTIVATE SYMMETRIC SWAPPING -->
113
			<int>0x206C</int>	<!-- INHIBIT ARABIC FORM SHAPING -->
114
			<int>0x206D</int>	<!-- ACTIVATE ARABIC FORM SHAPING -->
115
			<int>0x206E</int>	<!-- NATIONAL DIGIT SHAPES -->
116
			<int>0x206F</int>	<!-- NOMINAL DIGIT SHAPES -->
117
			<int>0x3000</int>	<!-- IDEOGRAPHIC SPACE -->
118
			<int>0x3164</int>	<!-- HANGUL FILLER -->
119
			<int>0xFEFF</int>	<!-- ZERO WIDTH NO-BREAK SPACE -->
120
			<int>0xFFA0</int>	<!-- HALFWIDTH HANGUL FILLER -->
121
			<int>0xFFF9</int>	<!-- INTERLINEAR ANNOTATION ANCHOR -->
122
			<int>0xFFFA</int>	<!-- INTERLINEAR ANNOTATION SEPARATOR -->
123
			<int>0xFFFB</int>	<!-- INTERLINEAR ANNOTATION TERMINATOR -->
124
		</blank>
125
<!--
126
  Rescan configuration every 30 seconds when FcFontSetList is called
127
 -->
128
		<rescan>
129
			<int>30</int>
130
		</rescan>
131
	</config>
132
133
<!--
134
  URW provides metric and shape compatible fonts for these 10 Adobe families.
135
136
  However, these fonts are quite ugly and do not render well on-screen,
137
  so we avoid matching them if the application said `anymetrics'; in that
138
  case, a more generic font with different metrics but better appearance
139
  will be used.
140
  -->
141
       	<match target="pattern">
142
          <test name="family">
143
            <string>Avant Garde</string>
144
          </test>
145
          <test name="anymetrics" qual="all" compare="not_eq">
146
            <bool>true</bool>
147
          </test>
148
          <edit name="family" mode="append">
149
            <string>URW Gothic L</string>
150
          </edit>
151
     	</match>
152
       	<match target="pattern">
153
          <test name="family">
154
            <string>Bookman</string>
155
          </test>
156
          <test name="anymetrics" qual="all" compare="not_eq">
157
            <bool>true</bool>
158
          </test>
159
          <edit name="family" mode="append">
160
            <string>URW Bookman L</string>
161
          </edit>
162
     	</match>
163
       	<match target="pattern">
164
          <test name="family">
165
            <string>Courier</string>
166
          </test>
167
          <test name="anymetrics" qual="all" compare="not_eq">
168
            <bool>true</bool>
169
          </test>
170
          <edit name="family" mode="append">
171
            <string>Nimbus Mono L</string>
172
          </edit>
173
     	</match>
174
       	<match target="pattern">
175
          <test name="family">
176
            <string>Helvetica</string>
177
          </test>
178
          <test name="anymetrics" qual="all" compare="not_eq">
179
            <bool>true</bool>
180
          </test>
181
          <edit name="family" mode="append">
182
            <string>Nimbus Sans L</string>
183
          </edit>
184
     	</match>
185
       	<match target="pattern">
186
          <test name="family">
187
            <string>New Century Schoolbook</string>
188
          </test>
189
          <test name="anymetrics" qual="all" compare="not_eq">
190
            <bool>true</bool>
191
          </test>
192
          <edit name="family" mode="append">
193
            <string>Century Schoolbook L</string>
194
          </edit>
195
     	</match>
196
       	<match target="pattern">
197
          <test name="family">
198
            <string>Palatino</string>
199
          </test>
200
          <test name="anymetrics" qual="all" compare="not_eq">
201
            <bool>true</bool>
202
          </test>
203
          <edit name="family" mode="append">
204
            <string>URW Palladio L</string>
205
          </edit>
206
     	</match>
207
       	<match target="pattern">
208
          <test name="family">
209
            <string>Times</string>
210
          </test>
211
          <test name="anymetrics" qual="all" compare="not_eq">
212
            <bool>true</bool>
213
          </test>
214
          <edit name="family" mode="append">
215
            <string>Nimbus Roman No9 L</string>
216
          </edit>
217
     	</match>
218
       	<match target="pattern">
219
          <test name="family">
220
            <string>Zapf Chancery</string>
221
          </test>
222
          <test name="anymetrics" qual="all" compare="not_eq">
223
            <bool>true</bool>
224
          </test>
225
          <edit name="family" mode="append">
226
            <string>URW Chancery L</string>
227
          </edit>
228
     	</match>
229
       	<match target="pattern">
230
          <test name="family">
231
            <string>Zapf Dingbats</string>
232
          </test>
233
          <test name="anymetrics" qual="all" compare="not_eq">
234
            <bool>true</bool>
235
          </test>
236
          <edit name="family" mode="append">
237
            <string>Dingbats</string>
238
          </edit>
239
     	</match>
240
        <match target="pattern">
241
          <test name="family">
242
            <string>Symbol</string>
243
          </test>
244
          <test name="anymetrics" qual="all" compare="not_eq">
245
            <bool>true</bool>
246
          </test>
247
          <edit name="family" mode="append" binding="same">
248
            <string>Standard Symbols L</string>
249
          </edit>
250
        </match>
251
252
<!--
253
  Serif faces
254
 -->
255
	<alias>
256
		<family>Nimbus Roman No9 L</family>
257
		<default><family>serif</family></default>
258
	</alias>
259
<!--
260
  Sans-serif faces
261
 -->
262
	<alias>
263
		<family>Nimbus Sans L</family>
264
		<default><family>sans-serif</family></default>
265
	</alias>
266
<!--
267
  Monospace faces
268
 -->
269
 	<alias>
270
		<family>Nimbus Mono L</family>
271
		<default><family>monospace</family></default>
272
	</alias>
273
274
275
</fontconfig>