version 1.37, 2011/04/20 22:50:22 |
version 1.41, 2011/09/18 14:14:15 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
|
|
*/ |
*/ |
|
|
/* |
/* |
* The ASCII translation tables. STRING corresponds to predefined |
* The ASCII translation tables. |
* strings (cf. mdoc_samples.7 and tmac/mdoc/doc-nroff). CHAR |
|
* corresponds to special characters (cf. groff_char.7). BOTH contains |
|
* sequences that are equivalent in both STRING and CHAR. |
|
* |
* |
* Either way, the left-hand side corresponds to the input sequence (\x, |
* The left-hand side corresponds to the input sequence (\x, \(xx, \*(xx |
* \(xx, \*(xx and so on) whose length is listed second element. The |
* and so on) whose length is listed second element. The right-hand |
* right-hand side is what's produced by the front-end, with the fourth |
* side is what's produced by the front-end, with the fourth element |
* element being its length. |
* being its length. |
* |
* |
* XXX - C-escape strings! |
* XXX - C-escape strings! |
* XXX - update LINES_MAX if adding more! |
* XXX - update LINES_MAX if adding more! |
Line 36 static const char ascii_nbrsp[2] = { ASCII_NBRSP, '\0' |
|
Line 33 static const char ascii_nbrsp[2] = { ASCII_NBRSP, '\0' |
|
CHAR_TBL_START |
CHAR_TBL_START |
|
|
/* Spacing. */ |
/* Spacing. */ |
CHAR("c", "", 0) |
CHAR("c", "", 8203) |
CHAR("0", " ", 8194) |
CHAR("0", " ", 8194) |
CHAR(" ", ascii_nbrsp, 160) |
CHAR(" ", ascii_nbrsp, 160) |
CHAR("~", ascii_nbrsp, 160) |
CHAR("~", ascii_nbrsp, 160) |
CHAR("%", "", 0) |
CHAR("%", "", 8203) |
CHAR("&", "", 0) |
CHAR("&", "", 8203) |
CHAR("^", "", 0) |
CHAR("^", "", 8203) |
CHAR("|", "", 0) |
CHAR("|", "", 8203) |
CHAR("}", "", 0) |
CHAR("}", "", 8203) |
|
|
/* Accents. */ |
/* Accents. */ |
CHAR("a\"", "\"", 779) |
CHAR("a\"", "\"", 779) |
CHAR("a-", "-", 175) |
CHAR("a-", "-", 175) |
CHAR("a.", ".", 729) |
CHAR("a.", ".", 729) |
CHAR("a^", "^", 770) |
CHAR("a^", "^", 770) |
BOTH("\'", "\'", 769) |
CHAR("\'", "\'", 769) |
BOTH("aa", "\'", 769) |
CHAR("aa", "\'", 769) |
BOTH("ga", "`", 768) |
CHAR("ga", "`", 768) |
BOTH("`", "`", 768) |
CHAR("`", "`", 768) |
CHAR("ab", "`", 774) |
CHAR("ab", "`", 774) |
CHAR("ac", ",", 807) |
CHAR("ac", ",", 807) |
CHAR("ad", "\"", 776) |
CHAR("ad", "\"", 776) |
Line 68 CHAR("ti", "~", 126) |
|
Line 65 CHAR("ti", "~", 126) |
|
/* Quotes. */ |
/* Quotes. */ |
CHAR("Bq", ",,", 8222) |
CHAR("Bq", ",,", 8222) |
CHAR("bq", ",", 8218) |
CHAR("bq", ",", 8218) |
BOTH("lq", "``", 8220) |
CHAR("lq", "``", 8220) |
BOTH("rq", "\'\'", 8221) |
CHAR("rq", "\'\'", 8221) |
CHAR("oq", "`", 8216) |
CHAR("oq", "`", 8216) |
CHAR("cq", "\'", 8217) |
CHAR("cq", "\'", 8217) |
CHAR("aq", "\'", 39) |
CHAR("aq", "\'", 39) |
Line 232 CHAR("<-", "<-", 8592) |
|
Line 229 CHAR("<-", "<-", 8592) |
|
CHAR("->", "->", 8594) |
CHAR("->", "->", 8594) |
CHAR("<>", "<>", 8596) |
CHAR("<>", "<>", 8596) |
CHAR("da", "v", 8595) |
CHAR("da", "v", 8595) |
BOTH("ua", "^", 8593) |
CHAR("ua", "^", 8593) |
BOTH("va", "^v", 8597) |
CHAR("va", "^v", 8597) |
CHAR("lA", "<=", 8656) |
CHAR("lA", "<=", 8656) |
CHAR("rA", "=>", 8658) |
CHAR("rA", "=>", 8658) |
CHAR("hA", "<=>", 8660) |
CHAR("hA", "<=>", 8660) |
Line 270 CHAR("di", "-:-", 247) |
|
Line 267 CHAR("di", "-:-", 247) |
|
CHAR("tdi", "-:-", 247) |
CHAR("tdi", "-:-", 247) |
CHAR("f/", "/", 8260) |
CHAR("f/", "/", 8260) |
CHAR("**", "*", 8727) |
CHAR("**", "*", 8727) |
BOTH("<=", "<=", 8804) |
CHAR("<=", "<=", 8804) |
BOTH(">=", ">=", 8805) |
CHAR(">=", ">=", 8805) |
CHAR("<<", "<<", 8810) |
CHAR("<<", "<<", 8810) |
CHAR(">>", ">>", 8811) |
CHAR(">>", ">>", 8811) |
CHAR("eq", "=", 61) |
CHAR("eq", "=", 61) |
Line 315 CHAR("Im", "I", 8465) |
|
Line 312 CHAR("Im", "I", 8465) |
|
CHAR("Re", "R", 8476) |
CHAR("Re", "R", 8476) |
CHAR("pd", "a", 8706) |
CHAR("pd", "a", 8706) |
CHAR("-h", "/h", 8463) |
CHAR("-h", "/h", 8463) |
|
CHAR("12", "1/2", 189) |
|
CHAR("14", "1/4", 188) |
|
CHAR("34", "3/4", 190) |
|
|
/* Ligatures. */ |
/* Ligatures. */ |
CHAR("ff", "ff", 64256) |
CHAR("ff", "ff", 64256) |
Line 347 CHAR("Ye", "Y", 165) |
|
Line 347 CHAR("Ye", "Y", 165) |
|
CHAR("Po", "L", 163) |
CHAR("Po", "L", 163) |
CHAR("Cs", "x", 164) |
CHAR("Cs", "x", 164) |
CHAR("Fn", "f", 402) |
CHAR("Fn", "f", 402) |
|
|
/* Old style. */ |
|
STRING("Am", "&", 38) |
|
STRING("Ba", "|", 124) |
|
STRING("Ge", ">=", 8805) |
|
STRING("Gt", ">", 62) |
|
STRING("If", "infinity", 0) |
|
STRING("Le", "<=", 8804) |
|
STRING("Lq", "``", 8220) |
|
STRING("Lt", "<", 60) |
|
STRING("Na", "NaN", 0) |
|
STRING("Ne", "!=", 8800) |
|
STRING("Pi", "pi", 960) |
|
STRING("Pm", "+-", 177) |
|
STRING("Rq", "\'\'", 8221) |
|
STRING("left-bracket", "[", 91) |
|
STRING("left-parenthesis", "(", 40) |
|
STRING("left-singlequote", "`", 8216) |
|
STRING("lp", "(", 40) |
|
STRING("q", "\"", 34) |
|
STRING("quote-left", "`", 8216) |
|
STRING("quote-right", "\'", 8217) |
|
STRING("R", "(R)", 174) |
|
STRING("right-bracket", "]", 93) |
|
STRING("right-parenthesis", ")", 41) |
|
STRING("right-singlequote", "\'", 8217) |
|
STRING("rp", ")", 41) |
|
STRING("Tm", "(Tm)", 8482) |
|
STRING("Px", "POSIX", 0) |
|
STRING("Ai", "ANSI", 0) |
|
|
|
/* Lines. */ |
/* Lines. */ |
CHAR("ba", "|", 124) |
CHAR("ba", "|", 124) |