diff options
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/stringenc.dtx')
-rw-r--r-- | Master/texmf-dist/source/latex/oberdiek/stringenc.dtx | 186 |
1 files changed, 119 insertions, 67 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx b/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx index 7d20fef9f0d..0e8e8a0cbe7 100644 --- a/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/stringenc.dtx @@ -1,11 +1,12 @@ % \iffalse meta-comment -% +% % File: stringenc.dtx -% Version: 2010/03/01 v1.8 -% -% Copyright (C) 2007-2010 by +% Version: 2011/12/02 v1.10 +% Info: Convert strings between diff. encodings +% +% Copyright (C) 2007-2011 by % Heiko Oberdiek <heiko.oberdiek at googlemail.com> -% +% % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either % version 1.3c of this license or (at your option) any later @@ -15,14 +16,14 @@ % http://www.latex-project.org/lppl.txt % and version 1.3 or later is part of all distributions of % LaTeX version 2005/12/01 or later. -% +% % This work has the LPPL maintenance status "maintained". -% +% % This Current Maintainer of this work is Heiko Oberdiek. -% +% % The Base Interpreter refers to any `TeX-Format', % because some files are installed in TDS:tex/generic//. -% +% % This work consists of the main source file stringenc.dtx % and the derived files % stringenc.sty, stringenc.pdf, stringenc.ins, stringenc.drv, @@ -39,11 +40,11 @@ % se-cp850.def, se-cp852.def, se-cp855.def, se-cp858.def, % se-cp865.def, se-cp866.def, se-cp1250.def, se-cp1251.def, % se-cp1257.def, stringenc-test1.tex, stringenc-test2.tex. -% +% % Distribution: % CTAN:macros/latex/contrib/oberdiek/stringenc.dtx % CTAN:macros/latex/contrib/oberdiek/stringenc.pdf -% +% % Unpacking: % (a) If stringenc.ins is present: % tex stringenc.ins @@ -52,7 +53,7 @@ % (c) If you insist on using LaTeX % latex \let\install=y\input{stringenc.dtx} % (quote the arguments according to the demands of your shell) -% +% % Documentation: % (a) If stringenc.drv is present: % latex stringenc.drv @@ -62,14 +63,14 @@ % if available. Here you can specify further options, e.g. % use A4 as paper format: % \PassOptionsToClass{a4paper}{article} -% +% % Programm calls to get the documentation (example): % pdflatex stringenc.dtx % makeindex -s gind.ist stringenc.idx % pdflatex stringenc.dtx % makeindex -s gind.ist stringenc.idx % pdflatex stringenc.dtx -% +% % Installation: % TDS:tex/generic/oberdiek/stringenc.sty % TDS:tex/generic/oberdiek/se-utf32be.def @@ -132,7 +133,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: stringenc 2010/03/01 v1.8 Converts strings between encodings (HO)} +\Msg{* Package: stringenc 2011/12/02 v1.10 Convert strings between diff. encodings (HO)} \Msg{************************************************************************} \keepsilent @@ -144,9 +145,9 @@ This is a generated file. Project: stringenc -Version: 2010/03/01 v1.8 +Version: 2011/12/02 v1.10 -Copyright (C) 2007-2010 by +Copyright (C) 2007-2011 by Heiko Oberdiek <heiko.oberdiek at googlemail.com> This work may be distributed and/or modified under the @@ -234,6 +235,10 @@ and the derived files \usedir{doc/latex/oberdiek/test}% \file{stringenc-test1.tex}{\from{stringenc.dtx}{test1}}% \file{stringenc-test2.tex}{\from{stringenc.dtx}{test2}}% + \nopreamble + \nopostamble + \usedir{source/latex/oberdiek/catalogue}% + \file{stringenc.xml}{\from{stringenc.dtx}{catalogue}}% } \catcode32=13\relax% active space @@ -272,9 +277,9 @@ and the derived files %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{stringenc.drv}% - [2010/03/01 v1.8 Converts strings between encodings (HO)]% + [2011/12/02 v1.10 Convert strings between diff. encodings (HO)]% \documentclass{ltxdoc} -\usepackage{holtxdoc}[2011/02/04] +\usepackage{holtxdoc}[2011/11/22] \usepackage{longtable} \begin{document} \DocInput{stringenc.dtx}% @@ -282,7 +287,7 @@ and the derived files %</driver> % \fi % -% \CheckSum{6179} +% \CheckSum{6178} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -303,7 +308,7 @@ and the derived files % \GetFileInfo{stringenc.drv} % % \title{The \xpackage{stringenc} package} -% \date{2010/03/01 v1.8} +% \date{2011/12/02 v1.10} % \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}} % % \maketitle @@ -328,7 +333,7 @@ and the derived files % This can be prevented by \eTeX's \cs{detokenize}: %\begin{quote} %\begin{verbatim} -%\expandafter\StringEncodingConvert\expandafter\Result\expandafter{% +%\StringEncodingConvert\Result{% % \detokenize{Hello \textbf{world}!}% %}{ascii}{utf8} %\end{verbatim} @@ -429,6 +434,7 @@ and the derived files % & MAC OS Cyrillic\\ % \xoption{mac-roman}, \xoption{applemac} & MAC OS Roman\\ % \xoption{nextstep}, \xoption{next} & NextStep Encoding\\ +% \xoption{pdfdoc} & PDFDocEncoding\\ % \xoption{utf8}, \xoption{utf-8} & UTF-8\\ % \xoption{utf16be}, \xoption{utf-16be}, \xoption{utf16}, \xoption{utf-16} % & UTF-16BE\\ @@ -519,7 +525,7 @@ and the derived files \fi \expandafter\x\csname ver@stringenc.sty\endcsname \ProvidesPackage{stringenc}% - [2010/03/01 v1.8 Converts strings between encodings (HO)]% + [2011/12/02 v1.10 Convert strings between diff. encodings (HO)]% % \end{macrocode} % % \subsection{Catcodes} @@ -967,7 +973,7 @@ and the derived files % \begin{macrocode} \def\SE@Nibble@NumToHex#1{% $ \ifcase\numexpr#1\relax -& \expandafter\ifcase\expandafter\ltx@firstofone\expandafter{\number#1} % +& \ifcase\expandafter\ltx@firstofone\expandafter{\number#1} % 0\or 1\or 2\or 3\or 4\or 5\or 6\or 7\or 8\or 9\or A\or B\or C\or D\or E\or F% \fi @@ -978,7 +984,6 @@ $ \ifcase\numexpr#1\relax % \begin{macrocode} \def\SE@Nibble@NumToBin#1{% $ \ifcase\numexpr#1\relax -& \expandafter & \ifcase\expandafter\ltx@firstofone\expandafter{\number#1} % 0000\or 0001\or @@ -1500,8 +1505,8 @@ $ \fi % % \begin{macrocode} %<*utf32> -%<utf32be>\ProvidesFile{se-utf32be.def}[2010/03/01 v1.8 stringenc: UTF-32BE] -%<utf32le>\ProvidesFile{se-utf32le.def}[2010/03/01 v1.8 stringenc: UTF-32LE] +%<utf32be>\ProvidesFile{se-utf32be.def}[2011/12/02 v1.10 stringenc: UTF-32BE] +%<utf32le>\ProvidesFile{se-utf32le.def}[2011/12/02 v1.10 stringenc: UTF-32LE] % \end{macrocode} % % \begin{macrocode} @@ -1659,7 +1664,7 @@ $ \fi % % \begin{macrocode} %<*utf8> -\ProvidesFile{se-utf8.def}[2010/03/01 v1.8 stringenc: UTF-8] +\ProvidesFile{se-utf8.def}[2011/12/02 v1.10 stringenc: UTF-8] % \end{macrocode} % % \noindent @@ -1999,7 +2004,7 @@ $ \fi % % \begin{macrocode} %<*utf16le> -\ProvidesFile{se-utf16le.def}[2010/03/01 v1.8 stringenc: UTF-16LE] +\ProvidesFile{se-utf16le.def}[2011/12/02 v1.10 stringenc: UTF-16LE] % \end{macrocode} % % \begin{macrocode} @@ -2039,7 +2044,7 @@ $ \fi % % \begin{macrocode} %<*pdfdoc> -\ProvidesFile{se-pdfdoc.def}[2010/03/01 v1.8 stringenc: PDFDocEncoding] +\ProvidesFile{se-pdfdoc.def}[2011/12/02 v1.10 stringenc: PDFDocEncoding] % \end{macrocode} % % Pass ranges 32..126 and 160..255 through and use @@ -2170,7 +2175,7 @@ $ \fi % % \begin{macrocode} %<*iso-8859-1> -\ProvidesFile{se-iso-8859-1.def}[2010/03/01 v1.8 stringenc: ISO-8859-1] +\ProvidesFile{se-iso-8859-1.def}[2011/12/02 v1.10 stringenc: ISO-8859-1] % \end{macrocode} % % Excluded area: 0x80..0x9F @@ -2240,7 +2245,7 @@ $ \fi % % \begin{macrocode} %<*cp1252> -\ProvidesFile{se-cp1252.def}[2010/03/01 v1.8 stringenc: cp1252] +\ProvidesFile{se-cp1252.def}[2011/12/02 v1.10 stringenc: cp1252] % \end{macrocode} % % \begin{macrocode} @@ -2341,7 +2346,7 @@ $ \fi % % \begin{macrocode} %<*ascii> -\ProvidesFile{se-ascii.def}[2010/03/01 v1.8 stringenc: US-ASCII] +\ProvidesFile{se-ascii.def}[2011/12/02 v1.10 stringenc: US-ASCII] % \end{macrocode} % % \begin{macrocode} @@ -2390,7 +2395,7 @@ $ \fi % \begin{macrocode} %<*ascii-print> \ProvidesFile{se-ascii-print.def}% - [2010/03/01 v1.8 stringenc: Printable ASCII characters]% + [2011/12/02 v1.10 stringenc: Printable ASCII characters]% % \end{macrocode} % % \begin{macrocode} @@ -2453,7 +2458,7 @@ $ \fi % % \begin{macrocode} %<*clean7bit> -\ProvidesFile{se-clean7bit.def}[2010/03/01 v1.8 stringenc: Clean7Bit] +\ProvidesFile{se-clean7bit.def}[2011/12/02 v1.10 stringenc: Clean7Bit] % \end{macrocode} % % \begin{macrocode} @@ -2539,123 +2544,123 @@ $ \fi % % \begin{macrocode} %<*iso-8859-2> -\ProvidesFile{se-iso-8859-2.def}[2010/03/01 v1.8 stringenc: ISO-8859-2] +\ProvidesFile{se-iso-8859-2.def}[2011/12/02 v1.10 stringenc: ISO-8859-2] \def\SE@this{iso-8859-2} %</iso-8859-2> %<*iso-8859-3> -\ProvidesFile{se-iso-8859-3.def}[2010/03/01 v1.8 stringenc: ISO-8859-3] +\ProvidesFile{se-iso-8859-3.def}[2011/12/02 v1.10 stringenc: ISO-8859-3] \def\SE@this{iso-8859-3} %</iso-8859-3> %<*iso-8859-4> -\ProvidesFile{se-iso-8859-4.def}[2010/03/01 v1.8 stringenc: ISO-8859-4] +\ProvidesFile{se-iso-8859-4.def}[2011/12/02 v1.10 stringenc: ISO-8859-4] \def\SE@this{iso-8859-4} %</iso-8859-4> %<*iso-8859-5> -\ProvidesFile{se-iso-8859-5.def}[2010/03/01 v1.8 stringenc: ISO-8859-5] +\ProvidesFile{se-iso-8859-5.def}[2011/12/02 v1.10 stringenc: ISO-8859-5] \def\SE@this{iso-8859-5} %</iso-8859-5> %<*iso-8859-6> -\ProvidesFile{se-iso-8859-6.def}[2010/03/01 v1.8 stringenc: ISO-8859-6] +\ProvidesFile{se-iso-8859-6.def}[2011/12/02 v1.10 stringenc: ISO-8859-6] \def\SE@this{iso-8859-6} %</iso-8859-6> %<*iso-8859-7> -\ProvidesFile{se-iso-8859-7.def}[2010/03/01 v1.8 stringenc: ISO-8859-7] +\ProvidesFile{se-iso-8859-7.def}[2011/12/02 v1.10 stringenc: ISO-8859-7] \def\SE@this{iso-8859-7} %</iso-8859-7> %<*iso-8859-8> -\ProvidesFile{se-iso-8859-8.def}[2010/03/01 v1.8 stringenc: ISO-8859-8] +\ProvidesFile{se-iso-8859-8.def}[2011/12/02 v1.10 stringenc: ISO-8859-8] \def\SE@this{iso-8859-8} %</iso-8859-8> %<*iso-8859-9> -\ProvidesFile{se-iso-8859-9.def}[2010/03/01 v1.8 stringenc: ISO-8859-9] +\ProvidesFile{se-iso-8859-9.def}[2011/12/02 v1.10 stringenc: ISO-8859-9] \def\SE@this{iso-8859-9} %</iso-8859-9> %<*iso-8859-10> -\ProvidesFile{se-iso-8859-10.def}[2010/03/01 v1.8 stringenc: ISO-8859-10] +\ProvidesFile{se-iso-8859-10.def}[2011/12/02 v1.10 stringenc: ISO-8859-10] \def\SE@this{iso-8859-10} %</iso-8859-10> %<*iso-8859-11> -\ProvidesFile{se-iso-8859-11.def}[2010/03/01 v1.8 stringenc: ISO-8859-11] +\ProvidesFile{se-iso-8859-11.def}[2011/12/02 v1.10 stringenc: ISO-8859-11] \def\SE@this{iso-8859-11} %</iso-8859-11> %<*iso-8859-13> -\ProvidesFile{se-iso-8859-13.def}[2010/03/01 v1.8 stringenc: ISO-8859-13] +\ProvidesFile{se-iso-8859-13.def}[2011/12/02 v1.10 stringenc: ISO-8859-13] \def\SE@this{iso-8859-13} %</iso-8859-13> %<*iso-8859-14> -\ProvidesFile{se-iso-8859-14.def}[2010/03/01 v1.8 stringenc: ISO-8859-14] +\ProvidesFile{se-iso-8859-14.def}[2011/12/02 v1.10 stringenc: ISO-8859-14] \def\SE@this{iso-8859-14} %</iso-8859-14> %<*iso-8859-15> -\ProvidesFile{se-iso-8859-15.def}[2010/03/01 v1.8 stringenc: ISO-8859-15] +\ProvidesFile{se-iso-8859-15.def}[2011/12/02 v1.10 stringenc: ISO-8859-15] \def\SE@this{iso-8859-15} %</iso-8859-15> %<*iso-8859-16> -\ProvidesFile{se-iso-8859-16.def}[2010/03/01 v1.8 stringenc: ISO-8859-16] +\ProvidesFile{se-iso-8859-16.def}[2011/12/02 v1.10 stringenc: ISO-8859-16] \def\SE@this{iso-8859-16} %</iso-8859-16> %<*koi8-r> -\ProvidesFile{se-koi8-r.def}[2010/03/01 v1.8 stringenc: KOI8-R] +\ProvidesFile{se-koi8-r.def}[2011/12/02 v1.10 stringenc: KOI8-R] \def\SE@this{koi8-r} %</koi8-r> %<*nextstep> -\ProvidesFile{se-nextstep.def}[2010/03/01 v1.8 stringenc: NextStep] +\ProvidesFile{se-nextstep.def}[2011/12/02 v1.10 stringenc: NextStep] \def\SE@this{nextstep} %</nextstep> %<*mac-centeuro> -\ProvidesFile{se-mac-centeuro.def}[2010/03/01 v1.8 stringenc: Mac OS Central European] +\ProvidesFile{se-mac-centeuro.def}[2011/12/02 v1.10 stringenc: Mac OS Central European] \def\SE@this{mac-centeuro} %</mac-centeuro> %<*mac-cyrillic> -\ProvidesFile{se-mac-cyrillic.def}[2010/03/01 v1.8 stringenc: Mac OS Cyrillic] +\ProvidesFile{se-mac-cyrillic.def}[2011/12/02 v1.10 stringenc: Mac OS Cyrillic] \def\SE@this{mac-cyrillic} %</mac-cyrillic> %<*mac-roman> -\ProvidesFile{se-mac-roman.def}[2010/03/01 v1.8 stringenc: Mac OS Roman] +\ProvidesFile{se-mac-roman.def}[2011/12/02 v1.10 stringenc: Mac OS Roman] \def\SE@this{mac-roman} %</mac-roman> %<*dec-mcs> -\ProvidesFile{se-dec-mcs.def}[2010/03/01 v1.8 stringenc: DEC-MCS] +\ProvidesFile{se-dec-mcs.def}[2011/12/02 v1.10 stringenc: DEC-MCS] \def\SE@this{dec-mcs} %</dec-mcs> %<*cp437> -\ProvidesFile{se-cp437.def}[2010/03/01 v1.8 stringenc: cp437] +\ProvidesFile{se-cp437.def}[2011/12/02 v1.10 stringenc: cp437] \def\SE@this{cp437} %</cp437> %<*cp850> -\ProvidesFile{se-cp850.def}[2010/03/01 v1.8 stringenc: cp850] +\ProvidesFile{se-cp850.def}[2011/12/02 v1.10 stringenc: cp850] \def\SE@this{cp850} %</cp850> %<*cp852> -\ProvidesFile{se-cp852.def}[2010/03/01 v1.8 stringenc: cp852] +\ProvidesFile{se-cp852.def}[2011/12/02 v1.10 stringenc: cp852] \def\SE@this{cp852} %</cp852> %<*cp855> -\ProvidesFile{se-cp855.def}[2010/03/01 v1.8 stringenc: cp855] +\ProvidesFile{se-cp855.def}[2011/12/02 v1.10 stringenc: cp855] \def\SE@this{cp855} %</cp855> %<*cp858> -\ProvidesFile{se-cp858.def}[2010/03/01 v1.8 stringenc: cp858] +\ProvidesFile{se-cp858.def}[2011/12/02 v1.10 stringenc: cp858] \def\SE@this{cp858} %</cp858> %<*cp865> -\ProvidesFile{se-cp865.def}[2010/03/01 v1.8 stringenc: cp865] +\ProvidesFile{se-cp865.def}[2011/12/02 v1.10 stringenc: cp865] \def\SE@this{cp865} %</cp865> %<*cp866> -\ProvidesFile{se-cp866.def}[2010/03/01 v1.8 stringenc: cp866] +\ProvidesFile{se-cp866.def}[2011/12/02 v1.10 stringenc: cp866] \def\SE@this{cp866} %</cp866> %<*cp1250> -\ProvidesFile{se-cp1250.def}[2010/03/01 v1.8 stringenc: cp1250] +\ProvidesFile{se-cp1250.def}[2011/12/02 v1.10 stringenc: cp1250] \def\SE@this{cp1250} %</cp1250> %<*cp1251> -\ProvidesFile{se-cp1251.def}[2010/03/01 v1.8 stringenc: cp1251] +\ProvidesFile{se-cp1251.def}[2011/12/02 v1.10 stringenc: cp1251] \def\SE@this{cp1251} %</cp1251> %<*cp1257> -\ProvidesFile{se-cp1257.def}[2010/03/01 v1.8 stringenc: cp1257] +\ProvidesFile{se-cp1257.def}[2011/12/02 v1.10 stringenc: cp1257] \def\SE@this{cp1257} %</cp1257> % \end{macrocode} @@ -6143,7 +6148,7 @@ $ \fi \catcode`\%=14 % \catcode`\ =10 % \catcode13=5 % - \usepackage{stringenc}[2010/03/01]% + \usepackage{stringenc}[2011/12/02]% \RestoreCatcodes } \Test @@ -6194,7 +6199,7 @@ $ \fi \let\SavedNumexpr\numexpr \let\numexpr\relax \fi -\usepackage{stringenc}[2010/03/01] +\usepackage{stringenc}[2011/12/02] \ifx\plainmode Y \let\numexpr\SavedNumexpr \fi @@ -6780,6 +6785,43 @@ $ \fi %\end{verbatim} % \end{quote} % +% \section{Catalogue} +% +% The following XML file can be used as source for the +% \href{http://mirror.ctan.org/help/Catalogue/catalogue.html}{\TeX\ Catalogue}. +% The elements \texttt{caption} and \texttt{description} are imported +% from the original XML file from the Catalogue. +% The name of the XML file in the Catalogue is \xfile{stringenc.xml}. +% \begin{macrocode} +%<*catalogue> +<?xml version='1.0' encoding='us-ascii'?> +<!DOCTYPE entry SYSTEM 'catalogue.dtd'> +<entry datestamp='$Date$' modifier='$Author$' id='stringenc'> + <name>stringenc</name> + <caption>Converting a string between different encodings.</caption> + <authorref id='auth:oberdiek'/> + <copyright owner='Heiko Oberdiek' year='2007-2011'/> + <license type='lppl1.3'/> + <version number='1.10'/> + <description> + This package provides <tt>\StringEncodingConvert</tt> for converting + a string between different encodings. + Both <xref refid='latex'>LaTeX</xref> and + <xref refid='plain'>plain-TeX</xref> are supported. + <p/> + The package is part of the <xref refid='oberdiek'>oberdiek</xref> + bundle. + </description> + <documentation details='Package documentation' + href='ctan:/macros/latex/contrib/oberdiek/stringenc.pdf'/> + <ctan file='true' path='/macros/latex/contrib/oberdiek/stringenc.dtx'/> + <miktex location='oberdiek'/> + <texlive location='oberdiek'/> + <install path='/macros/latex/contrib/oberdiek/oberdiek.tds.zip'/> +</entry> +%</catalogue> +% \end{macrocode} +% % \begin{History} % \begin{Version}{2007/06/14 v1.0} % \item @@ -6826,6 +6868,16 @@ $ \fi % \item % Use of package \xpackage{ltxcmds}. % \end{Version} +% \begin{Version}{2011/07/26 v1.9} +% \item +% Documentation: \xoption{pdfdoc} added in encoding list. +% \end{Version} +% \begin{Version}{2011/12/02 v1.10} +% \item +% Small improvement for \cs{SE@Nibble@NumToBin} and +% \cs{SE@Nibble@NumToHex} if \hologo{eTeX} is not available +% (thanks Bruno Le Floch). +% \end{Version} % \end{History} % % \PrintIndex |