--- loncom/interface/entities.pm 2008/02/11 11:35:46 1.1 +++ loncom/interface/entities.pm 2008/02/19 12:09:02 1.2 @@ -53,6 +53,12 @@ use strict; # the original massive regular expression replacements originally by # A. Sakharuk in lonprintout.pm # +# I also want to acknowledge +# ISO Character entities and their LaTeX equivalents by +# Vidar Bronken Gundersen, and Rune Mathisen +# http://www.bitjungle.com/isoent-ref.pdf +# + # Note numerical entities are essentially unicode character codes. # my %entities = { @@ -499,6 +505,159 @@ my %entities = { 'zeta' => '\\ensuremath\{\\zeta\}', 951 => '\\ensuremath\{\\eta\}', 'eta' => '\\ensuremath\{\\eta\}', + 952 => '\\ensuremath\{\\theta\}', + 'theta' => '\\ensuremath\{\\theta\}', + 953 => '\\ensuremath\{\\iota\}', + 'iota' => '\\ensuremath\{\\iota\}', + 954 => '\\ensuremath\{\\kappa\}', + 'kappa' => '\\ensuremath\{\\kappa\}', + 955 => '\\ensuremath\{\\lambda\}', + 'lambda' => '\\ensuremath\{\\lambda\}', + 956 => '\\ensuremath\{\\mu\}', + 'mu' => '\\ensuremath\{\\mu\}', + 957 => '\\ensuremath\{\\nu\}', + 'nu' => '\\ensuremath\{\\nu\}', + 958 => '\\ensuremath\{\\xi\}', + 'xi' => '\\ensuremath\{\\xi\}', + 959 => '\\ensuremath\{o\}', + 'omicron'=> '\\ensuremath\{o\}', + 960 => '\\ensuremath\{\\pi\}', + 'pi' => '\\ensuremath\{\\pi\}', + 961 => '\\ensuremath\{\\rho\}', + 'rho' => '\\ensuremath\{\\rho\}', + 962 => '\\ensuremath\{\\varsigma\}', + 'sigmaf' => '\\ensuremath\{\\varsigma\}', + 963 => '\\ensuremath\{\\sigma\}', + 'sigma' => '\\ensuremath\{\\sigma\}', + 964 => '\\ensuremath\{\\tau\}', + 'tau' => '\\ensuremath\{\\tau\}', + 965 => '\\ensuremath\{\\upsilon\}', + 'upsilon'=> '\\ensuremath\{\\upsilon\}', + 966 => '\\ensuremath\{\\phi\}', + 'phi' => '\\ensuremath\{\\phi\}', + 967 => '\\ensuremath\{\\chi\}', + 'chi' => '\\ensuremath\{\\chi\}', + 968 => '\\ensuremath\{\\psi\}', + 'psi' => '\\ensuremath\{\\psi\}', + 969 => '\\ensuremath\{\\omega\}', + 'omega' => '\\ensuremath\{\\omega\}', + 977 => '\\ensuremath\{\\vartheta\}', + 'thetasym'=>'\\ensuremath\{\\vartheta\}', + 978 => '\\ensuremath\{\\varUpsilon\}', + 'upsih' => '\\ensuremath\{\\varUpsilon\}', + 982 => '\\ensuremath\{\\varpi\}', + 'piv' => '\\ensuremath\{\\varpi\}', + + + # The general punctuation set: + + 8194, => '\\hspace{.5em}', + 'enspc' => '\\hspace{.5em}', + 8195 => '\\hspace{1.0em}', + 'emspc' => '\\hspace{1.0em}', + 8201 => '\\hspace{0.167em}', + 'thinsp' => '\\hspace{0.167em}', + 8204 => '\{\}', + 'zwnj' => '\{\}', + 8205 => '', + 'zwj' => '', + 8206 => '', + 'lrm' => '', + 8207 => '', + 'rlm' => '', + 8211 => '--', + 'ndash' => '--', + 8212 => '---', + 'mdash' => '---', + 8216 => '`', + 'lsquo' => '`', + 8217 => "'", + 'rsquo' => "'", + 8218 => '\\quotesinglebase', + 'sbquo' => '\\quotesinglebase', + 8220 => '``', + 'ldquo' => '``', + 8221 => "''", + 'rdquo' => "''", + 8222 => '\\quotedblbase', + 'bdquo' => '\\quotedblbase', + 8224 => '\\dagger', + 'dagger' => '\\dagger', + '8225' => '\\ddag', + 'Dagger' => '\\ddag', + 8226 => '\\textbullet', + 'bull' => '\\textbullet', + 8230 => '\\textellipsis', + 'hellep' => '\\textellipsis', + 8240 => '\\textperthousand', + permil => '\\textperthousand', + 8242 => '\\textquotesingle', + 'prime' => '\\textquotesingle', + 8243 => '\\textquotedbl', + 'Prime' => '\\textquotedbl', + 8249 => '\\guilsingleleft', + 'lsaquo' => '\\guilsingleleft', + 8250 => '\\guilsingleright', + 'rsaquo' => '\\guilsingleright', + 8254 => '\\textasciimacron', + oline => '\\textasciimacron', + 8260 => '\\textfractionsolidus', + 'frasl' => '\\textfractionsolidus', + 8364 => '\\texteuro', + 'euro' => '\\texteuro', + + # Letter like symbols + + + 8472 => '\\ensuremath\{\\wp\}', + 'weierp' => '\\ensuremath\{\\wp\}', + 8465 => '\\ensuremath\{\\Im\}', + 'image' => '\\ensuremath\{\\Im\}', + 8476 => '\\ensuremath{\\Re\}', + 'real' => '\\ensuremath{\\Re\}', + 8482 => '\\texttrademark', + 'trade' => '\\texttrademark', + 8501 => '\\ensuremath{\\aleph\}', + 'alefsym'=> '\\ensuremath{\\aleph\}', + + # Arrows and then some (harpoons from Hon Kie). + + 8592 => '\\textleftarrow', + 'larr' => '\\textleftarrow', + 8593 => '\\textuparrow', + 'uarr' => '\\textuparrow', + 8594 => '\\textrightarrow', + 'rarr' => '\\textrightarrow', + 8595 => '\\textdownarrow', + 'darr' => '\\textdownarrow', + 8596 => '\\ensuremath\{\\leftrightarrow\}', + 'harr' => '\\ensuremath\{\\leftrightarrow\}', + 8598 => '\\ensuremath\{\\nwarrow\}', + 8599 => '\\ensuremath\{\\nearrow\}', + 8600 => '\\ensuremath\{\\searrow\}', + 8601 => '\\ensuremath\{\\swarrow\}', + 8605 => '\\ensuremath\{\\leadsto\}', + 8614 => '\\ensuremath\{\\mapsto\}', + 8617 => '\\ensuremath\{\\hookleftarrow\}', + 8618 => '\\ensuremath\{\\hookrightarrow\}', + 8629 => '\\ensuremath\{\\hookleftarrow\}', # not an exact match but best I know. + 'crarr' => '\\ensuremath\{\\hookleftarrow\}', # not an exact match but best I know. + 8636 => '\\ensuremath\{\\leftharpoonup\}', + 8637 => '\\ensuremath\{\\leftharpoondown\}', + 8640 => '\\ensuremath\{\\rightharpoonup\}', + 8641 => '\\ensuremath\{\\rightharpoondown\}', + 8652 => '\\ensuremath\{\\rightleftharpoons\}', + 8656 => '\\ensuremath\{\\Leftarrow\}', + 'lArr' => '\\ensuremath\{\\Leftarrow\}', + 8657 => '\\ensuremath\{\\Uparrow\}', + 'uArr' => '\\ensuremath\{\\Uparrow\}', + 8658 => '\\ensuremath\{\\Rightarrow\}', + 'rArr' => '\\ensuremath\{\\Rightarrow\}', + 8659 => '\\ensuremath\{\\Downarrow\}', + 'dArr' => '\\ensuremath\{\\Downarrow\}', + 8660 => '\\ensuremath\{\\Leftrightarrow\}', + # Mathematical operators. + };