blob: 2b6f6e8db0baf24a8cd2d348f49939aaffcf9612 (
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
|
% lmfonts.tex: loads Latin Modern fonts by plainTeX macros
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% Petr Olsak, 2012, 2016, 2017
\ifx\ffdecl\undefined \input ff-mac \fi
\ffdecl [Latin Modern]
{\caps \sans \ttset \slant \nbold \ttprop \ttlight \ttcond
\quotset \upital \dunhill} {\rm \bf \it \bi}
{} {AMS} {8t 8z 8q 8y 8v U}
% \lmreset ... implicit values (serif, bod extended, nocaps)
% \sans ...... sans serif subfamily
% \ttset ..... typewriter subfamily
% \ttprop .... proportional typewriter-like subfamily
% \ttlight ... light typewriter subfamily
% \ttcond .... condensed typewriter subfamily
% \quotset ... quotation sans serif subfamily (designed at 8pt for 10pt text)
% \upital .... upright italic (only \rm)
% \dunhill ... dunhill roman subfamily (only \rm, \it)
% \caps ...... caps & small caps (available only at limited shapes)
% \slant ..... slanted (default in some subfamilies)
% \nbold ..... normal bold (no extended)
\ismacro\fotenc{8t}\iftrue \def\ffnamepre{ec-}\fi % T1 aka Cork
\ismacro\fotenc{8z}\iftrue \def\ffnamepre{cs-}\fi % IL2 aka CSfont
\ismacro\fotenc{8q}\iftrue \def\ffnamepre{qx-}\fi % QX GUST, Polish
\ismacro\fotenc{8y}\iftrue \def\ffnamepre{texansi-}\fi % Y&Y
\ismacro\fotenc{8v}\iftrue \def\ffnamepre{t5-}\fi % Vietnamese
\ismacro\fotenc{U}\iftrue
\font\tenrm = "[lmroman10-regular]:\fontfeatures" \sizespec
\font\tenbf = "[lmroman10-bold]:\fontfeatures" \sizespec
\font\tenit = "[lmroman10-italic]:\fontfeatures" \sizespec
\font\tenbi = "[lmroman10-bolditalic]:\fontfeatures" \sizespec
\font\tentt = "[lmmono10-regular]:\fontfeatures" \sizespec
\font\tenrmc= "[lmromancaps10-regular]:\fontfeatures" \sizespec
\font\tenitc= "[lmromancaps10-oblique]:\fontfeatures" \sizespec
\else
\font\tenrm = \ffnamepre lmr10 \sizespec
\font\tenbf = \ffnamepre lmbx10 \sizespec
\font\tenit = \ffnamepre lmri10 \sizespec
\font\tenbi = \ffnamepre lmbxi10 \sizespec
\font\tentt = \ffnamepre lmtt10 \sizespec
\font\tenrmc= \ffnamepre lmcsc10 \sizespec % for backward compatibility
\font\tenitc= \ffnamepre lmcsco10 \sizespec % for backward compatibility
\fi
\ismacro\fotenc{8z}\iftrue \input chars-8z \fi
\tenrm
\ffvars{\regularV}{b\bextV}{ti\slantV}{b\bextV i\slantV}
\def\nbold {\ffsetV{bext}{}\ffsetX}
\def\slant {\ffsetV{slant}{sl}\ffsetX}
\def\sans {\ffsetV{subfam}{ss}\slant}
\def\ttset {\ffsetV{subfam}{tt}\nbold}
\def\ttprop {\ffsetV{subfam}{tp}\slant}
\def\ttlight {\ffsetV{subfam}{tl}\slant}
\def\ttcond {\ffvars{}{!}{ti\slantV}{!}\ffsetV{subfam}{tc}\slant}
\def\quotset {\ffsetV{subfam}{sq}\slant}
\def\upital {\ffvars{}{!}{!}{!}\ffsetV{subfam}{u}\ffsetX}
\def\dunhill {\ffvars{du}{!}{dusl}{!}\ffsetX}
\def\caps {\ffvars{\regularV}{!}{tisl}{!}\ffsetV{caps}{csc}\slant}
\def\lmreset {\ffsetV{subfam}{}\ffsetV{slant}{}\ffsetV{caps}{}%
\ffsetV{bext}{x}\ffsetX}
\def\regularV{\ifx\subfamV\empty r\fi}
\lmreset\relax % default values
\def\ffnamegen{lm\subfamV\ffvarV\capsV\ffoptV}
\def\ffloadhookA#1{\expandafter\ifx \csname\ffnamegen:reg\endcsname \relax
\ffmessage{FONT warning: LMfonts - desired shape (\ffnamegen) unavailable}%
\else % TS1 metric added + load font
}
\def\LMregtfm #1 #2 #3 #4 {\edef\tmp
{\noexpand\regtfm #1 0 \csname regtfm#3\endcsname\ffnamepre{#2}}%
\lowercase\expandafter{\tmp}% OTF file names are lowercase
}
\def\regtfmFS#1#2{#1#25 5.5 #1#26 6.5 #1#27 7.5 #1#28 8.5
#1#29 9.5 #1#210 11.1 #1#212 15 #1#217 *}
\def\regtfmFT#1#2{#1#25 5.5 #1#26 6.5 #1#27 7.5 #1#28 8.5
#1#29 9.5 #1#210 11.1 #1#212 *}
\def\regtfmST#1#2{#1#27 7.5 #1#28 8.5 #1#29 9.5 #1#210 11.1 #1#212 *}
\def\regtfmES#1#2{#1#28 8.5 #1#29 9.5 #1#210 11.1 #1#212 15 #1#217 *}
\def\regtfmET#1#2{#1#28 8.5 #1#29 9.5 #1#210 11.1 #1#212 *}
\def\regtfmT #1#2{#1#210 *}
\def\regtfmE #1#2{#1#28 *}
\ismacro\fotenc{U}\iftrue
\def\ffnamepre#1-#2;#3 {\noexpand\ffnameotf{[#1#3-#2]} }
\let\ffnameotf=\ffnameotfA
\LMregtfm lmr LMRoman-Regular; FS 5-17
\LMregtfm lmbx LMRoman-Bold; FT 5-12
\LMregtfm lmti LMRoman-Italic; ST 7-12
\LMregtfm lmbxi LMRoman-BoldItalic; T 10
\LMregtfm lmtisl LMRomanSlant-Regular; ES 8-17
\LMregtfm lmbxisl LMRomanSlant-Bold; T 10
\LMregtfm lmb LMRomanDemi-Regular; T 10
\LMregtfm lmbi LMRomanDemi-Oblique; T 10
\LMregtfm lmss LMSans-Regular; ES 8-17
\LMregtfm lmssbx LMSans-Bold; T 10
\LMregtfm lmsstisl LMSans-Oblique; ES 8-17
\LMregtfm lmssbxisl LMSans-BoldOblique; T 10
\LMregtfm lmssb LMSansDemiCond-Regular; T 10
\LMregtfm lmssbisl LMSansDemiCond-Oblique; T 10
\LMregtfm lmsq LMSansQuot-Regular; E 8
\LMregtfm lmsqbx LMSansQuot-Bold; E 8
\LMregtfm lmsqtisl LMSansQuot-Oblique; E 8
\LMregtfm lmsqbxisl LMSansQuot-BoldOblique; E 8
\LMregtfm lmtt LMMono-Regular; ET 8-12
\LMregtfm lmttb LMMonoLt-Bold; T 10
\LMregtfm lmttti LMMono-Italic; T 10
\LMregtfm lmttbi LMMonoLt-BoldOblique; T 10
\LMregtfm lmtttisl LMMonoSlant-Regular; T 10
\ffalias {lmttbisl} {lmttbi}
\LMregtfm lmtp LMMonoPropLt-Regular; T 10
\LMregtfm lmtpb LMMonoProp-Regular; T 10
\LMregtfm lmtpbx LMMonoPropLt-Bold; T 10
\LMregtfm lmtptisl LMMonoPropLt-Oblique; T 10
\LMregtfm lmtpbisl LMMonoProp-Oblique; T 10
\LMregtfm lmtpbxisl LMMonoPropLt-BoldOblique; T 10
\LMregtfm lmtl LMMonoLt-Regular; T 10
\ffalias {lmtlb} {lmtt}
\ffalias {lmtlbx} {lmttb}
\LMregtfm lmtltisl LMMonoLt-Oblique; T 10
\ffalias {lmtlbisl} {lmtttisl}
\ffalias {lmtlbxisl}{lmttbi}
\LMregtfm lmtc LMMonoLtCond-Regular; T 10
\LMregtfm lmtctisl LMMonoLtCond-Oblique; T 10
\LMregtfm lmrcsc LMRomanCaps-Regular; T 10
\LMregtfm lmtislcsc LMRomanCaps-Oblique; T 10
\LMregtfm lmttcsc LMMonoCaps-Regular; T 10
\LMregtfm lmtttislcsc LMMonoCaps-Oblique; T 10
\LMregtfm lmu LMRomanUnsl-Regular; T 10
\LMregtfm lmdu LMRomanDunh-Regular; T 10
\LMregtfm lmdusl LMRomanDunh-Oblique; T 10
\let\ffnameotf=\ffnameotfB
\else
\LMregtfm lmr lmr FS 5-17
\LMregtfm lmbx lmbx FT 5-12
\LMregtfm lmti lmri ST 7-12
\LMregtfm lmbxi lmbxi T 10
\LMregtfm lmtisl lmro ES 8-17
\LMregtfm lmbxisl lmbxo T 10
\LMregtfm lmb lmb T 10
\LMregtfm lmbi lmbo T 10
\LMregtfm lmss lmss ES 8-17
\LMregtfm lmssbx lmssbx T 10
\LMregtfm lmsstisl lmsso ES 8-17
\LMregtfm lmssbxisl lmssbo T 10
\LMregtfm lmssb lmssdc T 10
\LMregtfm lmssbisl lmssdo T 10
\LMregtfm lmsq lmssq E 8
\LMregtfm lmsqbx lmssqbx E 8
\LMregtfm lmsqtisl lmssqo E 8
\LMregtfm lmsqbxisl lmssqbo E 8
\LMregtfm lmtt lmtt ET 8-12
\LMregtfm lmttb lmtk T 10
\LMregtfm lmttti lmtti T 10
\LMregtfm lmttbi lmtko T 10
\LMregtfm lmtttisl lmtto T 10
\ffalias {lmttbisl} {lmttbi}
\LMregtfm lmtp lmvtl T 10
\LMregtfm lmtpb lmvtt T 10
\LMregtfm lmtpbx lmvtk T 10
\LMregtfm lmtptisl lmvtlo T 10
\LMregtfm lmtpbisl lmvtto T 10
\LMregtfm lmtpbxisl lmvtko T 10
\LMregtfm lmtl lmtl T 10
\ffalias {lmtlb} {lmtt}
\ffalias {lmtlbx} {lmttb}
\LMregtfm lmtltisl lmtlo T 10
\ffalias {lmtlbisl} {lmtttisl}
\ffalias {lmtlbxisl}{lmttbi}
\LMregtfm lmtc lmtlc T 10
\LMregtfm lmtctisl lmtlco T 10
\LMregtfm lmrcsc lmcsc T 10
\LMregtfm lmtislcsc lmcsco T 10
\LMregtfm lmttcsc lmtcsc T 10
\LMregtfm lmtttislcsc lmtcso T 10
\LMregtfm lmu lmu T 10
\LMregtfm lmdu lmdunh T 10
\LMregtfm lmdusl lmduno T 10
\fi
\let\lmfonts=\font % macros can do test: \ifx\font\lmfonts ...
\ifx\loadmathfonts\relax \endinput \fi
\let\normalmathloading=\relax
\ifx\mathpreloaded A\else \input ams-math \fi
% CM math fonts
\ismacro\fotenc{8z}\iftrue
\ffalias{cmr}{lmr}
\ffalias{cmbx}{lmbx}
\else
\regtfm cmr 0 rm-lmr5 5.5 rm-lmr6 6.5 rm-lmr7 7.5 rm-lmr8 8.5 rm-lmr9 9.5
rm-lmr10 11.1 rm-lmr12 15 rm-lmr17 *
\regtfm cmbx 0 rm-lmbx5 5.5 rm-lmbx6 6.5 rm-lmbx7 7.5 rm-lmbx8 8.5
rm-lmbx9 9.5 rm-lmbx10 11.1 rm-lmbx12 *
\fi
\regtfm cmmi 0 lmmi5 5.5 lmmi6 6.5 lmmi7 7.5 lmmi8 8.5 lmmi9 9.5
lmmi10 11.1 lmmi12 *
\regtfm cmmib 0 lmmib5 6 lmmib7 8.5 lmmib10 *
\regtfm cmsy 0 lmsy5 5.5 lmsy6 6.5 lmsy7 7.5 lmsy8 8.5 lmsy9 9.5
lmsy10 *
\regtfm cmbsy 0 lmbsy5 6 lmbsy7 8.5 lmbsy10 *
\regtfm cmex 0 lmex10 *
\regtfm cmexb 0 lmex10 *
% Fonts Other
\ffalias {bfsans} {lmssbx}
\ffalias {bisans} {lmssbxisl}
\ffalias {bbfsans} {lmssbx}
\ffalias {bbisans} {lmssbxisl}
\normalmath \let\normalmathloading=y
% end of lmfonts.tex
|