/usr/local/CPAN/LaTeX-Encode/LaTeX/Encode/EncodingTable.pm
# LaTeX::Encode character encoding table
package LaTeX::Encode::EncodingTable;
use strict;
use warnings;
use vars qw(@EXPORT %latex_encoding $encoded_char_re);
use base 'Exporter';
@EXPORT = qw(%latex_encoding $encoded_char_re);
%latex_encoding = (
chr(0x23) => '\\#', # # - #
chr(0x24) => '\\$', # $ - $
chr(0x25) => '\\%', # % - %
chr(0x26) => '\\&', # & - &
chr(0x5c) => '\\textbackslash', # \ - \
chr(0x5e) => '\\^{ }', # ^ - ^
chr(0x5f) => '\\_', # _ - _
chr(0x7b) => '\\{', # { - {
chr(0x7d) => '\\}', # } - }
chr(0x7e) => '\\texttildelow', # ~ - ~
chr(0xa0) => '~', # -
chr(0xa1) => '\\textexclamdown', # ¡ - ¡
chr(0xa2) => '\\textcent', # ¢ - ¢
chr(0xa3) => '\\textsterling', # £ - £
chr(0xa4) => '\\textcurrency', # ¤ - ¤
chr(0xa5) => '\\textyen', # ¥ - ¥
chr(0xa6) => '\\textbrokenbar', # ¦ - ¦
chr(0xa7) => '\\textsection', # § - §
chr(0xa8) => '\\textasciidieresis', # ¨ - ¨
chr(0xa9) => '\\textcopyright', # © - ©
chr(0xaa) => '\\textordfeminine', # ª - ª
chr(0xab) => '\\guillemotleft', # « - «
chr(0xac) => '\\textlnot', # ¬ - ¬
chr(0xad) => '\\-', # - ­
chr(0xae) => '\\textregistered', # ® - ®
chr(0xaf) => '\\textasciimacron', # ¯ - ¯
chr(0xb0) => '\\textdegree', # ° - °
chr(0xb1) => '\\textpm', # ± - ±
chr(0xb2) => '\\texttwosuperior', # ² - ²
chr(0xb3) => '\\textthreesuperior', # ³ - ³
chr(0xb4) => '\\textasciiacute', # ´ - ´
chr(0xb5) => '\\textmu', # µ - µ
chr(0xb6) => '\\textparagraph', # ¶ - ¶
chr(0xb7) => '\\textperiodcentered', # · - ·
chr(0xb8) => '\\c{}', # ¸ - ¸
chr(0xb9) => '\\textonesuperior', # ¹ - ¹
chr(0xba) => '\\textordmasculine', # º - º
chr(0xbb) => '\\guillemotright', # » - »
chr(0xbc) => '\\textonequarter', # ¼ - ¼
chr(0xbd) => '\\textonehalf', # ½ - ½
chr(0xbe) => '\\textthreequarters', # ¾ - ¾
chr(0xbf) => '\\textquestiondown', # ¿ - ¿
chr(0xc0) => '\\`A', # À - À
chr(0xc1) => '\\\'A', # Á - Á
chr(0xc2) => '\\^A', # Â - Â
chr(0xc3) => '\\~A', # Ã - Ã
chr(0xc4) => '\\"A', # Ä - Ä
chr(0xc5) => '\\AA', # Å - Å
chr(0xc6) => '\\AE', # Æ - Æ
chr(0xc7) => '\\c{C}', # Ç - Ç
chr(0xc8) => '\\`E', # È - È
chr(0xc9) => '\\\'E', # É - É
chr(0xca) => '\\^E', # Ê - Ê
chr(0xcb) => '\\"E', # Ë - Ë
chr(0xcc) => '\\`I', # Ì - Ì
chr(0xcd) => '\\\'I', # Í - Í
chr(0xce) => '\\^I', # Î - Î
chr(0xcf) => '\\"I', # Ï - Ï
chr(0xd0) => '\\DH', # Ð - Ð
chr(0xd1) => '\\~N', # Ñ - Ñ
chr(0xd2) => '\\`O', # Ò - Ò
chr(0xd3) => '\\\'O', # Ó - Ó
chr(0xd4) => '\\^O', # Ô - Ô
chr(0xd5) => '\\~O', # Õ - Õ
chr(0xd6) => '\\"O', # Ö - Ö
chr(0xd7) => '\\texttimes', # × - ×
chr(0xd8) => '\\O', # Ø - Ø
chr(0xd9) => '\\`U', # Ù - Ù
chr(0xda) => '\\\'U', # Ú - Ú
chr(0xdb) => '\\^U', # Û - Û
chr(0xdc) => '\\"U', # Ü - Ü
chr(0xdd) => '\\\'Y', # Ý - Ý
chr(0xde) => '\\TH', # Þ - Þ
chr(0xdf) => '\\ss', # ß - ß
chr(0xe0) => '\\`a', # à - à
chr(0xe1) => '\\\'a', # á - á
chr(0xe2) => '\\^a', # â - â
chr(0xe3) => '\\~a', # ã - ã
chr(0xe4) => '\\"a', # ä - ä
chr(0xe5) => '\\aa', # å - å
chr(0xe6) => '\\ae', # æ - æ
chr(0xe7) => '\\c{c}', # ç - ç
chr(0xe8) => '\\`e', # è - è
chr(0xe9) => '\\\'e', # é - é
chr(0xea) => '\\^e', # ê - ê
chr(0xeb) => '\\"e', # ë - ë
chr(0xec) => '\\`i', # ì - ì
chr(0xed) => '\\\'i', # í - í
chr(0xee) => '\\^i', # î - î
chr(0xef) => '\\"i', # ï - ï
chr(0xf0) => '\\dh', # ð - ð
chr(0xf1) => '\\~n', # ñ - ñ
chr(0xf2) => '\\`o', # ò - ò
chr(0xf3) => '\\\'o', # ó - ó
chr(0xf4) => '\\^o', # ô - ô
chr(0xf5) => '\\~o', # õ - õ
chr(0xf6) => '\\"o', # ö - ö
chr(0xf7) => '\\textdiv', # ÷ - ÷
chr(0xf8) => '\\o', # ø - ø
chr(0xf9) => '\\`u', # ù - ù
chr(0xfa) => '\\\'u', # ú - ú
chr(0xfb) => '\\^u', # û - û
chr(0xfc) => '\\"u', # ü - ü
chr(0xfd) => '\\\'y', # ý - ý
chr(0xfe) => '\\th', # þ - þ
chr(0xff) => '\\"y', # ÿ - ÿ
chr(0x152) => '\\OE', # - Œ
chr(0x153) => '\\oe', # - œ
chr(0x160) => '\\v{S}', # - Š
chr(0x161) => '\\v{s}', # - š
chr(0x178) => '\\"Y', # - Ÿ
chr(0x192) => '\\textflorin', # - ƒ
chr(0x2c6) => '\\textasciicircum', # - ˆ
chr(0x2dc) => '\\textasciitilde', # - ˜
chr(0x391) => '$\\mathrm{A}$', # - Α
chr(0x392) => '$\\mathrm{B}$', # - Β
chr(0x393) => '$\\Gamma$', # - Γ
chr(0x394) => '$\\Delta$', # - Δ
chr(0x395) => '$\\mathrm{E}$', # - Ε
chr(0x396) => '$\\mathrm{Z}$', # - Ζ
chr(0x397) => '$\\mathrm{H}$', # - Η
chr(0x398) => '$\\Theta$', # - Θ
chr(0x399) => '$\\mathrm{I}$', # - Ι
chr(0x39a) => '$\\mathrm{K}$', # - Κ
chr(0x39b) => '$\\Lambda$', # - Λ
chr(0x39c) => '$\\mathrm{M}$', # - Μ
chr(0x39d) => '$\\mathrm{N}$', # - Ν
chr(0x39e) => '$\\Xi$', # - Ξ
chr(0x39f) => '$\\mathrm{O}$', # - Ο
chr(0x3a0) => '$\\Pi$', # - Π
chr(0x3a1) => '$\\mathrm{R}$', # - Ρ
chr(0x3a3) => '$\\Sigma$', # - Σ
chr(0x3a4) => '$\\mathrm{T}$', # - Τ
chr(0x3a5) => '$\\Upsilon$', # - Υ
chr(0x3a6) => '$\\Phi$', # - Φ
chr(0x3a7) => '$\\mathrm{X}$', # - Χ
chr(0x3a8) => '$\\Psi$', # - Ψ
chr(0x3a9) => '$\\Omega$', # - Ω
chr(0x3b1) => '$\\alpha$', # - α
chr(0x3b2) => '$\\beta$', # - β
chr(0x3b3) => '$\\gamma$', # - γ
chr(0x3b4) => '$\\delta$', # - δ
chr(0x3b5) => '$\\epsilon$', # - ε
chr(0x3b6) => '$\\zeta$', # - ζ
chr(0x3b7) => '$\\eta$', # - η
chr(0x3b8) => '$\\theta$', # - θ
chr(0x3b9) => '$\\iota$', # - ι
chr(0x3ba) => '$\\kappa$', # - κ
chr(0x3bb) => '$\\lambda$', # - λ
chr(0x3bc) => '$\\mu$', # - μ
chr(0x3bd) => '$\\nu$', # - ν
chr(0x3be) => '$\\xi$', # - ξ
chr(0x3bf) => '$o$', # - ο
chr(0x3c0) => '$\\pi$', # - π
chr(0x3c1) => '$\\rho$', # - ρ
chr(0x3c3) => '$\\sigma$', # - σ
chr(0x3c4) => '$\\tau$', # - τ
chr(0x3c5) => '$\\upsilon$', # - υ
chr(0x3c6) => '$\\phi$', # - φ
chr(0x3c7) => '$\\chi$', # - χ
chr(0x3c8) => '$\\psi$', # - ψ
chr(0x3c9) => '$\\omega$', # - ω
chr(0x2002) => '\\phantom{n}', # -  
chr(0x2003) => '\\hspace{1em}', # -  
chr(0x2009) => '\\,', # -  
chr(0x200c) => '<undef>', # - ‌
chr(0x2013) => '--', # - –
chr(0x2014) => '---', # - —
chr(0x2018) => '\\textquoteleft', # - ‘
chr(0x2019) => '\\textquoteright', # - ’
chr(0x201a) => '\\quotesinglbase', # - ‚
chr(0x201c) => '\\textquotedblleft', # - “
chr(0x201d) => '\\textquotedblright', # - ”
chr(0x201e) => '\\quotedblbase', # - „
chr(0x2020) => '\\textdagger', # - †
chr(0x2021) => '\\textdaggerdbl', # - ‡
chr(0x2022) => '\\textbullet', # - •
chr(0x2026) => '\\textellipsis', # - …
chr(0x2030) => '\\textperthousand', # - ‰
chr(0x2032) => '\\textquotesingle', # - ′
chr(0x2033) => '\\textquotedbl', # - ″
chr(0x2039) => '\\guilsinglleft', # - ‹
chr(0x203a) => '\\guilsinglright', # - ›
chr(0x203e) => '\\textasciimacron', # - ‾
chr(0x2044) => '\\textfractionsolidus', # - ⁄
chr(0x20ac) => '\\texteuro', # - €
chr(0x2111) => '$\\Re$', # - ℑ
chr(0x2118) => '$\\wp$', # - ℘
chr(0x211c) => '$\\Im$', # - ℜ
chr(0x2122) => '\\texttrademark', # - ™
chr(0x2190) => '\\textleftarrow', # - ←
chr(0x2191) => '\\textuparrow', # - ↑
chr(0x2192) => '\\textrightarrow', # - →
chr(0x2193) => '\\textdownarrow', # - ↓
chr(0x2194) => '$\\leftrightarrow$', # - ↔
chr(0x21d0) => '$\\Leftarrow$', # - ⇐
chr(0x21d1) => '$\\Uparrow$', # - ⇑
chr(0x21d2) => '$\\Rightarrow$', # - ⇒
chr(0x21d3) => '$\\Downarrow$', # - ⇓
chr(0x21d4) => '$\\Leftrightarrow$', # - ⇔
chr(0x2200) => '$\\forall$', # - ∀
chr(0x2202) => '$\\partial$', # - ∂
chr(0x2203) => '$\\exists$', # - ∃
chr(0x2205) => '$\\emptyset$', # - ∅
chr(0x2207) => '$\\nabla$', # - ∇
chr(0x2208) => '$\\in$', # - ∈
chr(0x2209) => '$\\notin$', # - ∉
chr(0x220b) => '$\\ni$', # - ∋
chr(0x220f) => '$\\prod$', # - ∏
chr(0x2211) => '$\\sum$', # - ∑
chr(0x2212) => '$-$', # - −
chr(0x2217) => '$\\ast$', # - ∗
chr(0x221a) => '$\\surd$', # - √
chr(0x221d) => '$\\propto$', # - ∝
chr(0x221e) => '$\\infty$', # - ∞
chr(0x2220) => '$\\angle$', # - ∠
chr(0x2227) => '$\\wedge$', # - ∧
chr(0x2228) => '$\\vee$', # - ∨
chr(0x2229) => '$\\cap$', # - ∩
chr(0x222a) => '$\\cup$', # - ∪
chr(0x222b) => '$\\int$', # - ∫
# chr(0x2234) => '$\\therefore$', # - ∴
chr(0x223c) => '$\\sim$', # - ∼
chr(0x2245) => '$\\cong$', # - ≅
chr(0x2248) => '$\\asymp$', # - ≈
chr(0x2260) => '$\\neq$', # - ≠
chr(0x2261) => '$\\equiv$', # - ≡
chr(0x2264) => '$\\leq$', # - ≤
chr(0x2265) => '$\\geq$', # - ≥
chr(0x2282) => '$\\subset$', # - ⊂
chr(0x2283) => '$\\supset$', # - ⊃
chr(0x2284) => '$\\not\\subset$', # - ⊄
chr(0x2286) => '$\\subseteq$', # - ⊆
chr(0x2287) => '$\\supseteq$', # - ⊇
chr(0x2295) => '$\\oplus$', # - ⊕
chr(0x2297) => '$\\otimes$', # - ⊗
chr(0x22a5) => '$\\perp$', # - ⊥
chr(0x22c5) => '$\\cdot$', # - ⋅
chr(0x2308) => '$\\lceil$', # - ⌈
chr(0x2309) => '$\\rceil$', # - ⌉
chr(0x230a) => '$\\lfloor$', # - ⌊
chr(0x230b) => '$\\rfloor$', # - ⌋
chr(0x2329) => '$\\langle$', # - ⟨
chr(0x232a) => '$\\rangle$', # - ⟩
# chr(0x25ca) => '$\\lozenge$', # - ◊
chr(0x2660) => '$\\spadesuit$', # - ♠
chr(0x2663) => '$\\clubsuit$', # - ♣
chr(0x2665) => '$\\heartsuit$', # - ♥
chr(0x2666) => '$\\diamondsuit$', # - ♦
);
$encoded_char_re = join('', sort keys %latex_encoding);
$encoded_char_re =~ s/\\/\\\\/;
$encoded_char_re = qr{ [$encoded_char_re] }x;
1;