Annotation of mandoc/chars.in, Revision 1.46
1.46 ! schwarze 1: /* $Id: chars.in,v 1.45 2014/03/05 23:14:46 schwarze Exp $ */
1.1 kristaps 2: /*
1.41 schwarze 3: * Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
1.44 schwarze 4: * Copyright (c) 2014 Ingo Schwarze <schwarze@openbsd.org>
1.1 kristaps 5: *
6: * Permission to use, copy, modify, and distribute this software for any
7: * purpose with or without fee is hereby granted, provided that the above
8: * copyright notice and this permission notice appear in all copies.
9: *
10: * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
11: * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
12: * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
13: * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
14: * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN
15: * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
16: * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
17: */
18:
19: /*
1.46 ! schwarze 20: * The ASCII translation tables.
1.1 kristaps 21: *
1.38 kristaps 22: * The left-hand side corresponds to the input sequence (\x, \(xx, \*(xx
23: * and so on) whose length is listed second element. The right-hand
24: * side is what's produced by the front-end, with the fourth element
25: * being its length.
1.1 kristaps 26: *
27: * XXX - C-escape strings!
28: * XXX - update LINES_MAX if adding more!
29: */
30:
1.44 schwarze 31: /* Special break control characters. */
1.31 kristaps 32: static const char ascii_nbrsp[2] = { ASCII_NBRSP, '\0' };
1.44 schwarze 33: static const char ascii_break[2] = { ASCII_BREAK, '\0' };
1.19 kristaps 34:
35: CHAR_TBL_START
36:
1.17 kristaps 37: /* Spacing. */
1.31 kristaps 38: CHAR(" ", ascii_nbrsp, 160)
39: CHAR("~", ascii_nbrsp, 160)
1.44 schwarze 40: CHAR("0", " ", 8194)
41: CHAR("|", "", 0)
42: CHAR("^", "", 0)
43: CHAR("&", "", 0)
1.42 kristaps 44: CHAR("%", "", 0)
1.44 schwarze 45: CHAR(":", ascii_break, 0)
46: /* XXX The following three do not really belong into this file. */
47: CHAR("t", "", 0)
48: CHAR("c", "", 0)
1.42 kristaps 49: CHAR("}", "", 0)
1.1 kristaps 50:
1.12 kristaps 51: /* Accents. */
1.45 schwarze 52: CHAR("a\"", "\"", 733)
1.31 kristaps 53: CHAR("a-", "-", 175)
54: CHAR("a.", ".", 729)
1.45 schwarze 55: CHAR("a^", "^", 94)
56: CHAR("\'", "\'", 180)
57: CHAR("aa", "\'", 180)
58: CHAR("ga", "`", 96)
59: CHAR("`", "`", 96)
60: CHAR("ab", "`", 728)
61: CHAR("ac", ",", 184)
62: CHAR("ad", "\"", 168)
1.31 kristaps 63: CHAR("ah", "v", 711)
64: CHAR("ao", "o", 730)
1.45 schwarze 65: CHAR("a~", "~", 126)
66: CHAR("ho", ",", 731)
1.31 kristaps 67: CHAR("ha", "^", 94)
68: CHAR("ti", "~", 126)
1.11 kristaps 69:
1.13 kristaps 70: /* Quotes. */
1.31 kristaps 71: CHAR("Bq", ",,", 8222)
72: CHAR("bq", ",", 8218)
1.38 kristaps 73: CHAR("lq", "``", 8220)
74: CHAR("rq", "\'\'", 8221)
1.31 kristaps 75: CHAR("oq", "`", 8216)
76: CHAR("cq", "\'", 8217)
77: CHAR("aq", "\'", 39)
78: CHAR("dq", "\"", 34)
79: CHAR("Fo", "<<", 171)
80: CHAR("Fc", ">>", 187)
81: CHAR("fo", "<", 8249)
82: CHAR("fc", ">", 8250)
1.13 kristaps 83:
1.14 kristaps 84: /* Brackets. */
1.31 kristaps 85: CHAR("lB", "[", 91)
86: CHAR("rB", "]", 93)
87: CHAR("lC", "{", 123)
88: CHAR("rC", "}", 125)
89: CHAR("la", "<", 60)
90: CHAR("ra", ">", 62)
91: CHAR("bv", "|", 9130)
92: CHAR("braceex", "|", 9130)
93: CHAR("bracketlefttp", "|", 9121)
94: CHAR("bracketleftbp", "|", 9123)
95: CHAR("bracketleftex", "|", 9122)
96: CHAR("bracketrighttp", "|", 9124)
97: CHAR("bracketrightbp", "|", 9126)
98: CHAR("bracketrightex", "|", 9125)
99: CHAR("lt", ",-", 9127)
100: CHAR("bracelefttp", ",-", 9127)
101: CHAR("lk", "{", 9128)
102: CHAR("braceleftmid", "{", 9128)
103: CHAR("lb", ",-", 9129)
104: CHAR("braceleftbp", "`-", 9129)
105: CHAR("braceleftex", "|", 9130)
106: CHAR("rt", "-.", 9131)
107: CHAR("bracerighttp", "-.", 9131)
108: CHAR("rk", "}", 9132)
109: CHAR("bracerightmid", "}", 9132)
110: CHAR("rb", "-\'", 9133)
111: CHAR("bracerightbp", "-\'", 9133)
112: CHAR("bracerightex", "|", 9130)
113: CHAR("parenlefttp", "/", 9115)
114: CHAR("parenleftbp", "\\", 9117)
115: CHAR("parenleftex", "|", 9116)
116: CHAR("parenrighttp", "\\", 9118)
117: CHAR("parenrightbp", "/", 9120)
118: CHAR("parenrightex", "|", 9119)
1.1 kristaps 119:
1.11 kristaps 120: /* Greek characters. */
1.31 kristaps 121: CHAR("*A", "A", 913)
122: CHAR("*B", "B", 914)
123: CHAR("*G", "|", 915)
124: CHAR("*D", "/\\", 916)
125: CHAR("*E", "E", 917)
126: CHAR("*Z", "Z", 918)
127: CHAR("*Y", "H", 919)
128: CHAR("*H", "O", 920)
129: CHAR("*I", "I", 921)
130: CHAR("*K", "K", 922)
131: CHAR("*L", "/\\", 923)
132: CHAR("*M", "M", 924)
133: CHAR("*N", "N", 925)
134: CHAR("*C", "H", 926)
135: CHAR("*O", "O", 927)
136: CHAR("*P", "TT", 928)
137: CHAR("*R", "P", 929)
138: CHAR("*S", ">", 931)
139: CHAR("*T", "T", 932)
140: CHAR("*U", "Y", 933)
141: CHAR("*F", "O_", 934)
142: CHAR("*X", "X", 935)
143: CHAR("*Q", "Y", 936)
144: CHAR("*W", "O", 937)
145: CHAR("*a", "a", 945)
146: CHAR("*b", "B", 946)
147: CHAR("*g", "y", 947)
148: CHAR("*d", "d", 948)
149: CHAR("*e", "e", 949)
150: CHAR("*z", "C", 950)
151: CHAR("*y", "n", 951)
152: CHAR("*h", "0", 952)
153: CHAR("*i", "i", 953)
154: CHAR("*k", "k", 954)
155: CHAR("*l", "\\", 955)
156: CHAR("*m", "u", 956)
157: CHAR("*n", "v", 957)
158: CHAR("*c", "E", 958)
159: CHAR("*o", "o", 959)
160: CHAR("*p", "n", 960)
161: CHAR("*r", "p", 961)
162: CHAR("*s", "o", 963)
163: CHAR("*t", "t", 964)
164: CHAR("*u", "u", 965)
165: CHAR("*f", "o", 981)
166: CHAR("*x", "x", 967)
167: CHAR("*q", "u", 968)
168: CHAR("*w", "w", 969)
169: CHAR("+h", "0", 977)
170: CHAR("+f", "o", 966)
171: CHAR("+p", "w", 982)
172: CHAR("+e", "e", 1013)
173: CHAR("ts", "s", 962)
1.11 kristaps 174:
1.17 kristaps 175: /* Accented letters. */
1.31 kristaps 176: CHAR(",C", "C", 199)
177: CHAR(",c", "c", 231)
178: CHAR("/L", "L", 321)
179: CHAR("/O", "O", 216)
180: CHAR("/l", "l", 322)
181: CHAR("/o", "o", 248)
182: CHAR("oA", "A", 197)
183: CHAR("oa", "a", 229)
184: CHAR(":A", "A", 196)
185: CHAR(":E", "E", 203)
186: CHAR(":I", "I", 207)
187: CHAR(":O", "O", 214)
188: CHAR(":U", "U", 220)
189: CHAR(":a", "a", 228)
190: CHAR(":e", "e", 235)
191: CHAR(":i", "i", 239)
1.36 schwarze 192: CHAR(":o", "o", 246)
1.31 kristaps 193: CHAR(":u", "u", 252)
194: CHAR(":y", "y", 255)
195: CHAR("\'A", "A", 193)
196: CHAR("\'E", "E", 201)
197: CHAR("\'I", "I", 205)
198: CHAR("\'O", "O", 211)
199: CHAR("\'U", "U", 218)
200: CHAR("\'a", "a", 225)
201: CHAR("\'e", "e", 233)
202: CHAR("\'i", "i", 237)
203: CHAR("\'o", "o", 243)
204: CHAR("\'u", "u", 250)
205: CHAR("^A", "A", 194)
206: CHAR("^E", "E", 202)
207: CHAR("^I", "I", 206)
208: CHAR("^O", "O", 212)
209: CHAR("^U", "U", 219)
210: CHAR("^a", "a", 226)
211: CHAR("^e", "e", 234)
212: CHAR("^i", "i", 238)
213: CHAR("^o", "o", 244)
214: CHAR("^u", "u", 251)
215: CHAR("`A", "A", 192)
216: CHAR("`E", "E", 200)
217: CHAR("`I", "I", 204)
218: CHAR("`O", "O", 210)
219: CHAR("`U", "U", 217)
220: CHAR("`a", "a", 224)
221: CHAR("`e", "e", 232)
222: CHAR("`i", "i", 236)
223: CHAR("`o", "o", 242)
224: CHAR("`u", "u", 249)
225: CHAR("~A", "A", 195)
226: CHAR("~N", "N", 209)
227: CHAR("~O", "O", 213)
228: CHAR("~a", "a", 227)
229: CHAR("~n", "n", 241)
230: CHAR("~o", "o", 245)
1.11 kristaps 231:
1.17 kristaps 232: /* Arrows and lines. */
1.31 kristaps 233: CHAR("<-", "<-", 8592)
234: CHAR("->", "->", 8594)
235: CHAR("<>", "<>", 8596)
236: CHAR("da", "v", 8595)
1.38 kristaps 237: CHAR("ua", "^", 8593)
238: CHAR("va", "^v", 8597)
1.31 kristaps 239: CHAR("lA", "<=", 8656)
240: CHAR("rA", "=>", 8658)
241: CHAR("hA", "<=>", 8660)
242: CHAR("dA", "v", 8659)
243: CHAR("uA", "^", 8657)
244: CHAR("vA", "^=v", 8661)
1.11 kristaps 245:
246: /* Logic. */
1.31 kristaps 247: CHAR("AN", "^", 8743)
248: CHAR("OR", "v", 8744)
249: CHAR("no", "~", 172)
250: CHAR("tno", "~", 172)
251: CHAR("te", "3", 8707)
252: CHAR("fa", "V", 8704)
253: CHAR("st", "-)", 8715)
254: CHAR("tf", ".:.", 8756)
255: CHAR("3d", ".:.", 8756)
256: CHAR("or", "|", 124)
1.11 kristaps 257:
258: /* Mathematicals. */
1.31 kristaps 259: CHAR("pl", "+", 43)
260: CHAR("mi", "-", 8722)
261: CHAR("-", "-", 45)
262: CHAR("-+", "-+", 8723)
263: CHAR("+-", "+-", 177)
264: CHAR("t+-", "+-", 177)
265: CHAR("pc", ".", 183)
266: CHAR("md", ".", 8901)
267: CHAR("mu", "x", 215)
268: CHAR("tmu", "x", 215)
269: CHAR("c*", "x", 8855)
270: CHAR("c+", "+", 8853)
271: CHAR("di", "-:-", 247)
272: CHAR("tdi", "-:-", 247)
273: CHAR("f/", "/", 8260)
274: CHAR("**", "*", 8727)
1.38 kristaps 275: CHAR("<=", "<=", 8804)
276: CHAR(">=", ">=", 8805)
1.31 kristaps 277: CHAR("<<", "<<", 8810)
278: CHAR(">>", ">>", 8811)
279: CHAR("eq", "=", 61)
280: CHAR("!=", "!=", 8800)
281: CHAR("==", "==", 8801)
282: CHAR("ne", "!==", 8802)
283: CHAR("=~", "=~", 8773)
284: CHAR("-~", "-~", 8771)
285: CHAR("ap", "~", 8764)
286: CHAR("~~", "~~", 8776)
287: CHAR("~=", "~=", 8780)
288: CHAR("pt", "oc", 8733)
289: CHAR("es", "{}", 8709)
290: CHAR("mo", "E", 8712)
291: CHAR("nm", "!E", 8713)
292: CHAR("sb", "(=", 8834)
293: CHAR("nb", "(!=", 8836)
294: CHAR("sp", "=)", 8835)
295: CHAR("nc", "!=)", 8837)
296: CHAR("ib", "(=", 8838)
297: CHAR("ip", "=)", 8839)
298: CHAR("ca", "(^)", 8745)
299: CHAR("cu", "U", 8746)
300: CHAR("/_", "/_", 8736)
301: CHAR("pp", "_|_", 8869)
302: CHAR("is", "I", 8747)
303: CHAR("integral", "I", 8747)
304: CHAR("sum", "E", 8721)
305: CHAR("product", "TT", 8719)
306: CHAR("coproduct", "U", 8720)
307: CHAR("gr", "V", 8711)
308: CHAR("sr", "\\/", 8730)
309: CHAR("sqrt", "\\/", 8730)
310: CHAR("lc", "|~", 8968)
311: CHAR("rc", "~|", 8969)
312: CHAR("lf", "|_", 8970)
313: CHAR("rf", "_|", 8971)
314: CHAR("if", "oo", 8734)
315: CHAR("Ah", "N", 8501)
316: CHAR("Im", "I", 8465)
317: CHAR("Re", "R", 8476)
318: CHAR("pd", "a", 8706)
319: CHAR("-h", "/h", 8463)
1.40 kristaps 320: CHAR("12", "1/2", 189)
321: CHAR("14", "1/4", 188)
322: CHAR("34", "3/4", 190)
1.11 kristaps 323:
1.15 kristaps 324: /* Ligatures. */
1.31 kristaps 325: CHAR("ff", "ff", 64256)
326: CHAR("fi", "fi", 64257)
327: CHAR("fl", "fl", 64258)
328: CHAR("Fi", "ffi", 64259)
329: CHAR("Fl", "ffl", 64260)
1.34 kristaps 330: CHAR("AE", "AE", 198)
331: CHAR("ae", "ae", 230)
1.31 kristaps 332: CHAR("OE", "OE", 338)
333: CHAR("oe", "oe", 339)
334: CHAR("ss", "ss", 223)
335: CHAR("IJ", "IJ", 306)
336: CHAR("ij", "ij", 307)
1.15 kristaps 337:
338: /* Special letters. */
1.31 kristaps 339: CHAR("-D", "D", 208)
340: CHAR("Sd", "o", 240)
341: CHAR("TP", "b", 222)
342: CHAR("Tp", "b", 254)
343: CHAR(".i", "i", 305)
344: CHAR(".j", "j", 567)
1.16 kristaps 345:
346: /* Currency. */
1.31 kristaps 347: CHAR("Do", "$", 36)
348: CHAR("ct", "c", 162)
349: CHAR("Eu", "EUR", 8364)
350: CHAR("eu", "EUR", 8364)
351: CHAR("Ye", "Y", 165)
352: CHAR("Po", "L", 163)
353: CHAR("Cs", "x", 164)
354: CHAR("Fn", "f", 402)
1.17 kristaps 355:
356: /* Lines. */
1.31 kristaps 357: CHAR("ba", "|", 124)
358: CHAR("br", "|", 9474)
359: CHAR("ul", "_", 95)
360: CHAR("rl", "-", 8254)
361: CHAR("bb", "|", 166)
362: CHAR("sl", "/", 47)
363: CHAR("rs", "\\", 92)
1.17 kristaps 364:
365: /* Text markers. */
1.31 kristaps 366: CHAR("ci", "o", 9675)
367: CHAR("bu", "o", 8226)
368: CHAR("dd", "=", 8225)
369: CHAR("dg", "-", 8224)
370: CHAR("lz", "<>", 9674)
371: CHAR("sq", "[]", 9633)
372: CHAR("ps", "9|", 182)
373: CHAR("sc", "S", 167)
374: CHAR("lh", "<=", 9756)
375: CHAR("rh", "=>", 9758)
376: CHAR("at", "@", 64)
377: CHAR("sh", "#", 35)
378: CHAR("CR", "_|", 8629)
379: CHAR("OK", "\\/", 10003)
1.17 kristaps 380:
381: /* Legal symbols. */
1.31 kristaps 382: CHAR("co", "(C)", 169)
383: CHAR("rg", "(R)", 174)
384: CHAR("tm", "tm", 8482)
1.17 kristaps 385:
386: /* Punctuation. */
1.31 kristaps 387: CHAR(".", ".", 46)
388: CHAR("r!", "i", 161)
389: CHAR("r?", "c", 191)
390: CHAR("em", "--", 8212)
391: CHAR("en", "-", 8211)
392: CHAR("hy", "-", 8208)
393: CHAR("e", "\\", 92)
1.17 kristaps 394:
395: /* Units. */
1.31 kristaps 396: CHAR("de", "o", 176)
397: CHAR("%0", "%o", 8240)
398: CHAR("fm", "\'", 8242)
399: CHAR("sd", "\"", 8243)
400: CHAR("mc", "mu", 181)
1.19 kristaps 401:
402: CHAR_TBL_END
CVSweb