--- loncom/interface/entities.pm 2008/02/19 12:09:02 1.2 +++ loncom/interface/entities.pm 2008/04/01 10:45:44 1.4 @@ -656,8 +656,211 @@ my %entities = { 8659 => '\\ensuremath\{\\Downarrow\}', 'dArr' => '\\ensuremath\{\\Downarrow\}', 8660 => '\\ensuremath\{\\Leftrightarrow\}', + 'vArr' => '\\ensuremath\{\\Updownarrow\}', + 8661 => '\\ensuremath\{\\Updownarrow\}', + 'lAarr' => '\\ensuremath\{\\Lleftarrow\}', + 8666 => '\\ensuremath\{\\Lleftarrow\}', + 'rAarr' => '\\ensuremath\{\\Rrightarrow\}', + 8667 => '\\ensuremath\{\\Rrightarrow\}', + 'rarrw' => '\\ensuremath\{\\rightsquigarrow\}', + 8669 => '\\ensuremath\{\\rightsquigarrow\}', + # Mathematical operators. + 'forall' => '\\ensuremath\{\\forall\}', + 8704 => '\\ensuremath\{\\forall\}', + 'comp' => '\\ensuremath\{\\complement\}', + 8705 => '\\ensuremath\{\\complement\}', + 'part' => '\\ensuremath\{\\partial\}', + 8706 => '\\ensuremath\{\\partial\}', + 'exist' => '\\ensuremath\{\\exists\}', + 8707 => '\\ensuremath\{\\exists\}', + 'nexist' => '\\ensuremath\{\\nexists\}', + 8708 => '\\ensuremath\{\\nexists\}', + 'empty' => '\\ensuremath\{\\emptysset\}', + 8709 => '\\ensuremath\{\\emptysset\}', + 8710 => '\\ensuremath\{\\Delta\}', + 'nabla' => '\\ensuremath\{\\nabla\}', + 8711 => '\\ensuremath\{\\nabla\}', + 'isin' => '\\ensuremath\{\\in\}', + 8712 => '\\ensuremath\{\\in\}', + 'notin' => '\\ensuremath\{\\notin\}', + 8713 => '\\ensuremath\{\\notin\}', + ni => '\\ensuremath\{\\ni\}', + 8715 => '\\ensuremath\{\\ni\}', + 8716 => '\\ensuremath\{\\not\\ni\}', + 'prod' => '\\ensuremath\{\\prod\}', + 8719 => '\\ensuremath\{\\prod\}', + 8720 => '\\ensuremath\{\\coprod\}', + 'sum' => '\\ensuremath\{\\sum\}', + 8721 => '\\ensuremath\{\\sum\}', + 'minus' => '\\ensuremath\{-\}', + 8722 => '\\ensuremath\{-\}', + 8723 => '\\ensuremath\{\\mp\}', + 8724 => '\\ensuremath\{\\dotplus\}', + 8725 => '\\ensuremath\{\\diagup\}', + 8726 => '\\ensuremath\{\\smallsetminus\}', + 'lowast' => '\\ensuremath\{*\}', + 8727 => '\\ensuremath\{*\}', + 8728 => '\\ensuremath\{\\circ\}', + 8729 => '\\ensuremath\{\\bullet\}', + 'radic' => '\\ensuremath\{\\surd\}', + 8730 => '\\ensuremath\{\\surd\}', + 8731 => '\\ensuremath\{\\sqrt[3]\{\}\}', + 8732 => '\\ensuremath\{\\sqrt[4]\{\}\}', + 'prop' => '\\ensuremath\{\\propto\}', + 8733 => '\\ensuremath\{\\propto\}', + 'infin' => '\\ensuremath\{\\infty\}', + 8734 => '\\ensuremath\{\\infty\}', + 'ang90' => '\\ensuremath\{\\sqangle\}', + 8735 => '\\ensuremath\{\\sqangle\}', + 'ang' => '\\ensuremath\{\\angle\}', + 8736 => '\\ensuremath\{\\angle\}', + 'angmsd' => '\\ensuremath\{\\measuredangle\}', + 8737 => '\\ensuremath\{\\measuredangle\}', + 'angsph' => '\\ensuremath\{\\sphiericalangle\}', + 8738 => '\\ensuremath\{\\sphiericalangle\}', + 8739 => '\\ensuremath\{\\vert\}', + 8740 => '\\ensuremath\{\\Vert\}', + 'and' => '\\ensuremath\{\\land\}', + 8743 => '\\ensuremath\{\\land\}', + 'or' => '\\ensuremath\{\\lor\}', + 8744 => '\\ensuremath\{\\lor\}', + 'cap' => '\\ensuremath\{\\cap\}', + 8745 => '\\ensuremath\{\\cap\}', + 'cup' => '\\ensuremath\{\\cup\}', + 8746 => '\\ensuremath\{\\cup\}', + 'int' => '\\ensuremath\{\\int\}', + 8747 => '\\ensuremath\{\\int\}', + 'conint' => '\\ensuremath\{\\oint\}', + 8750 => '\\ensuremath\{\\oint\}', + 'there4' => '\\ensuremath\{\\therefore\}', + 8756 => '\\ensuremath\{\\therefore\}', + 'becaus' => '\\ensuremath\{\\because\}', + 8757 => '\\ensuremath\{\\because\}', + 8758 => '\\ensuremath\{:\}', + 8759 => '\\ensuremath\{::\}', + 'sim' => '\\ensuremath\{\\sim\}', + 8764 => '\\ensuremath\{\\sim\}', + 8765 => '\\ensuremath\{\\backsim\}', + 'wreath' => '\\ensuremath\{\\wr\}', + 8768 => '\\ensuremath\{\\wr\}', + 'nsim' => '\\ensuremath\{\\not\sim\}', + 8769 => '\\ensuremath\{\\not\sim\}', +# 'asymp' => '\\ensuremath\{\\asymp\}', ≈ is actually a different glyph. + 8771 => '\\ensuremath\{\\asymp\}', + 8772 => '\\ensuremath\{\\not\\asymp\}', + 'cong' => '\\ensuremath\{\\cong\}', + 8773 => '\\ensuremath\{\\cong\}', + 8775 => '\\ensuremath\{\\ncong\}', + 8778 => '\\ensuremath\{\\approxeq\}', + 8784 => '\\ensuremath\{\\doteq\}', + 8785 => '\\ensuremath\{\\doteqdot\}', + 8786 => '\\ensuremath\{\\fallingdotseq\}', + 8787 => '\\ensuremath\{\\risingdotseq\}', + 8788 => '\\ensuremath\{:=\}', + 8789 => '\\ensuremath\{=:\}', + 8790 => '\\ensuremath\{\\eqcirc\}', + 8791 => '\\ensuremath\{\\circeq\}', + 'wedgeq' => '\\ensuremath\{\\stackrel\{\\wedge\}\{=\}\}', + 8792 => '\\ensuremath\{\\stackrel\{\\wedge\}\{=\}\}', + 8794 => '\\ensuremath\{\\stackrel\{\\vee\}\{=\}\}', + 8795 => '\\ensuremath\{\\stackrel\{\\star}\{=\}\}', + 8796 => '\\ensuremath\{\\triangleeq\}', + 8797 => '\\ensuremath\{\\stackrel\{def\}\{=\}\}', + 8798 => '\\ensuremath\{\\stackrel\{m\}\{=\}\}', + 8799 => '\\ensuremath\{\\stackrel\{?\}\{=\}\}', + 'ne' => '\\ensuremath\{\\neq\}', + 8800 => '\\ensuremath\{\\neq\}', + 'equiv' => '\\ensuremath\{\\equiv\}', + 8801 => '\\ensuremath\{\\equiv\}', + 8802 => '\\ensuremath\{\\not\\equiv\}', + 'le' => '\\ensuremath\{\\leq\}', + 8804 => '\\ensuremath\{\\leq\}', + 'ge' => '\\ensuremath\{\\geq\}', + 8805 => '\\ensuremath\{\\geq\}', + 8806 => '\\ensuremath\{\\leqq\}', + 8807 => '\\ensuremath\{\\geqq\}', + 8810 => '\\ensuremath\{\\ll\}', + 8811 => '\\ensuremath\{\\gg\}', + 'twixt' => '\\ensuremath\{\\between\}', + 8812 => '\\ensuremath\{\\between\}', + 8813 => '\\ensuremath\{\\not\\asymp\}', + 8814 => '\\ensuremath\{\\not<\}', + 8815 => '\\ensuremath\{\\not>\}', + 8816 => '\\ensuremath\{\\not\\leqslant\}', + 8817 => '\\ensuremath\{\\not\\geqslant\}', + 8818 => '\\ensuremath\{\\lessim\}', + 8819 => '\\ensuremath\{\\gtrsim\}', + 8820 => '\\ensuremath\{\\stackrel\{<\}\{>\}\}', + 8821 => '\\ensuremath\{\\stackrel\{>\}\{<\}\}', + 8826 => '\\ensuremath\{\\prec\}', + 8827 => '\\ensuremath\{\\succ\}', + 8828 => '\\ensuremath\{\\preceq\}', + 8829 => '\\ensuremath\{\\succeq\}', + 8830 => '\\ensuremath\{\\not\\prec\}', + 8831 => '\\ensuremath\{\\not\\succ\}', + 'sub' => '\\ensuremath\{\\subset\}', + 8834 => '\\ensuremath\{\\subset\}', + 'sup' => '\\ensuremath\{\\supset\}', + 8835 => '\\ensuremath\{\\supset\}', + 'nsub' => '\\ensuremath\{\\not\\subset\}', + 8836 => '\\ensuremath\{\\not\\subset\}', + 8837 => '\\ensuremath\{\\not\\supset\}', + 'sube' => '\\ensuremath\{\\subseteq\}', + 8838 => '\\ensuremath\{\\subseteq\}', + 'supe' => '\\ensuermath\{\\supseteq\}', + 8839 => '\\ensuermath\{\\supseteq\}', + 8840 => '\\ensuremath\{\\nsubseteq\}', + 8841 => '\\ensuremath\{\\nsupseteq\}', + 8842 => '\\ensuremath\{\\subsetneq\}', + 8843 => '\\ensuremath\{\\supsetneq\}', + 8847 => '\\ensuremath\{\\sqsubset\}', + 8848 => '\\ensuremath\{\\sqsupset\}', + 8849 => '\\ensuremath\{\\sqsubseteq\}', + 8850 => '\\ensuremath\{\\sqsupseteq\}', + 8851 => '\\ensuremath\{\\sqcap\}', + 8852 => '\\ensuremath\{\\sqcup\}', + 'oplus' => '\\ensuremath\{\\oplus\}', + 8853 => '\\ensuremath\{\\oplus\}', + 8854 => '\\ensuremath\{\\ominus\}', + 'otimes' => '\\ensuremath\{\\otimes\}', + 8855 => '\\ensuremath\{\\otimes\}', + 8856 => '\\ensuremath\{\\oslash\}', + 8857 => '\\ensuremath\{\\odot\}', + 8858 => '\\ensuremath\{\\circledcirc\}', + 8859 => '\\ensuremath\{\\circledast\}', + 8861 => '\\ensuremath\{\\ominus\}', # Close enough for government work. + 8862 => '\\ensuremath\{\\boxplus\}', + 8863 => '\\ensuremath\{\\boxminus\}', + 8864 => '\\ensuremath\{\\boxtimes\}', + 8865 => '\\ensuremath\{\\boxdot\}', + + + + + }; + +# +# Convert a numerical entity (that does not exist in our hash) +# to its UTF-8 equivalent representation. +# This allows us to support, to some extent, any entity for which +# dvipdf can find a gylph (given that LaTeX is now UTF-8 clean). +# +sub entity_to_utf8 { +} + + +# +# Convert an entity to the corresponding LateX if possible. +# If not possible, and the entity is numeric, +# the entity is treated like a Unicode character and converted +# to UTF-8 which should display as long as dvipdf can find the +# appropriate glyph. +# +sub entity_to_latex { +} +