xref: /original-bsd/old/roff/troff_font/mkfont1.c (revision f0fd5f8a)
1 #ifndef lint
2 static char mkfont1sccsid[] = "@(#)mkfont1.c	4.1 06/07/82";
3 #endif lint
4 
5 
6 struct {
7 	int name;
8 	int ctval;
9 	} font[102] {
10 'h',2,
11 't',2,
12 'n',0,
13 'm',0,
14 'l',2,
15 'i',2,
16 'z',0,
17 's',0,
18 'd',2,
19 'b',2,
20 'x',0,
21 'f',2,
22 'j',3,
23 'u',0,
24 'k',2,
25 'p',1,
26 'em',0,
27 ';',0,
28 'a',0,
29 'ru',0,
30 'c',0,
31 '`',0,
32 'e',0,
33 '\'',0,
34 'o',0,
35 '14',0,
36 'r',0,
37 '12',0,
38 'v',0,
39 'hy',0,
40 'w',0,
41 'q',1,
42 '/',0,
43 '.',0,
44 'g',1,
45 '34',0,
46 ',',0,
47 '&',0,
48 'y',1,
49 '%',0,
50 'Q',3,
51 'T',2,
52 'O',2,
53 'H',2,
54 'N',2,
55 'M',2,
56 'L',2,
57 'R',2,
58 'G',2,
59 'I',2,
60 'P',2,
61 'C',2,
62 'V',2,
63 'E',2,
64 'Z',2,
65 'D',2,
66 'B',2,
67 'S',2,
68 'Y',2,
69 'F',2,
70 'X',2,
71 'A',2,
72 'W',2,
73 'J',2,
74 'U',2,
75 'K',2,
76 '0',2,
77 '1',2,
78 '2',2,
79 '3',2,
80 '4',2,
81 '5',2,
82 '6',2,
83 '7',2,
84 '8',2,
85 '9',2,
86 '*',0,
87 '--',0,
88 'fi',0,
89 'fl',0,
90 'ff',0,
91 'ct',0,
92 'Fl',0,
93 'Fi',0,
94 '(',0,
95 ')',0,
96 '[',0,
97 ']',0,
98 'de',0,
99 'dg',0,
100 '=',0,
101 'rg',0,
102 ':',0,
103 '+',0,
104 '!',0,
105 'bu',0,
106 '?',0,
107 'fm',0,
108 '|',0,
109 'co',0,
110 'sq',0,
111 '$',0};
112 char *nametab[256-32] {
113 "/*space*/",
114 "/*!*/",
115 "/*\"*/",
116 "/*#*/",
117 "/*$*/",
118 "/*%*/",
119 "/*&*/",
120 "/*' close*/",
121 "/*(*/",
122 "/*)*/",
123 "/***/",
124 "/*+*/",
125 "/*,*/",
126 "/*- hyphen*/",
127 "/*.*/",
128 "/*/*/",
129 "/*0*/",
130 "/*1*/",
131 "/*2*/",
132 "/*3*/",
133 "/*4*/",
134 "/*5*/",
135 "/*6*/",
136 "/*7*/",
137 "/*8*/",
138 "/*9*/",
139 "/*:*/",
140 "/*;*/",
141 "/*<*/",
142 "/*=*/",
143 "/*>*/",
144 "/*?*/",
145 "/*@*/",
146 "/*A*/",
147 "/*B*/",
148 "/*C*/",
149 "/*D*/",
150 "/*E*/",
151 "/*F*/",
152 "/*G*/",
153 "/*H*/",
154 "/*I*/",
155 "/*J*/",
156 "/*K*/",
157 "/*L*/",
158 "/*M*/",
159 "/*N*/",
160 "/*O*/",
161 "/*P*/",
162 "/*Q*/",
163 "/*R*/",
164 "/*S*/",
165 "/*T*/",
166 "/*U*/",
167 "/*V*/",
168 "/*W*/",
169 "/*X*/",
170 "/*Y*/",
171 "/*Z*/",
172 "/*[*/",
173 "/*\\*/",
174 "/*]*/",
175 "/*^*/",
176 "/*_*/",
177 "/*` open*/",
178 "/*a*/",
179 "/*b*/",
180 "/*c*/",
181 "/*d*/",
182 "/*e*/",
183 "/*f*/",
184 "/*g*/",
185 "/*h*/",
186 "/*i*/",
187 "/*j*/",
188 "/*k*/",
189 "/*l*/",
190 "/*m*/",
191 "/*n*/",
192 "/*o*/",
193 "/*p*/",
194 "/*q*/",
195 "/*r*/",
196 "/*s*/",
197 "/*t*/",
198 "/*u*/",
199 "/*v*/",
200 "/*w*/",
201 "/*x*/",
202 "/*y*/",
203 "/*z*/",
204 "/*{*/",
205 "/*|*/",
206 "/*}*/",
207 "/*~*/",
208 "/*narrow space*/",
209 "/*hyphen*/",
210 "/*bullet*/",
211 "/*square*/",
212 "/*3/4 em*/",
213 "/*rule*/",
214 "/*1/4*/",
215 "/*1/2*/",
216 "/*3/4*/",
217 "/*minus*/",
218 "/*fi*/",
219 "/*fl*/",
220 "/*ff*/",
221 "/*ffi*/",
222 "/*ffl*/",
223 "/*degree*/",
224 "/*dagger*/",
225 "/*section*/",
226 "/*foot mark*/",
227 "/*'*/",
228 "/*`*/",
229 "/*_*/",
230 0,
231 "/*half nar sp*/",
232 0,
233 0,0,0,0,0,0,0,0,
234 0,0,0,0,0,0,0,0,
235 0,0,0,0,0,0,0,0,
236 0,0,0,0,0,0,0,0,
237 0,0,0,0,0,0,0,0,
238 0,0,0,0,0,0,0,0,
239 0,0,0,0,0,0,0,0,
240 0,0,0,0,0,0,0,0,
241 0,0,0,0,0,
242 "/*registered*/",
243 "/*copywrite*/",
244 0,
245 "/*cent*/",
246 };
247 int chtab [] {
248 '--', 0210,	/*font minus*/
249 'hy', 0200,	/*hyphen*/
250 'bu', 0201,	/*bullet*/
251 'sq', 0202,	/*square*/
252 'em', 0203,	/*3/4em*/
253 'ru', 0204,	/*rule*/
254 '14', 0205,	/*1/4*/
255 '12', 0206,	/*1/2*/
256 '34', 0207,	/*3/4*/
257 'mi', 0302,	/*equation minus*/
258 'fi', 0211,	/*fi*/
259 'fl', 0212,	/*fl*/
260 'ff', 0213,	/*ff*/
261 'Fi', 0214,	/*ffi*/
262 'Fl', 0215,	/*ffl*/
263 'de', 0216,	/*degree*/
264 'dg', 0217,	/*dagger*/
265 'sc', 0220,	/*section*/
266 'fm', 0221,	/*foot mark*/
267 'aa', 0222,	/*acute accent*/
268 'ga', 0223,	/*grave accent*/
269 'ul', 0224,	/*underrule*/
270 'sl', 0225,	/*slash (longer)*/
271 '*a', 0230,	/*alpha*/
272 '*b', 0231,	/*beta*/
273 '*g', 0232,	/*gamma*/
274 '*d', 0233,	/*delta*/
275 '*e', 0234,	/*epsilon*/
276 '*z', 0235,	/*zeta*/
277 '*y', 0236,	/*eta*/
278 '*h', 0237,	/*theta*/
279 '*i', 0240,	/*iota*/
280 '*k', 0241,	/*kappa*/
281 '*l', 0242,	/*lambda*/
282 '*m', 0243,	/*mu*/
283 '*n', 0244,	/*nu*/
284 '*c', 0245,	/*xi*/
285 '*o', 0246,	/*omicron*/
286 '*p', 0247,	/*pi*/
287 '*r', 0250,	/*rho*/
288 '*s', 0251,	/*sigma*/
289 '*t', 0252,	/*tau*/
290 '*u', 0253,	/*upsilon*/
291 '*f', 0254,	/*phi*/
292 '*x', 0255,	/*chi*/
293 '*q', 0256,	/*psi*/
294 '*w', 0257,	/*omega*/
295 '*A', 0101,	/*Alpha*/
296 '*B', 0102,	/*Beta*/
297 '*G', 0260,	/*Gamma*/
298 '*D', 0261,	/*Delta*/
299 '*E', 0105,	/*Epsilon*/
300 '*Z', 0132,	/*Zeta*/
301 '*Y', 0110,	/*Eta*/
302 '*H', 0262,	/*Theta*/
303 '*I', 0111,	/*Iota*/
304 '*K', 0113,	/*Kappa*/
305 '*L', 0263,	/*Lambda*/
306 '*M', 0115,	/*Mu*/
307 '*N', 0116,	/*Nu*/
308 '*C', 0264,	/*Xi*/
309 '*O', 0117,	/*Omicron*/
310 '*P', 0265,	/*Pi*/
311 '*R', 0120,	/*Rho*/
312 '*S', 0266,	/*Sigma*/
313 '*T', 0124,	/*Tau*/
314 '*U', 0270,	/*Upsilon*/
315 '*F', 0271,	/*Phi*/
316 '*X', 0130,	/*Chi*/
317 '*Q', 0272,	/*Psi*/
318 '*W', 0273,	/*Omega*/
319 'sr', 0274,	/*square root*/
320 'ts', 0275,	/*terminal sigma*/
321 'rn', 0276,	/*root en*/
322 '>=', 0277,	/*>=*/
323 '<=', 0300,	/*<=*/
324 '==', 0301,	/*identically equal*/
325 '~=', 0303,	/*approx =*/
326 'ap', 0304,	/*approximates*/
327 '!=', 0305,	/*not equal*/
328 '->', 0306,	/*right arrow*/
329 '<-', 0307,	/*left arrow*/
330 'ua', 0310,	/*up arrow*/
331 'da', 0311,	/*down arrow*/
332 'eq', 0312,	/*equation equal*/
333 'mu', 0313,	/*multiply*/
334 'di', 0314,	/*divide*/
335 '+-', 0315,	/*plus-minus*/
336 'cu', 0316,	/*cup (union)*/
337 'ca', 0317,	/*cap (intersection)*/
338 'sb', 0320,	/*subset of*/
339 'sp', 0321,	/*superset of*/
340 'ib', 0322,	/*improper subset*/
341 'ip', 0323,	/*  " superset*/
342 'if', 0324,	/*infinity*/
343 'pd', 0325,	/*partial derivative*/
344 'gr', 0326,	/*gradient*/
345 'no', 0327,	/*not*/
346 'is', 0330,	/*integral sign*/
347 'pt', 0331,	/*proportional to*/
348 'es', 0332,	/*empty set*/
349 'mo', 0333,	/*member of*/
350 'pl', 0334,	/*equation plus*/
351 'rg', 0335,	/*registered*/
352 'co', 0336,	/*copyright*/
353 'br', 0337,	/*box vert rule*/
354 'ct', 0340,	/*cent sign*/
355 'dd', 0341,	/*dbl dagger*/
356 'rh', 0342,	/*right hand*/
357 'lh', 0343,	/*left hand*/
358 '**', 0344,	/*math * */
359 'bs', 0345,	/*bell system sign*/
360 'or', 0346,	/*or*/
361 'ci', 0347,	/*circle*/
362 'lt', 0350,	/*left top (of big curly)*/
363 'lb', 0351,	/*left bottom*/
364 'rt', 0352,	/*right top*/
365 'rb', 0353,	/*right bot*/
366 'lk', 0354,	/*left center of big curly bracket*/
367 'rk', 0355,	/*right center of big curly bracket*/
368 'bv', 0356,	/*bold vertical*/
369 'lf', 0357,	/*left floor (left bot of big sq bract)*/
370 'rf', 0360,	/*right floor (rb of ")*/
371 'lc', 0361,	/*left ceiling (lt of ")*/
372 'rc', 0362,	/*right ceiling (rt of ")*/
373 0,0};
374