diff options
author | Karl Berry <karl@freefriends.org> | 2006-01-12 23:46:29 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2006-01-12 23:46:29 +0000 |
commit | 34cf2bced7210d5c38431cd36ed4e73999cf0444 (patch) | |
tree | f34316ebc264344b217ffcd924c57c2c4bb63d02 /Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex | |
parent | adc8aaaf59099761577342d1050abb05625eeffc (diff) |
trunk/Master/texmf-dist/tex/mex
git-svn-id: svn://tug.org/texlive/trunk@617 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex')
-rw-r--r-- | Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex | 119 |
1 files changed, 119 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex b/Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex new file mode 100644 index 00000000000..d6aa7590a84 --- /dev/null +++ b/Master/texmf-dist/tex/mex/utf8mex/utf8-pl.tex @@ -0,0 +1,119 @@ +% +% utf8-pl.tex +% +% This file implements the conversion from UTF8 to PL +% encoding (used by PLR fonts). +% +% Copyright (C) 2004 Wlodek Bzyl, <matwb@univ.gda.pl> +% +% This program is free software; you can redistribute it and/or modify +% it under the terms of the GNU General Public License as published by +% the Free Software Foundation; either version 2 of the License, or +% (at your option) any later version. +% +% This program is distributed in the hope that it will be useful, +% but WITHOUT ANY WARRANTY; without even the implied warranty of +% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +% GNU General Public License for more details. +% +% You should have received a copy of the GNU General Public License +% along with this program; if not, write to the Free Software +% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +\ifx\mubyte\undefined + \errhelp{Sorry, you can't use this file without encTeX ver. Jun. 2004.} + \errmessage{The encTeX extension of TeX is not found} + \endinput \fi + +% first, we set the identity mapping in xord/xchr: + +\count255=128 +\loop \xordcode\count255=\count255 + \xchrcode\count255=\count255 + \advance\count255 by 1 +\ifnum \count255<256 \repeat + + +% next, we remove the current conversion table, if exists: + +{\catcode`\^^@=12 +\gdef\clearmubytes{\bgroup \count255=1 + \loop \uccode`X=\count255 + \uppercase{\mubyte XX\endmubyte}% + \advance\count255 by1 + \ifnum\count255<256 \repeat + \mubyte ^^@^^@\endmubyte + \egroup} +} +\clearmubytes + + +% include these files first, so we can redefine some characters later + +\input utf8math +\input utf8unkn +\input utf8plsq + + +% create the conversion table: + + +% uppercase letters + +\mubyte ^^81 ^^c4^^84\endmubyte % Aogonek +\mubyte ^^82 ^^c4^^86\endmubyte % Cacute +\mubyte ^^86 ^^c4^^98\endmubyte % Eogonek +\mubyte ^^8a ^^c5^^81\endmubyte % Lslash +\mubyte ^^8b ^^c5^^83\endmubyte % Nacute +\mubyte ^^d3 ^^c3^^93\endmubyte % Oacute +\mubyte ^^91 ^^c5^^9a\endmubyte % Sacute +\mubyte ^^9b ^^c5^^bb\endmubyte % Zdotaccent +\mubyte ^^99 ^^c5^^b9\endmubyte % Zacute + +% lowercase letters + +\mubyte ^^a1 ^^c4^^85\endmubyte % aogonek +\mubyte ^^a2 ^^c4^^87\endmubyte % cacute +\mubyte ^^a6 ^^c4^^99\endmubyte % eogonek +\mubyte ^^aa ^^c5^^82\endmubyte % lslash +\mubyte ^^ab ^^c5^^84\endmubyte % nacute +\mubyte ^^f3 ^^c3^^b3\endmubyte % oacute +\mubyte ^^b1 ^^c5^^9b\endmubyte % sacute +\mubyte ^^bb ^^c5^^bc\endmubyte % zdotaccent +\mubyte ^^b9 ^^c5^^ba\endmubyte % zacute + +% non-characters + +\chardef\erq="27 +\mubyte \erq ^^e2^^80^^99\endmubyte % right single quotation mark + +% there's no \elqq, \elq, they are the same +% Unicode character as \crqq, \crq + +\chardef\endash="7B +\chardef\emdash="7C +\mubyte \endash ^^e2^^80^^93\endmubyte % en dash +\mubyte \emdash ^^e2^^80^^94\endmubyte % em dash + +\chardef\utfinvexclamation="3C +\chardef\utfinvquestion="3E +\mubyte \utfinvexclamation ^^c2^^a1\endmubyte % inverted exclamation mark +\mubyte \utfinvquestion ^^c2^^bf\endmubyte % inverted question mark + +\chardef\utfligatureff="0B +\chardef\utfligaturefi="0C +\chardef\utfligaturefl="0D +\chardef\utfligatureffi="0E +\chardef\utfligatureffl="0F +\mubyte \utfligatureff ^^ef^^ac^^80\endmubyte % latin small ligature ff +\mubyte \utfligaturefi ^^ef^^ac^^81\endmubyte % latin small ligature fi +\mubyte \utfligaturefl ^^ef^^ac^^82\endmubyte % latin small ligature fl +\mubyte \utfligatureffi ^^ef^^ac^^83\endmubyte % latin small ligature ffi +\mubyte \utfligatureffl ^^ef^^ac^^84\endmubyte % latin small ligature ffl + + +% finally, make the tables work + +\mubytein=1 \mubyteout=3 + +\endinput |