-
Notifications
You must be signed in to change notification settings - Fork 1
/
ligkerndef.mf
237 lines (231 loc) · 8.66 KB
/
ligkerndef.mf
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
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %
% MF Adjuster v1.36 %
% © 2014 by Marco Mueller and Simon Egli %
% thanks to Christian Vetter, Linus Roemer, Alexis Reigel %
% www.metaflop.com %
% licensed under gpl v3: www.gnu.org/licenses/ %
% %
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
addkernclassf("A","Abreve","Aogonek","Agrave","Aacute","Acircumflex","Atilde","Adieresis","Aring");
addkernclassf("B");
addkernclassf("C","Cacute","Ccaron","Ccedilla");
addkernclassf("D","Dcaron","O","Ohungarumlaut","Ograve","Oacute","Ocircumflex","Otilde","Odieresis","Eth");
addkernclassf("F");
addkernclassf("J","U","Uhungarumlaut","Ugrave","Uacute","Ucircumflex","Udieresis","IJ","Oslash");
addkernclassf("K","X");
addkernclassf("L","Lacute","Lcaron","Lslash");
addkernclassf("P");
addkernclassf("Thorn");
addkernclassf("Q");
addkernclassf("R","Racute","Rcaron");
addkernclassf("S","Sacute","Scedilla","Scaron");
addkernclassf("T","Tcaron","Tcedilla");
addkernclassf("V","W");
addkernclassf("Y","Ydieresis","Yacute");
addkernclassf("a","abreve","aogonek","agrave","aacute","acircumflex","atilde","adieresis","aring");
addkernclassf("b");
addkernclassf("c","cacute","ccaron","ccedilla");
addkernclassf("d","dcaron","o","ohungarumlaut","ograve","oacute","ocircumflex","otilde","odieresis","eth");
addkernclassf("f");
addkernclassf("j","u","uhungarumlaut","ugrave","uacute","ucircumflex","udieresis","ij","oslash");
addkernclassf("k","x");
addkernclassf("l","lacute","lcaron","lslash");
addkernclassf("p");
addkernclassf("thorn");
addkernclassf("q");
addkernclassf("r","racute","rcaron");
addkernclassf("t","tcaron","tcedilla");
addkernclassf("v","w");
addkernclassf("y","ydieresis","yacute");
addkernclasss("A","Abreve","Aogonek","Agrave","Aacute","Acircumflex","Atilde","Adieresis","Aring","AE","Germandbls");
addkernclasss("C","G","O","Q","Cacute","Ccaron","Gbreve","Ohungarumlaut","Ccedilla","Ograve","Oacute","Ocircumflex","Otilde","Odieresis","OE","Oslash");
addkernclasss("J");
addkernclasss("T","Tcaron","Tcedilla");
addkernclasss("U","Uhungarumlaut","Ugrave","Uacute","Ucircumflex","Udieresis","IJ","Oslash");
addkernclasss("V","W");
addkernclasss("X");
addkernclasss("Y","Ydieresis","Yacute");
addkernclasss("a","aogonek","ae","germandbls");
addkernclasss("abreve","agrave","aacute","acircumflex","atilde","adieresis","aring");
addkernclasss("b","d","e","f","h","i","k","l","m","n","p","r","eogonek","lslash","lcaron","eng","thorn");
addkernclasss("dcaron","ecaron","lacute","nacute","ncaron","racute","rcaron","egrave","eacute","edieresis","igrave","iacute","icircumflex","idieresis","ntilde");
addkernclasss("c","g","o","q","ccedilla","oe","oslash");
addkernclasss("cacute","ccaron","gbreve","ohungarumlaut","ograve","oacute","ocircumflex","otilde","odieresis");
addkernclasss("j");
addkernclasss("s","scedilla");
addkernclasss("sacute","scaron");
addkernclasss("t","tcedilla");
addkernclasss("tcaron");
addkernclasss("u");
addkernclasss("uhungarumlaut","ugrave","uacute","ucircumflex","udieresis","ij");
addkernclasss("v","w");
addkernclasss("x");
addkernclasss("y");
addkernclasss("ydieresis","yacute");
addkernclasss("z");
addkernclasss("zacute","zcaron","zdotaccent");
addkernclasss("period","comma");
addclasskern("A","T",-.5u#);
addclasskern("A","V",-.25u#);
addclasskern("B","T",-.25u#);
addclasskern("B","V",0u#);
addclasskern("C","C",0u#);
addclasskern("D","C",0u#);
addclasskern("D","T",-.25u#);
addclasskern("D","X",-.25u#);
addclasskern("D","period",-.25u#);
addclasskern("F","C",0u#);
addclasskern("F","J",-1.75u#);
addclasskern("F","c",-.5u#);
addclasskern("F","cacute",-.5u#);
addclasskern("F","j",-.5u#);
addclasskern("F","period",-.75u#);
addclasskern("J","period",-.25u#);
addclasskern("K","C",-.25u#);
addclasskern("K","t",-.75u#);
addclasskern("L","T",-1.75u#);
addclasskern("L","V",-1.25u#);
addclasskern("L","Y",-1.75u#);
addclasskern("L","t",-u#);
addclasskern("L","tcaron",-u#);
addclasskern("L","v",-.5u#);
addclasskern("L","y",-.5u#);
addclasskern("L","ydieresis",-.5u#);
addclasskern("P","C",0u#);
addclasskern("P","J",-1.75u#);
addclasskern("P","T",0u#);
addclasskern("P","V",0u#);
addclasskern("P","c",-u#);
addclasskern("P","cacute",0u#);
addclasskern("P","j",-.25u#);
addclasskern("P","period",-.75u#);
addclasskern("Thorn","T",-.25u#);
addclasskern("Thorn","V",0u#);
addclasskern("Thorn","X",0u#);
addclasskern("Thorn","period",-.5u#);
addclasskern("Q","T",-.25u#);
addclasskern("Q","period",-.25u#);
addclasskern("R","C",0u#);
addclasskern("S","C",0u#);
addclasskern("S","c",0u#);
addclasskern("S","cacute",0u#);
addclasskern("T","A",-.5u#);
addclasskern("T","C",-.25u#);
addclasskern("T","J",-.5u#);
addclasskern("T","T",1.25u#);
addclasskern("T","a",-u#);
addclasskern("T","abreve",-.75u#);
addclasskern("T","b",0u#);
addclasskern("T","dcaron",-.75u#);
addclasskern("T","c",-u#);
addclasskern("T","cacute",-.75u#);
addclasskern("T","j",-.5u#);
addclasskern("T","s",-.75u#);
addclasskern("T","sacute",-.75u#);
addclasskern("T","t",-.5u#);
addclasskern("T","tcaron",-.5u#);
addclasskern("T","u",-.75u#);
addclasskern("T","uhungarumlaut",-u#);
addclasskern("T","v",-.5u#);
addclasskern("T","x",-.5u#);
addclasskern("T","y",-.5u#);
addclasskern("T","ydieresis",-.5u#);
addclasskern("T","z",-.5u#);
addclasskern("T","zacute",-.5u#);
addclasskern("T","period",-.75u#);
addclasskern("V","A",-.25u#);
addclasskern("V","C",0u#);
addclasskern("V","J",-.75u#);
addclasskern("V","V",.5u#);
addclasskern("V","a",-.5u#);
addclasskern("V","abreve",-.25u#);
addclasskern("V","b",-.5u#);
addclasskern("V","c",-.5u#);
addclasskern("V","cacute",-.25u#);
addclasskern("V","j",-u#);
addclasskern("V","s",-u#);
addclasskern("V","sacute",-.5u#);
addclasskern("V","u",-.5u#);
addclasskern("V","x",-.5u#);
addclasskern("V","ydieresis",.5u#);
addclasskern("V","z",-.5u#);
addclasskern("V","period",-1u#);
addclasskern("Y","J",-u#);
addclasskern("Y","a",-u#);
addclasskern("Y","abreve",-.75u#);
addclasskern("Y","c",-u#);
addclasskern("Y","cacute",-.75u#);
addclasskern("Y","j",-u#);
addclasskern("Y","period",-1.25u#);
addclasskern("a","t",-.25u#);
addclasskern("a","tcaron",-.25u#);
addclasskern("a","v",0u#);
addclasskern("b","t",-.25u#);
addclasskern("b","tcaron",-.25u#);
addclasskern("b","v",-.25u#);
addclasskern("b","x",-.25u#);
addclasskern("c","c",-.25u#);
addclasskern("c","cacute",-.25u#);
addclasskern("d","c",0u#);
addclasskern("d","cacute",0u#);
addclasskern("d","t",-.25u#);
addclasskern("d","tcaron",-.25u#);
addclasskern("d","x",-.25u#);
addclasskern("d","period",0u#);
addclasskern("f","c",-.25u#);
addclasskern("f","cacute",-.25u#);
addclasskern("f","j",-.5u#);
addclasskern("j","period",0u#);
addclasskern("k","c",-.25u#);
addclasskern("k","cacute",-.25u#);
addclasskern("l","t",-.5u#);
addclasskern("l","tcaron",-.5u#);
addclasskern("l","v",-.25u#);
addclasskern("l","y",-.25u#);
addclasskern("l","ydieresis",-.25u#);
addclasskern("p","x",-.25u#);
addclasskern("p","j",-.25u#);
addclasskern("p","v",-.25u#);
addclasskern("p","period",-.5u#);
addclasskern("thorn","t",-.5u#);
addclasskern("thorn","tcaron",-.5u#);
addclasskern("thorn","v",-.25u#);
addclasskern("thorn","x",-.25u#);
addclasskern("thorn","period",-.5u#);
addclasskern("q","t",-.25u#);
addclasskern("q","period",0u#);
addclasskern("r","c",-.25u#);
addclasskern("r","cacute",-.25u#);
addclasskern("t","a",-.25u#);
addclasskern("t","abreve",-.25u#);
addclasskern("t","c",-.25u#);
addclasskern("t","cacute",-.25u#);
addclasskern("t","j",-.5u#);
addclasskern("t","t",.25u#);
addclasskern("t","tcaron",.25u#);
addclasskern("t","period",-.25u#);
addclasskern("v","a",-.25u#);
addclasskern("v","abreve",-.25u#);
addclasskern("v","c",-.25u#);
addclasskern("v","cacute",-.25u#);
addclasskern("v","j",-.25u#);
addclasskern("v","v",.25u#);
addclasskern("v","period",-.75u#);
addclasskern("y","j",-.25u#);
addclasskern("y","period",-.75u#);
% ligatures will overwrite existing kerning pairs
addlig("f","i","fi");
addlig("f","f","ff");
addlig("f","l","fl");
addlig("ff","i","ffi");
addlig("ff","l","ffl");
addlig("quoteleft","quoteleft","quotedblleft");
addlig("quoteright","quoteright","quotedblright");
addlig("hyphen","hyphen","endash");
addlig("endash","hyphen","emdash");
addlig("less","less","guillemotleft");
addlig("greater","greater","guillemotright");
addlig("exclam","quoteleft","exclamdown");
addlig("question","quoteleft","questiondown");
writeligtable;