summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx441
1 files changed, 330 insertions, 111 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx b/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx
index b57088ea189..96dfd24805e 100644
--- a/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/pdfescape.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright (C) 2007, 2010 by
+% Copyright (C) 2007, 2010, 2011 by
% Heiko Oberdiek <heiko.oberdiek at googlemail.com>
%
% This work may be distributed and/or modified under the
@@ -25,7 +25,7 @@
% pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv,
% pdfescape-test1.tex, pdfescape-test2.tex,
% pdfescape-test3.tex, pdfescape-test4.tex,
-% pdfescape-test5.tex.
+% pdfescape-test5.tex, pdfescape-test6.tex.
%
% Distribution:
% CTAN:macros/latex/contrib/oberdiek/pdfescape.dtx
@@ -65,6 +65,7 @@
% TDS:doc/latex/oberdiek/test/pdfescape-test3.tex
% TDS:doc/latex/oberdiek/test/pdfescape-test4.tex
% TDS:doc/latex/oberdiek/test/pdfescape-test5.tex
+% TDS:doc/latex/oberdiek/test/pdfescape-test6.tex
% TDS:source/latex/oberdiek/pdfescape.dtx
%
%<*ignore>
@@ -82,7 +83,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: pdfescape 2010/03/01 v1.9 Provides hex, PDF name and string conversions (HO)}
+\Msg{* Package: pdfescape 2011/04/04 v1.12 Provides string conversions (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -93,7 +94,7 @@
This is a generated file.
-Copyright (C) 2007, 2010 by
+Copyright (C) 2007, 2010, 2011 by
Heiko Oberdiek <heiko.oberdiek at googlemail.com>
This work may be distributed and/or modified under the
@@ -118,7 +119,7 @@ and the derived files
pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv,
pdfescape-test1.tex, pdfescape-test2.tex,
pdfescape-test3.tex, pdfescape-test4.tex,
- pdfescape-test5.tex.
+ pdfescape-test5.tex, pdfescape-test6.tex.
\endpreamble
\let\MetaPrefix\DoubleperCent
@@ -134,6 +135,7 @@ and the derived files
\file{pdfescape-test3.tex}{\from{pdfescape.dtx}{test3}}%
\file{pdfescape-test4.tex}{\from{pdfescape.dtx}{test4}}%
\file{pdfescape-test5.tex}{\from{pdfescape.dtx}{test5}}%
+ \file{pdfescape-test6.tex}{\from{pdfescape.dtx}{test6}}%
}
\catcode32=13\relax% active space
@@ -164,7 +166,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{pdfescape.drv}%
- [2010/03/01 v1.9 Provides hex, PDF name and string conversions (HO)]%
+ [2011/04/04 v1.12 Provides string conversions (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}[2008/08/11]
\begin{document}
@@ -173,7 +175,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{2015}
+% \CheckSum{2451}
%
% \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
@@ -194,7 +196,7 @@ and the derived files
% \GetFileInfo{pdfescape.drv}
%
% \title{The \xpackage{pdfescape} package}
-% \date{2010/03/01 v1.9}
+% \date{2011/04/04 v1.12}
% \author{Heiko Oberdiek\\\xemail{heiko.oberdiek at googlemail.com}}
%
% \maketitle
@@ -276,14 +278,18 @@ and the derived files
% \subsection{Reload check and package identification}
% Reload check, especially if the package is not used with \LaTeX.
% \begin{macrocode}
-\begingroup
- \catcode44 12 % ,
- \catcode45 12 % -
- \catcode46 12 % .
- \catcode58 12 % :
- \catcode64 11 % @
- \catcode123 1 % {
- \catcode125 2 % }
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode35=6 % #
+ \catcode39=12 % '
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode58=12 % :
+ \catcode64=11 % @
+ \catcode123=1 % {
+ \catcode125=2 % }
\expandafter\let\expandafter\x\csname ver@pdfescape.sty\endcsname
\ifx\x\relax % plain-TeX, first loading
\else
@@ -291,7 +297,6 @@ and the derived files
\ifx\x\empty % LaTeX, first loading,
% variable is initialized, but \ProvidesPackage not yet seen
\else
- \catcode35 6 % #
\expandafter\ifx\csname PackageInfo\endcsname\relax
\def\x#1#2{%
\immediate\write-1{Package #1 Info: #2.}%
@@ -303,24 +308,27 @@ and the derived files
\aftergroup\endinput
\fi
\fi
-\endgroup
+\endgroup%
% \end{macrocode}
% Package identification:
% \begin{macrocode}
-\begingroup
- \catcode35 6 % #
- \catcode40 12 % (
- \catcode41 12 % )
- \catcode44 12 % ,
- \catcode45 12 % -
- \catcode46 12 % .
- \catcode47 12 % /
- \catcode58 12 % :
- \catcode64 11 % @
- \catcode91 12 % [
- \catcode93 12 % ]
- \catcode123 1 % {
- \catcode125 2 % }
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
+ \catcode35=6 % #
+ \catcode39=12 % '
+ \catcode40=12 % (
+ \catcode41=12 % )
+ \catcode44=12 % ,
+ \catcode45=12 % -
+ \catcode46=12 % .
+ \catcode47=12 % /
+ \catcode58=12 % :
+ \catcode64=11 % @
+ \catcode91=12 % [
+ \catcode93=12 % ]
+ \catcode123=1 % {
+ \catcode125=2 % }
\expandafter\ifx\csname ProvidesPackage\endcsname\relax
\def\x#1#2#3[#4]{\endgroup
\immediate\write-1{Package: #3 #4}%
@@ -339,34 +347,43 @@ and the derived files
\fi
\expandafter\x\csname ver@pdfescape.sty\endcsname
\ProvidesPackage{pdfescape}%
- [2010/03/01 v1.9 Provides hex, PDF name and string conversions (HO)]
+ [2011/04/04 v1.12 Provides string conversions (HO)]%
% \end{macrocode}
%
% \subsection{Catcodes}
%
% \begin{macrocode}
-\begingroup
+\begingroup\catcode61\catcode48\catcode32=10\relax%
+ \catcode13=5 % ^^M
+ \endlinechar=13 %
\catcode123 1 % {
\catcode125 2 % }
+ \catcode64 11 %
\def\x{\endgroup
\expandafter\edef\csname PE@AtEnd\endcsname{%
- \catcode35 \the\catcode35\relax
- \catcode64 \the\catcode64\relax
- \catcode123 \the\catcode123\relax
- \catcode125 \the\catcode125\relax
+ \endlinechar=\the\endlinechar\relax
+ \catcode13=\the\catcode13\relax
+ \catcode32=\the\catcode32\relax
+ \catcode35=\the\catcode35\relax
+ \catcode61=\the\catcode61\relax
+ \catcode64=\the\catcode64\relax
+ \catcode123=\the\catcode123\relax
+ \catcode125=\the\catcode125\relax
}%
}%
-\x
-\catcode35 6 % #
-\catcode64 11 % @
-\catcode123 1 % {
-\catcode125 2 % }
+\x\catcode61\catcode48\catcode32=10\relax%
+\catcode13=5 % ^^M
+\endlinechar=13 %
+\catcode35=6 % #
+\catcode64=11 % @
+\catcode123=1 % {
+\catcode125=2 % }
\def\TMP@EnsureCode#1#2#3{%
\edef\PE@AtEnd{%
\PE@AtEnd
- #1#2 \the#1#2\relax
+ #1#2=\the#1#2\relax
}%
- #1#2 #3\relax
+ #1#2=#3\relax
}
\TMP@EnsureCode\catcode{0}{12}% ^^@
\TMP@EnsureCode\catcode{34}{12}% "
@@ -376,13 +393,32 @@ and the derived files
\TMP@EnsureCode\catcode{46}{12}% .
\TMP@EnsureCode\catcode{47}{12}% /
\TMP@EnsureCode\catcode{60}{12}% <
-\TMP@EnsureCode\catcode{61}{12}% =
\TMP@EnsureCode\catcode{62}{12}% >
+\TMP@EnsureCode\catcode{91}{12}% [
+\TMP@EnsureCode\catcode{93}{12}% ]
\TMP@EnsureCode\catcode{94}{7}% ^
\TMP@EnsureCode\catcode{96}{12}% `
\TMP@EnsureCode\uccode{34}{0}% "
\TMP@EnsureCode\uccode{48}{0}% 0
\TMP@EnsureCode\uccode{61}{0}% =
+\edef\PE@AtEnd{\PE@AtEnd\noexpand\endinput}
+% \end{macrocode}
+%
+% \subsection{Load package}
+%
+% \begin{macrocode}
+\begingroup\expandafter\expandafter\expandafter\endgroup
+\expandafter\ifx\csname RequirePackage\endcsname\relax
+ \def\TMP@RequirePackage#1[#2]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname ver@#1.sty\endcsname\relax
+ \input #1.sty\relax
+ \fi
+ }%
+ \TMP@RequirePackage{ltxcmds}[2010/04/08]%
+\else
+ \RequirePackage{ltxcmds}[2010/04/08]%
+\fi
% \end{macrocode}
%
% \subsection{Sanitizing}
@@ -467,7 +503,7 @@ and the derived files
\ifx\\#2\\%
\else
\PE@space@other
- \@ReturnAfterFi{%
+ \ltx@ReturnAfterFi{%
\PE@SpaceToOther#2\relax
}%
\fi
@@ -475,12 +511,6 @@ and the derived files
% \end{macrocode}
% \end{macro}
%
-% \begin{macro}{\@ReturnAfterFi}
-% \begin{macrocode}
-\long\def\@ReturnAfterFi#1\fi{\fi#1}
-% \end{macrocode}
-% \end{macro}
-%
% \subsection{\cs{EdefUnescapeName}}
%
% \begin{macro}{\EdefUnescapeName}
@@ -523,18 +553,18 @@ and the derived files
}%
\ifcase\ifcase\expandafter\PE@TestUcHexDigit\PE@testA
\ifcase\expandafter\PE@TestUcHexDigit\PE@testB
- \z@
+ \ltx@zero
\else
- \@ne
+ \ltx@one
\fi
\else
- \@ne
+ \ltx@one
\fi
- \uccode\z@="\PE@testA\PE@testB\relax
+ \uccode\ltx@zero="\PE@testA\PE@testB\relax
\uppercase{%
\def\PE@temp{^^@}%
}%
- \uccode\z@=\z@
+ \uccode\ltx@zero=\ltx@zero
\edef\PE@result{\PE@result$1\PE@temp}%
\let\PE@next\PE@DeName
\else
@@ -559,22 +589,22 @@ and the derived files
\uccode`d=`D\relax
\uccode`e=`E\relax
\uccode`f=`F\relax
- \uccode`A=\z@
- \uccode`B=\z@
- \uccode`C=\z@
- \uccode`D=\z@
- \uccode`E=\z@
- \uccode`F=\z@
- \uccode`0=\z@
- \uccode`1=\z@
- \uccode`2=\z@
- \uccode`3=\z@
- \uccode`4=\z@
- \uccode`5=\z@
- \uccode`6=\z@
- \uccode`7=\z@
- \uccode`8=\z@
- \uccode`9=\z@
+ \uccode`A=\ltx@zero
+ \uccode`B=\ltx@zero
+ \uccode`C=\ltx@zero
+ \uccode`D=\ltx@zero
+ \uccode`E=\ltx@zero
+ \uccode`F=\ltx@zero
+ \uccode`0=\ltx@zero
+ \uccode`1=\ltx@zero
+ \uccode`2=\ltx@zero
+ \uccode`3=\ltx@zero
+ \uccode`4=\ltx@zero
+ \uccode`5=\ltx@zero
+ \uccode`6=\ltx@zero
+ \uccode`7=\ltx@zero
+ \uccode`8=\ltx@zero
+ \uccode`9=\ltx@zero
}
% \end{macrocode}
% \end{macro}
@@ -583,19 +613,19 @@ and the derived files
% \begin{macrocode}
\def\PE@TestUcHexDigit#1{%
\ifnum`#1<48 % 0
- \@ne
+ \ltx@one
\else
\ifnum`#1>70 % F
- \@ne
+ \ltx@one
\else
\ifnum`#1>57 % 9
\ifnum`#1<65 % A
- \@ne
+ \ltx@one
\else
- \z@
+ \ltx@zero
\fi
\else
- \z@
+ \ltx@zero
\fi
\fi
\fi
@@ -679,19 +709,19 @@ and the derived files
|let|PE@next|relax
|else
|if n#2%
- |uccode|z@=10 %
+ |uccode|ltx@zero=10 %
|else|if r#2%
- |uccode|z@=13 %
+ |uccode|ltx@zero=13 %
|else|if t#2%
- |uccode|z@=9 %
+ |uccode|ltx@zero=9 %
|else|if b#2%
- |uccode|z@=8 %
+ |uccode|ltx@zero=8 %
|else|if f#2%
- |uccode|z@=12 %
+ |uccode|ltx@zero=12 %
|else
- |uccode|z@=|z@
+ |uccode|ltx@zero=|ltx@zero
|fi|fi|fi|fi|fi
- |ifnum|uccode|z@>|z@
+ |ifnum|uccode|ltx@zero>|ltx@zero
|uppercase{%
|edef|PE@temp{^^@}%
}%
@@ -739,12 +769,12 @@ and the derived files
% \begin{macrocode}
\def\PE@TestOctDigit#1{%
\ifnum`#1<48 % 0
- \@ne
+ \ltx@one
\else
\ifnum`#1>55 % 7
- \@ne
+ \ltx@one
\else
- \z@
+ \ltx@zero
\fi
\fi
}
@@ -777,7 +807,7 @@ and the derived files
% \begin{macro}{\PE@OctAll}
% \begin{macrocode}
\def\PE@OctAll#1{%
- \uccode\z@='#1\relax
+ \uccode\ltx@zero='#1\relax
\uppercase{%
\edef\PE@result{\PE@result^^@}%
}%
@@ -791,7 +821,13 @@ and the derived files
% \begin{macrocode}
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname RequirePackage\endcsname\relax
- \input pdftexcmds.sty\relax
+ \def\TMP@RequirePackage#1[#2]{%
+ \begingroup\expandafter\expandafter\expandafter\endgroup
+ \expandafter\ifx\csname ver@#1.sty\endcsname\relax
+ \input #1.sty\relax
+ \fi
+ }%
+ \TMP@RequirePackage{pdftexcmds}[2007/11/11]%
\else
\RequirePackage{pdftexcmds}[2007/11/11]%
\fi
@@ -886,9 +922,8 @@ and the derived files
% \end{macro}
%
% \begin{macrocode}
- \PE@AtEnd
- \expandafter\endinput
-\fi
+ \expandafter\PE@AtEnd
+\fi%
% \end{macrocode}
%
% \subsection{Help macros}
@@ -916,7 +951,7 @@ and the derived files
% \subsubsection{Switch for \eTeX}
%
% \begin{macrocode}
-\newif\ifPE@etex
+\ltx@newif\ifPE@etex
\begingroup\expandafter\expandafter\expandafter\endgroup
\expandafter\ifx\csname numexpr\endcsname\relax
\else
@@ -1067,8 +1102,8 @@ and the derived files
}%
\ifcase\expandafter\PE@TestUcHexDigit\PE@testA
\ifcase\expandafter\PE@TestUcHexDigit\PE@testB
- \uccode\z@="\PE@testA\PE@testB\relax
- \ifnum\uccode\z@=32 %
+ \uccode\ltx@zero="\PE@testA\PE@testB\relax
+ \ifnum\uccode\ltx@zero=32 %
\let\PE@temp\PE@space@space
\else
\uppercase{%
@@ -1223,7 +1258,7 @@ and the derived files
% \end{macro}
%
% \begin{macrocode}
-\PE@AtEnd
+\PE@AtEnd%
% \end{macrocode}
%
% \begin{macrocode}
@@ -1290,6 +1325,22 @@ and the derived files
\advance\count@ 1 %
\repeat
}
+\def\RangeCatcodeCheck#1#2#3{%
+ \count@=#1\relax
+ \loop
+ \ifnum#3=\catcode\count@
+ \else
+ \errmessage{%
+ Character \the\count@\space
+ with wrong catcode \the\catcode\count@\space
+ instead of \number#3%
+ }%
+ \fi
+ \ifnum\count@<#2\relax
+ \advance\count@ 1 %
+ \repeat
+}
+\def\space{ }
\expandafter\ifx\csname LoadCommand\endcsname\relax
\def\LoadCommand{\input pdfescape.sty\relax}%
\fi
@@ -1300,15 +1351,20 @@ and the derived files
\RangeCatcodeInvalid{123}{255}%
\catcode`\@=12 %
\catcode`\\=0 %
- \catcode`\{=1 %
- \catcode`\}=2 %
- \catcode`\#=6 %
- \catcode`\[=12 %
- \catcode`\]=12 %
\catcode`\%=14 %
- \catcode`\ =10 %
- \catcode13=5 %
\LoadCommand
+ \RangeCatcodeCheck{0}{36}{15}%
+ \RangeCatcodeCheck{37}{37}{14}%
+ \RangeCatcodeCheck{38}{47}{15}%
+ \RangeCatcodeCheck{48}{57}{12}%
+ \RangeCatcodeCheck{58}{63}{15}%
+ \RangeCatcodeCheck{64}{64}{12}%
+ \RangeCatcodeCheck{65}{90}{11}%
+ \RangeCatcodeCheck{91}{91}{15}%
+ \RangeCatcodeCheck{92}{92}{0}%
+ \RangeCatcodeCheck{93}{96}{15}%
+ \RangeCatcodeCheck{97}{122}{11}%
+ \RangeCatcodeCheck{123}{255}{15}%
\RestoreCatcodes
}
\Test
@@ -1332,7 +1388,7 @@ and the derived files
% \begin{macrocode}
%<*test2>
\ProvidesFile{pdfescape-test2.tex}%
- [2010/03/01 v1.9 Test with \string\pdfescape... commands]%
+ [2011/04/04 v1.12 Test with \string\pdfescape... commands]%
%</test2>
% \end{macrocode}
%
@@ -1341,7 +1397,7 @@ and the derived files
% \begin{macrocode}
%<*test3>
\ProvidesFile{pdfescape-test3.tex}%
- [2010/03/01 v1.9 Test without \string\pdfescape..., with e-TeX]%
+ [2011/04/04 v1.12 Test without \string\pdfescape..., with e-TeX]%
%</test3>
% \end{macrocode}
%
@@ -1350,7 +1406,7 @@ and the derived files
% \begin{macrocode}
%<*test4>
\ProvidesFile{pdfescape-test4.tex}%
- [2010/03/01 v1.9 Test without \string\pdfescape... and e-TeX]%
+ [2011/04/04 v1.12 Test without \string\pdfescape... and e-TeX]%
%</test4>
% \end{macrocode}
%
@@ -1359,7 +1415,7 @@ and the derived files
% \begin{macrocode}
%<*test5>
\ProvidesFile{pdfescape-test5.tex}%
- [2010/03/01 v1.9 Test with LuaTeX]%
+ [2011/04/04 v1.12 Test with LuaTeX]%
%</test5>
% \end{macrocode}
%
@@ -1781,6 +1837,152 @@ and the derived files
%</test2|test3|test4|test5>
% \end{macrocode}
%
+% \subsubsection{Test for \hologo{iniTeX}}
+%
+% \begin{macrocode}
+%<*test6>
+\input pdfescape.sty\relax
+\catcode`\{=1 %
+\catcode`\}=2 %
+\catcode`\#=6 %
+\catcode`\^=7 %
+\catcode`\@=11 %
+% \end{macrocode}
+% \begin{macrocode}
+\begingroup
+ \catcode`\@=11 %
+ \countdef\count@=255 %
+ \def\space{ }%
+ \long\def\@whilenum#1\do #2{%
+ \ifnum #1\relax
+ #2\relax
+ \@iwhilenum{#1\relax#2\relax}%
+ \fi
+ }%
+ \long\def\@iwhilenum#1{%
+ \ifnum #1%
+ \expandafter\@iwhilenum
+ \else
+ \expandafter\ltx@gobble
+ \fi
+ {#1}%
+ }%
+ \gdef\AllBytes{}%
+ \count@=0 %
+ \catcode0=12 %
+ \@whilenum\count@<256 \do{%
+ \lccode0=\count@
+ \ifnum\count@=32 %
+ \xdef\AllBytes{\AllBytes\space}%
+ \else
+ \lowercase{%
+ \xdef\AllBytes{\AllBytes^^@}%
+ }%
+ \fi
+ \advance\count@ by 1 %
+ }%
+\endgroup
+\def\AllBytesHex{%
+ 000102030405060708090A0B0C0D0E0F%
+ 101112131415161718191A1B1C1D1E1F%
+ 202122232425262728292A2B2C2D2E2F%
+ 303132333435363738393A3B3C3D3E3F%
+ 404142434445464748494A4B4C4D4E4F%
+ 505152535455565758595A5B5C5D5E5F%
+ 606162636465666768696A6B6C6D6E6F%
+ 707172737475767778797A7B7C7D7E7F%
+ 808182838485868788898A8B8C8D8E8F%
+ 909192939495969798999A9B9C9D9E9F%
+ A0A1A2A3A4A5A6A7A8A9AAABACADAEAF%
+ B0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF%
+ C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF%
+ D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF%
+ E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF%
+ F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF%
+}
+\ltx@onelevel@sanitize\AllBytesHex
+\expandafter\lowercase\expandafter{%
+ \expandafter\def\expandafter\AllBytesHexLC
+ \expandafter{\AllBytesHex}%
+}
+\begingroup
+ \catcode`\#=12 %
+ \xdef\AllBytesName{%
+ #01#02#03#04#05#06#07#08#09#0A#0B#0C#0D#0E#0F%
+ #10#11#12#13#14#15#16#17#18#19#1A#1B#1C#1D#1E#1F%
+ #20!"#23$#25&'#28#29*+,-.#2F%
+ 0123456789:;#3C=#3E?%
+ @ABCDEFGHIJKLMNO%
+ PQRSTUVWXYZ#5B\ltx@backslashchar#5D^_%
+ `abcdefghijklmno%
+ pqrstuvwxyz#7B|#7D\string~#7F%
+ #80#81#82#83#84#85#86#87#88#89#8A#8B#8C#8D#8E#8F%
+ #90#91#92#93#94#95#96#97#98#99#9A#9B#9C#9D#9E#9F%
+ #A0#A1#A2#A3#A4#A5#A6#A7#A8#A9#AA#AB#AC#AD#AE#AF%
+ #B0#B1#B2#B3#B4#B5#B6#B7#B8#B9#BA#BB#BC#BD#BE#BF%
+ #C0#C1#C2#C3#C4#C5#C6#C7#C8#C9#CA#CB#CC#CD#CE#CF%
+ #D0#D1#D2#D3#D4#D5#D6#D7#D8#D9#DA#DB#DC#DD#DE#DF%
+ #E0#E1#E2#E3#E4#E5#E6#E7#E8#E9#EA#EB#EC#ED#EE#EF%
+ #F0#F1#F2#F3#F4#F5#F6#F7#F8#F9#FA#FB#FC#FD#FE#FF%
+ }%
+\endgroup
+\ltx@onelevel@sanitize\AllBytesName
+\edef\AllBytesFromName{\expandafter\ltx@gobble\AllBytes}
+
+\begingroup
+ \def\|{|}%
+ \edef\%{\ltx@percentchar}%
+ \catcode`\|=0 %
+ \catcode`\#=12 %
+ \catcode`\~=12 %
+ \catcode`\\=12 %
+ |xdef|AllBytesString{%
+ \000\001\002\003\004\005\006\007\010\011\012\013\014\015\016\017%
+ \020\021\022\023\024\025\026\027\030\031\032\033\034\035\036\037%
+ \040!"#$|%&'\(\)*+,-./%
+ 0123456789:;<=>?%
+ @ABCDEFGHIJKLMNO%
+ PQRSTUVWXYZ[\\]^_%
+ `abcdefghijklmno%
+ pqrstuvwxyz{||}~\177%
+ \200\201\202\203\204\205\206\207\210\211\212\213\214\215\216\217%
+ \220\221\222\223\224\225\226\227\230\231\232\233\234\235\236\237%
+ \240\241\242\243\244\245\246\247\250\251\252\253\254\255\256\257%
+ \260\261\262\263\264\265\266\267\270\271\272\273\274\275\276\277%
+ \300\301\302\303\304\305\306\307\310\311\312\313\314\315\316\317%
+ \320\321\322\323\324\325\326\327\330\331\332\333\334\335\336\337%
+ \340\341\342\343\344\345\346\347\350\351\352\353\354\355\356\357%
+ \360\361\362\363\364\365\366\367\370\371\372\373\374\375\376\377%
+ }%
+|endgroup
+\ltx@onelevel@sanitize\AllBytesString
+% \end{macrocode}
+% \begin{macrocode}
+\def\msg#{\immediate\write16}
+\def\Test#1#2#3{%
+ \begingroup
+ #1\TestResult{#2}%
+ \ifx\TestResult#3%
+ \else
+ \newlinechar=10 %
+ \msg{Expect:^^J#3}%
+ \msg{Result:^^J\TestResult}%
+ \errmessage{\string#2 -\string#1-> \string#3}%
+ \fi
+ \endgroup
+}
+\Test\EdefEscapeHex\AllBytes\AllBytesHex
+\Test\EdefUnescapeHex\AllBytesHex\AllBytes
+\Test\EdefEscapeName\AllBytes\AllBytesName
+\Test\EdefUnescapeName\AllBytesName\AllBytesFromName
+\Test\EdefEscapeString\AllBytes\AllBytesString
+\Test\EdefUnescapeString\AllBytesString\AllBytes
+% \end{macrocode}
+% \begin{macrocode}
+\csname @@end\endcsname\end
+%</test6>
+% \end{macrocode}
+%
% \section{Installation}
%
% \subsection{Download}
@@ -1847,6 +2049,7 @@ and the derived files
% test/pdfescape-test3.tex & doc/latex/oberdiek/test/pdfescape-test3.tex\\
% test/pdfescape-test4.tex & doc/latex/oberdiek/test/pdfescape-test4.tex\\
% test/pdfescape-test5.tex & doc/latex/oberdiek/test/pdfescape-test5.tex\\
+% test/pdfescape-test6.tex & doc/latex/oberdiek/test/pdfescape-test6.tex\\
% pdfescape.dtx & source/latex/oberdiek/pdfescape.dtx\\
% \end{tabular}^^A
% }^^A
@@ -2016,11 +2219,27 @@ and the derived files
% \end{Version}
% \begin{Version}{2007/11/11 v1.8}
% \item
-% Use of package \xpackage{pdftexcmds} for \LuaTeX\ support.
+% Use of package \xpackage{pdftexcmds} for \hologo{LuaTeX} support.
% \end{Version}
% \begin{Version}{2010/03/01 v1.9}
% \item
-% Compatibility with \iniTeX.
+% Compatibility with \hologo{iniTeX}.
+% \end{Version}
+% \begin{Version}{2010/11/12 v1.10}
+% \item
+% Use of package \xpackage{ltxcmds}.
+% \item
+% Fix for compatibility with \hologo{iniTeX}.
+% \end{Version}
+% \begin{Version}{2011/01/30 v1.11}
+% \item
+% Already loaded package files are not input in \hologo{plainTeX}.
+% \end{Version}
+% \begin{Version}{2011/04/04 v1.12}
+% \item
+% Further fixes for compatibility for \hologo{iniTeX}.
+% \item
+% Test file for \hologo{iniTeX} added.
% \end{Version}
% \end{History}
%