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