summaryrefslogtreecommitdiff
path: root/fonts.conf.in
blob: b4c8085ad960fba33168c192b01a0ea8f7cd382b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<!-- /etc/fonts/fonts.conf file to configure system font access -->
<fontconfig>

<!--
	DO NOT EDIT THIS FILE.
	IT WILL BE REPLACED WHEN FONTCONFIG IS UPDATED.
	LOCAL CHANGES BELONG IN 'local.conf'.

	The intent of this standard configuration file is to be adequate for
	most environments.  If you have a reasonably normal environment and
	have found problems with this configuration, they are probably
	things that others will also want fixed.  Please submit any
	problems to the fontconfig bugzilla system located at fontconfig.org

	Note that the normal 'make install' procedure for fontconfig is to
	replace any existing fonts.conf file with the new version.  Place
	any local customizations in local.conf which this file references.

	Keith Packard
-->

<!-- Font directory list configured on @FC_FONTDATE@ -->

	<dir>@FC_DEFAULT_FONTS@</dir>
	@FC_FONTPATH@
	<dir>~/.fonts</dir>

<!--
  Accept deprecated 'mono' alias, replacing it with 'monospace'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>mono</string>
		</test>
		<edit name="family" mode="assign">
			<string>monospace</string>
		</edit>
	</match>

<!--
  Accept alternate 'sans serif' spelling, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans serif</string>
		</test>
		<edit name="family" mode="assign">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Accept deprecated 'sans' alias, replacing it with 'sans-serif'
-->
	<match target="pattern">
		<test qual="any" name="family">
			<string>sans</string>
		</test>
		<edit name="family" mode="assign">
			<string>sans-serif</string>
		</edit>
	</match>

<!--
  Mark common families with their generics so we'll get
  something reasonable
-->

<!--
  Serif faces
 -->
	<alias>
		<family>Bitstream Vera Serif</family>
		<family>Times</family>
		<family>Times New Roman</family>
		<family>Nimbus Roman No9 L</family>
		<family>Luxi Serif</family>
		<family>Kochi Mincho</family>
		<family>AR PL SungtiL GB</family>
		<family>AR PL Mingti2L Big5</family>
		<family>Baekmuk Batang</family>			
		<default><family>serif</family></default>
	</alias>
<!--
  Sans-serif faces
 -->
	<alias>
		<family>Bitstream Vera Sans</family>
		<family>Helvetica</family>
		<family>Arial</family>
		<family>Verdana</family>
		<family>Nimbus Sans L</family>
		<family>Luxi Sans</family>
		<family>Kochi Gothic</family>
		<family>AR PL KaitiM GB</family>
		<family>AR PL KaitiM Big5</family>
		<family>Baekmuk Dotum</family>
		<family>SimSun</family>
		<default><family>sans-serif</family></default>
	</alias>
<!--
  Monospace faces
 -->
 	<alias>
		<family>Bitstream Vera Sans Mono</family>
		<family>Courier</family>
		<family>Courier New</family>
		<family>Andale Mono</family>
		<family>Luxi Mono</family>
		<family>Nimbus Mono L</family>
		<family>NSimSun</family>
		<default><family>monospace</family></default>
	</alias>
<!--
  If the font still has no generic name, add sans-serif
 -->
	<match target="pattern">
		<test qual="all" name="family" compare="not_eq">
			<string>sans-serif</string>
		</test>
		<test qual="all" name="family" compare="not_eq">
			<string>serif</string>
		</test>
		<test qual="all" name="family" compare="not_eq">
			<string>monospace</string>
		</test>
		<edit name="family" mode="append_last">
			<string>sans-serif</string>
		</edit>
	</match>
	
<!--
  Some Asian fonts misadvertise themselves as monospaced when
  in fact they are dual-spaced (half and full).  This makes
  FreeType very confused as it forces all widths to match.
  Undo this magic by disabling the width forcing code -->
	<match target="font">
		<test name="family"><string>GulimChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>
	
	<match target="font">
		<test name="family"><string>DotumChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

	<match target="font">
		<test name="family"><string>BatangChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

	<match target="font">
		<test name="family"><string>GungsuhChe</string></test>
		<edit name="globaladvance"><bool>false</bool></edit>
	</match>

<!-- 
	The Bitstream Vera fonts have GASP entries suggesting that hinting be
	disabled below 8 ppem, but FreeType ignores those, preferring to use
	the data found in the instructed hints.  The initial Vera release
	didn't include the right instructions in the 'prep' table. Fix this
	by disabling hinting manually at smaller sizes (< 8ppem)
 -->
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Sans</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Serif</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
	<match target="font">
		<test name="family">
			<string>Bitstream Vera Sans Mono</string>
		</test>
		<test name="pixelsize" compare="less">
			<double>7.5</double>
		</test>
		<edit name="hinting">
			<bool>false</bool>
		</edit>
	</match>
	
<!--
  Load per-user customization file
-->
	<include ignore_missing="yes">~/.fonts.conf</include>

<!--
  Load local system customization file
-->
	<include ignore_missing="yes">local.conf</include>

<!--
  Alias well known font names to available TrueType fonts
-->
	<alias>
		<family>Times</family>
		<accept><family>Times New Roman</family></accept>
	</alias>
	<alias>
		<family>Helvetica</family>
		<accept><family>Verdana</family></accept>
	</alias>
	<alias>
		<family>Arial</family>
		<accept><family>Verdana</family></accept>
	</alias>
	<alias>
		<family>Courier</family>
		<accept><family>Courier New</family></accept>
	</alias>

<!--
 Check user preference to avoid bitmap fonts and replace
 bitmap face names with equivalent scalable fonts
 -->

	<match target="pattern">
	        <test name="prefer_outline">
	                <bool>true</bool>
	        </test>
	        <test name="family">
	                <string>Helvetica</string>
	        </test>
	        <edit name="family" mode="prepend" binding="same">
	                <string>Arial</string>
	        </edit>
	</match>

	<match target="pattern">
	        <test name="prefer_outline">
	                <bool>true</bool>
	        </test>
	        <test name="family">
	                <string>Times</string>
	        </test>
	        <edit name="family" mode="prepend" binding="same">
	                <string>Times New Roman</string>
	        </edit>
	</match>
<!--
  Provide required aliases for standard names
-->
	<alias>
		<family>serif</family>
		<prefer>
			<family>Bitstream Vera Serif</family>
			<family>Times New Roman</family>
			<family>Nimbus Roman No9 L</family>
			<family>Luxi Serif</family>
			<family>Times</family>
			<family>Kochi Mincho</family>
			<family>AR PL SungtiL GB</family>
			<family>AR PL Mingti2L Big5</family>
			<family>Baekmuk Batang</family>			
		</prefer>
	</alias>
	<alias>
		<family>sans-serif</family>
		<prefer>
			<family>Bitstream Vera Sans</family>
			<family>Verdana</family>
			<family>Nimbus Sans L</family>
			<family>Luxi Sans</family>
			<family>Arial</family>
			<family>Helvetica</family>
			<family>Kochi Gothic</family>
			<family>AR PL KaitiM GB</family>
			<family>AR PL KaitiM Big5</family>
			<family>Baekmuk Dotum</family>
			<family>SimSun</family>
		</prefer>
	</alias>
	<alias>
		<family>monospace</family>
		<prefer>
			<family>Bitstream Vera Sans Mono</family>
			<family>Andale Mono</family>
			<family>Courier New</family>
			<family>Luxi Mono</family>
			<family>Nimbus Mono L</family>
			<family>Kochi Gothic</family>
			<family>AR PL KaitiM GB</family>
			<family>Baekmuk Dotum</family>
		</prefer>
	</alias>

<!-- 
 Artificial oblique for fonts without an italic or oblique version
 -->
 
	<match target="font">
		<!-- check to see if the font is roman -->
		<test name="slant">
			<const>roman</const>
		</test>
		<!-- check to see if the pattern requested non-roman -->
		<test target="pattern" name="slant" compare="not_eq">
			<const>roman</const>
		</test>
		<!-- multiply the matrix to slant the font -->
		<edit name="matrix" mode="assign">
			<times>
				<name>matrix</name>
				<matrix><double>1</double><double>0.2</double>
					<double>0</double><double>1</double>
				</matrix>
			</times>
		</edit>
		<!-- pretend the font is oblique now -->
		<edit name="slant" mode="assign">
			<const>oblique</const>
		</edit>
	</match>

	<config>
<!--
  These are the default Unicode chars that are expected to be blank
  in fonts.  All other blank chars are assumed to be broken and
  won't appear in the resulting charsets
 -->
		<blank>
			<int>0x0020</int>	<!-- SPACE -->
			<int>0x00a0</int>	<!-- NO-BREAK SPACE -->
			<int>0x00ad</int>	<!-- SOFT HYPHEN -->
			<int>0x115f</int>	<!-- HANGUL CHOSEONG FILLER -->
			<int>0x1160</int>	<!-- HANGUL JUNGSEONG FILLER -->
			<int>0x1680</int>	<!-- OGHAM SPACE MARK -->
			<int>0x2000</int>	<!-- EN QUAD -->
			<int>0x2001</int>	<!-- EM QUAD -->
			<int>0x2002</int>	<!-- EN SPACE -->
			<int>0x2003</int>	<!-- EM SPACE -->
			<int>0x2004</int>	<!-- THREE-PER-EM SPACE -->
			<int>0x2005</int>	<!-- FOUR-PER-EM SPACE -->
			<int>0x2006</int>	<!-- SIX-PER-EM SPACE -->
			<int>0x2007</int>	<!-- FIGURE SPACE -->
			<int>0x2008</int>	<!-- PUNCTUATION SPACE -->
			<int>0x2009</int>	<!-- THIN SPACE -->
			<int>0x200a</int>	<!-- HAIR SPACE -->
			<int>0x200b</int>	<!-- ZERO WIDTH SPACE -->
			<int>0x200c</int>	<!-- ZERO WIDTH NON-JOINER -->
			<int>0x200d</int>	<!-- ZERO WIDTH JOINER -->
			<int>0x200e</int>	<!-- LEFT-TO-RIGHT MARK -->
			<int>0x200f</int>	<!-- RIGHT-TO-LEFT MARK -->
			<int>0x2028</int>	<!-- LINE SEPARATOR -->
			<int>0x2029</int>	<!-- PARAGRAPH SEPARATOR -->
			<int>0x202a</int>	<!-- LEFT-TO-RIGHT EMBEDDING -->
			<int>0x202b</int>	<!-- RIGHT-TO-LEFT EMBEDDING -->
			<int>0x202c</int>	<!-- POP DIRECTIONAL FORMATTING -->
			<int>0x202d</int>	<!-- LEFT-TO-RIGHT OVERRIDE -->
			<int>0x202e</int>	<!-- RIGHT-TO-LEFT OVERRIDE -->
			<int>0x202f</int>	<!-- NARROW NO-BREAK SPACE -->
			<int>0x205f</int>	<!-- MEDIUM MATHEMATICAL SPACE -->
			<int>0x2060</int>	<!-- WORD JOINER -->
			<int>0x2061</int>	<!-- FUNCTION APPLICATION -->
			<int>0x2062</int>	<!-- INVISIBLE TIMES -->
			<int>0x2063</int>	<!-- INVISIBLE SEPARATOR -->
			<int>0x206A</int>	<!-- INHIBIT SYMMETRIC SWAPPING -->
			<int>0x206B</int>	<!-- ACTIVATE SYMMETRIC SWAPPING -->
			<int>0x206C</int>	<!-- INHIBIT ARABIC FORM SHAPING -->
			<int>0x206D</int>	<!-- ACTIVATE ARABIC FORM SHAPING -->
			<int>0x206E</int>	<!-- NATIONAL DIGIT SHAPES -->
			<int>0x206F</int>	<!-- NOMINAL DIGIT SHAPES -->
			<int>0x3000</int>	<!-- IDEOGRAPHIC SPACE -->
			<int>0x3164</int>	<!-- HANGUL FILLER -->
			<int>0xfeff</int>	<!-- ZERO WIDTH NO-BREAK SPACE -->
			<int>0xffa0</int>	<!-- HALFWIDTH HANGUL FILLER -->
			<int>0xfff9</int>	<!-- INTERLINEAR ANNOTATION ANCHOR -->
			<int>0xfffa</int>	<!-- INTERLINEAR ANNOTATION SEPARATOR -->
			<int>0xfffb</int>	<!-- INTERLINEAR ANNOTATION TERMINATOR -->
		</blank>
<!--
  Rescan configuration every 30 seconds when FcFontSetList is called
 -->
		<rescan>
			<int>30</int>
		</rescan>
	</config>

</fontconfig>