summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx')
-rw-r--r--Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx148
1 files changed, 140 insertions, 8 deletions
diff --git a/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx b/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx
index bc616933a0f..039f226328e 100644
--- a/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx
+++ b/Master/texmf-dist/source/latex/oberdiek/setouterhbox.dtx
@@ -18,7 +18,8 @@
% This work consists of the main source file setouterhbox.dtx
% and the derived files
% setouterhbox.sty, setouterhbox.pdf, setouterhbox.ins, setouterhbox.drv,
-% setouterhbox-example.tex.
+% setouterhbox-example.tex, setouterhbox-test1.tex,
+% setouterhbox-test2.tex.
%
% Distribution:
% CTAN:macros/latex/contrib/oberdiek/setouterhbox.dtx
@@ -54,6 +55,8 @@
% TDS:tex/generic/oberdiek/setouterhbox.sty
% TDS:doc/latex/oberdiek/setouterhbox.pdf
% TDS:doc/latex/oberdiek/setouterhbox-example.tex
+% TDS:doc/latex/oberdiek/setouterhbox-test1.tex
+% TDS:doc/latex/oberdiek/setouterhbox-test2.tex
% TDS:source/latex/oberdiek/setouterhbox.dtx
%
%<*ignore>
@@ -69,7 +72,7 @@
\input docstrip.tex
\Msg{************************************************************************}
\Msg{* Installation}
-\Msg{* Package: setouterhbox 2007/05/17 v1.6 Set hbox in outer horizontal mode (HO)}
+\Msg{* Package: setouterhbox 2007/09/09 v1.7 Set hbox in outer horizontal mode (HO)}
\Msg{************************************************************************}
\keepsilent
@@ -97,7 +100,8 @@ This Current Maintainer of this work is Heiko Oberdiek.
This work consists of the main source file setouterhbox.dtx
and the derived files
setouterhbox.sty, setouterhbox.pdf, setouterhbox.ins, setouterhbox.drv,
- setouterhbox-example.tex.
+ setouterhbox-example.tex, setouterhbox-test1.tex,
+ setouterhbox-test2.tex.
\endpreamble
@@ -108,6 +112,8 @@ and the derived files
\file{setouterhbox.sty}{\from{setouterhbox.dtx}{package}}%
\usedir{doc/latex/oberdiek}%
\file{setouterhbox-example.tex}{\from{setouterhbox.dtx}{example}}%
+ \file{setouterhbox-test1.tex}{\from{setouterhbox.dtx}{test1}}%
+ \file{setouterhbox-test2.tex}{\from{setouterhbox.dtx}{test2}}%
}
\obeyspaces
@@ -133,7 +139,7 @@ and the derived files
%<*driver>
\NeedsTeXFormat{LaTeX2e}
\ProvidesFile{setouterhbox.drv}%
- [2007/05/17 v1.6 Set hbox in outer horizontal mode (HO)]%
+ [2007/09/09 v1.7 Set hbox in outer horizontal mode (HO)]%
\documentclass{ltxdoc}
\usepackage{holtxdoc}
\begin{document}
@@ -142,7 +148,7 @@ and the derived files
%</driver>
% \fi
%
-% \CheckSum{334}
+% \CheckSum{461}
%
% \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
@@ -163,7 +169,7 @@ and the derived files
% \GetFileInfo{setouterhbox.drv}
%
% \title{The \xpackage{setouterhbox} package}
-% \date{2007/05/17 v1.6}
+% \date{2007/09/09 v1.7}
% \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}}
%
% \maketitle
@@ -401,9 +407,36 @@ by/a/very_long_long_long_path.html}%
\fi
\expandafter\x\csname ver@setouterhbox.sty\endcsname
\ProvidesPackage{setouterhbox}%
- [2007/05/17 v1.6 Set hbox in outer horizontal mode (HO)]
+ [2007/09/09 v1.7 Set hbox in outer horizontal mode (HO)]
% \end{macrocode}
%
+% \begin{macrocode}
+\expandafter\edef\csname setouterhboxAtEnd\endcsname{%
+ \catcode64 \the\catcode64\relax
+}
+\catcode64 11 % @
+\def\TMP@EnsureCode#1#2{%
+ \edef\setouterhboxAtEnd{%
+ \setouterhboxAtEnd
+ \catcode#1 \the\catcode#1\relax
+ }%
+ \catcode#1 #2\relax
+}
+\TMP@EnsureCode{40}{12}% (
+\TMP@EnsureCode{41}{12}% )
+\TMP@EnsureCode{44}{12}% ,
+\TMP@EnsureCode{45}{12}% -
+\TMP@EnsureCode{46}{12}% .
+\TMP@EnsureCode{47}{12}% /
+\TMP@EnsureCode{58}{12}% :
+\TMP@EnsureCode{60}{12}% <
+\TMP@EnsureCode{61}{12}% =
+\TMP@EnsureCode{62}{12}% >
+\TMP@EnsureCode{96}{12}% `
+% \end{macrocode}
+%
+% \subsection{Interface macros}
+%
% \begin{macro}{\setouterhboxBox}
% The method requires a global box assignment. To be on the
% safe side, a new box register is allocated for this
@@ -420,7 +453,7 @@ by/a/very_long_long_long_path.html}%
\expandafter\ifx\csname RequirePackage\endcsname\relax
\input infwarerr.sty\relax
\else
- \RequirePackage{infwarerr}%
+ \RequirePackage{infwarerr}[2007/09/09]%
\fi
\edef\setouterhboxFailure#1#2{%
\expandafter\noexpand\csname @PackageError\endcsname
@@ -660,6 +693,7 @@ E \egroup
\expandafter\endgroup
\ifx\x\fmtname
\else
+ \setouterhboxAtEnd
\expandafter\endinput
\fi
% \end{macrocode}
@@ -679,8 +713,100 @@ E \egroup
% \end{macrocode}
%
% \begin{macrocode}
+\setouterhboxAtEnd
%</package>
% \end{macrocode}
+%
+% \section{Test}
+%
+% \subsection{Catcode checks for loading}
+%
+% \begin{macrocode}
+%<*test1>
+% \end{macrocode}
+% \begin{macrocode}
+\catcode`\@=11 %
+\def\RestoreCatcodes{}
+\count@=0 %
+\loop
+ \edef\RestoreCatcodes{%
+ \RestoreCatcodes
+ \catcode\the\count@=\the\catcode\count@\relax
+ }%
+\ifnum\count@<255 %
+ \advance\count@\@ne
+\repeat
+
+\def\RangeCatcodeInvalid#1#2{%
+ \count@=#1\relax
+ \loop
+ \catcode\count@=15 %
+ \ifnum\count@<#2\relax
+ \advance\count@\@ne
+ \repeat
+}
+\def\Test{%
+ \RangeCatcodeInvalid{0}{47}%
+ \RangeCatcodeInvalid{58}{64}%
+ \RangeCatcodeInvalid{91}{96}%
+ \RangeCatcodeInvalid{123}{255}%
+ \catcode`\@=12 %
+ \catcode`\\=0 %
+ \catcode`\{=1 %
+ \catcode`\}=2 %
+ \catcode`\#=6 %
+ \catcode`\[=12 %
+ \catcode`\]=12 %
+ \catcode`\%=14 %
+ \catcode`\ =10 %
+ \catcode13=5 %
+ \input setouterhbox.sty\relax
+ \RestoreCatcodes
+}
+\Test
+\csname @@end\endcsname
+\end
+% \end{macrocode}
+% \begin{macrocode}
+%</test1>
+% \end{macrocode}
+%
+% \subsection{Test with package \xpackage{url}}
+%
+% \begin{macrocode}
+%<*test2>
+\nofiles
+\documentclass[a5paper]{article}
+\usepackage{url}[2005/06/27]
+\usepackage{setouterhbox}
+
+\newsavebox{\testbox}
+
+\setlength{\parindent}{0pt}
+\setlength{\parskip}{2em}
+
+\begin{document}
+\raggedright
+
+\url{http://this.is.a.very.long.host.name/followed/%
+by/a/very_long_long_long_path.html}%
+
+\sbox\testbox{%
+ \url{http://this.is.a.very.long.host.name/followed/%
+ by/a/very_long_long_long_path.html}%
+}%
+\unhbox\testbox
+
+\begin{setouterhbox}{\testbox}%
+ \url{http://this.is.a.very.long.host.name/followed/%
+ by/a/very_long_long_long_path.html}%
+\end{setouterhbox}
+\unhbox\testbox
+
+\end{document}
+%</test2>
+% \end{macrocode}
+%
% \section{Installation}
%
% \subsection{Download}
@@ -743,6 +869,8 @@ E \egroup
% setouterhbox.sty & tex/generic/oberdiek/setouterhbox.sty\\
% setouterhbox.pdf & doc/latex/oberdiek/setouterhbox.pdf\\
% setouterhbox-example.tex & doc/latex/oberdiek/setouterhbox-example.tex\\
+% setouterhbox-test1.tex & doc/latex/oberdiek/setouterhbox-test1.tex\\
+% setouterhbox-test2.tex & doc/latex/oberdiek/setouterhbox-test2.tex\\
% setouterhbox.dtx & source/latex/oberdiek/setouterhbox.dtx\\
% \end{tabular}^^A
% }^^A
@@ -923,6 +1051,10 @@ E \egroup
% \item
% Standard header part for generic files.
% \end{Version}
+% \begin{Version}{2007/09/09 v1.7}
+% \item
+% Catcode section added.
+% \end{Version}
% \end{History}
%
% \PrintIndex