--- loncom/interface/entities.pm 2008/11/17 20:24:25 1.15 +++ loncom/interface/entities.pm 2008/11/20 13:04:24 1.16 @@ -1,7 +1,7 @@ # The LearningOnline Network # entity -> tex. # -# +# entities.pm,v 1.15 2008/11/20 08:00:00 raeburn # # Copyright Michigan State University Board of Trustees # @@ -129,39 +129,101 @@ Returns =back -=head1 TABLES ASCII code page - =cut package Apache::entities; use strict; -package Apache::entities; - -my %entities = ( - =pod +=head1 TABLES ASCII code page + =over =item (7-13) - # Translation to empty strings: + Translation to empty strings + +=item (32-126) + + Translations to simple characters + +=item (130-140) + + Controls and Latin-1 supplement. Note that some entities that have + visible effect are not printing unicode characters. Specifically + ‚-  + +=item (145-156) + + There's a gap here in my entity table + +=item (159-255) + + Another short gap + +=item (295) + + hbar entity number comes from the unicode character: + see e.g. http://www.unicode.org/charts/PDF/U0100.pdf + ISO also documents a 'planck' entity. + +=item (338-376) + + Latin extended-A HTML 4.01 entities + +=item (402) + + Latin extended B HTML 4.01 entities + +=item (710 & 732) + + Spacing modifier letters + +=item (913-937) + + Greek uppercase (skipss 930) + +=item (945-982) + + Greek lowercase + +=item (8194-8364) + + The general punctuation set + +=item (8472-8501) + + Letter like symbols + +=item (8592-8669) + + Arrows and then some (harpoons from Hon Kie). + +=item (8704-8734) + + Mathematical operators. + +=item (8735-9830) + + The items below require the isoent latex package which I can't find at least for FC5. + Temporarily commented out. + +=back + =cut +my %entities = ( + + # Translation to empty strings: + 7 => "", 9 => "", 10 => "", 13 => "", -=pod - -=item (32-126) - # Translations to simple characters: -=cut - 32 => " ", 33 => "!", 34 => '"', @@ -262,15 +324,7 @@ my %entities = ( 125 => '\}', 126 => '\~', -=pod - -=item (130-140) - - Controls and Latin-1 supplement. Note that some entities that have - visible effect are not printing unicode characters. Specifically - ‚-  - -=cut + # Controls and Latin-1 supplement. 130 => ',', 131 => '\ensuremath{f}', @@ -284,13 +338,7 @@ my %entities = ( 139 => '\ensuremath{<}', 140 => '{\OE}', -=pod - -=item (145-156) - - There's a gap here in my entity table - -=cut + # There's a gap here in my entity table 145 => '`', 146 => '\'', @@ -305,13 +353,7 @@ my %entities = ( 155 => '\ensuremath{>}', 156 => '\oe ', -=pod - -=item (159-255) - - Another short gap: - -=cut + # Another short gap: 159 => '\"Y', 160 => '~', @@ -502,26 +544,12 @@ my %entities = ( 'yuml' => '\\"{y}', -=pod - -=item (295) - - hbar entity number comes from the unicode charater: - see e.g. http://www.unicode.org/charts/PDF/U0100.pdf - ISO also documents a 'planck' entity. - -=cut + # hbar entity number comes from the unicode character: 295 => '\ensuremath{\hbar}', 'planck' => '\ensuremath{\hbar}', -=pod - -=item (338-376) - - Latin extended-A HTML 4.01 entities: - -=cut + # Latin extended-A HTML 4.01 entities: 338 => '\OE', 'OElig' => '\OE', @@ -534,37 +562,19 @@ my %entities = ( 376 => '\\"{Y}', 'Yuml' => '\\"{Y}', -=pod - -=item (402) - - Latin extended B HTML 4.01 entities - -=cut + # Latin extended B HTML 4.01 entities 402 => '\ensuremath{f}', 'fnof' => '\ensuremath{f}', -=pod - -=item (710 & 732) - - Spacing modifier letters: - -=cut + # Spacing modifier letters: 710 => '\^{}', 'circ' => '\^{}', 732 => '\~{}', 'tilde' => '\~{}', -=pod - -=item (913-929) - - Greek uppercase: - -=cut + # Greek uppercase: 913 => '\ensuremath{\mathrm{A}}', 'Alpha' => '\ensuremath{\mathrm{A}}', @@ -600,16 +610,6 @@ my %entities = ( 'Pi' => '\ensuremath{\Pi}', 929 => '\ensuremath{\mathrm{P}}', 'Rho' => '\ensuremath{\mathrm{P}}', - - -=pod - -=item (931-937) - - Skips 930 - -=cut - 931 => '\ensuremath{\Sigma}', 'Sigma' => '\ensuremath{\Sigma}', 932 => '\ensuremath{\mathrm{T}}', @@ -625,13 +625,7 @@ my %entities = ( 937 => '\ensuremath{\Omega}', 'Omega' => '\ensuremath{\Omega}', -=pod - -=item (945-982) - - Greek lowercase: - -=cut + # Greek lowercase: 945 => '\ensuremath{\alpha}', 'alpha' => '\ensuremath{\alpha}', @@ -690,13 +684,7 @@ my %entities = ( 982 => '\ensuremath{\varpi}', 'piv' => '\ensuremath{\varpi}', -=pod - -=item (8194-8364) - - The general punctuation set: - -=cut + # The general punctuation set: 8194, => '\hspace{.5em}', 'enspc' => '\hspace{.5em}', @@ -753,14 +741,7 @@ my %entities = ( 8364 => '\texteuro', 'euro' => '\texteuro', -=pod - -=item (8472-8501) - - Letter like symbols - -=cut - + # Letter like symbols 8472 => '\ensuremath{\wp}', 'weierp' => '\ensuremath{\wp}', @@ -773,13 +754,7 @@ my %entities = ( 8501 => '\ensuremath{\aleph}', 'alefsym'=> '\ensuremath{\aleph}', -=pod - -=item (8592-8669) - - Arrows and then some (harpoons from Hon Kie). - -=cut + # Arrows and then some (harpoons from Hon Kie). 8592 => '\textleftarrow', 'larr' => '\textleftarrow', @@ -825,14 +800,7 @@ my %entities = ( 8669 => '\ensuremath{\rightsquigarrow}', 'rarrw' => '\ensuremath{\rightsquigarrow}', -=pod - -=item (8704-8734) - - Mathematical operators. - -=cut - + # Mathematical operators. 'forall' => '\ensuremath{\forall}', 8704 => '\ensuremath{\forall}', @@ -880,20 +848,12 @@ my %entities = ( 'infin' => '\ensuremath{\infty}', 8734 => '\ensuremath{\infty}', - -=pod - -=item (8735-9830) - - - The items below require the isoent latex package which I can't find at least for FC5. - Temporarily commented out. + # The items below require the isoent latex package which I can't find at least for FC5. + # Temporarily commented out. 'ang90' => '\ensuremath{\sqangle}', 8735 => '\ensuremath{\sqangle}', -=cut - 'ang' => '\ensuremath{\angle}', 8736 => '\ensuremath{\angle}', 'angmsd' => '\ensuremath{\measuredangle}', @@ -1104,7 +1064,9 @@ my %entities = ( =pod -=item * +=head1 UNICODE TABLE + +=over There are some named entities that don't have a good latex equivalent, these are converted to utf-8 via this table