From d85f248e3b38ea0ecda38c5340e3cadd08d65346 Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sun, 16 Sep 2007 00:07:34 +0000 Subject: oberdiek update (14sep07) git-svn-id: svn://tug.org/texlive/trunk@4947 c570f23f-e606-0410-a88d-b1316a301751 --- Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf | Bin 157401 -> 157401 bytes Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf | Bin 139005 -> 139005 bytes .../doc/latex/oberdiek/alphalph-test1.tex | 74 +++ .../doc/latex/oberdiek/alphalph-test2.tex | 250 +++++++++ .../doc/latex/oberdiek/alphalph-test3.tex | 261 +++++++++ Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf | Bin 165225 -> 217808 bytes .../doc/latex/oberdiek/atbegshi-example.tex | 2 +- .../doc/latex/oberdiek/atbegshi-test1.tex | 130 ++--- .../doc/latex/oberdiek/atbegshi-test2.tex | 129 +++-- .../doc/latex/oberdiek/atbegshi-test3.tex | 75 +++ Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf | Bin 208780 -> 211441 bytes Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf | Bin 130108 -> 130108 bytes .../texmf-dist/doc/latex/oberdiek/attachfile2.pdf | Bin 216300 -> 216300 bytes Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf | Bin 134319 -> 134319 bytes Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf | Bin 294770 -> 294770 bytes Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf | Bin 234603 -> 234603 bytes .../doc/latex/oberdiek/catchfile-test1.tex | 63 ++- .../doc/latex/oberdiek/catchfile-test2.tex | 27 +- .../doc/latex/oberdiek/catchfile-test3.tex | 56 ++ Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf | Bin 146301 -> 150132 bytes Master/texmf-dist/doc/latex/oberdiek/centernot.pdf | Bin 126097 -> 126097 bytes Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf | Bin 130718 -> 130718 bytes Master/texmf-dist/doc/latex/oberdiek/classlist.pdf | Bin 127081 -> 127082 bytes .../texmf-dist/doc/latex/oberdiek/colonequals.pdf | Bin 135849 -> 135848 bytes Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf | Bin 119356 -> 119357 bytes .../doc/latex/oberdiek/embedfile-example-plain.tex | 4 +- .../doc/latex/oberdiek/embedfile-test1.tex | 75 +++ .../doc/latex/oberdiek/embedfile-test2.tex | 44 ++ .../doc/latex/oberdiek/embedfile-test3.tex | 43 ++ Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf | Bin 171025 -> 183113 bytes .../texmf-dist/doc/latex/oberdiek/engord-test1.tex | 74 +++ Master/texmf-dist/doc/latex/oberdiek/engord.pdf | Bin 148475 -> 154333 bytes Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf | Bin 133403 -> 133402 bytes .../doc/latex/oberdiek/etexcmds-test1.tex | 50 +- .../doc/latex/oberdiek/etexcmds-test2.tex | 12 +- .../doc/latex/oberdiek/etexcmds-test3.tex | 24 +- .../doc/latex/oberdiek/etexcmds-test4.tex | 53 ++ Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf | Bin 133338 -> 141443 bytes Master/texmf-dist/doc/latex/oberdiek/flags.pdf | Bin 134238 -> 134238 bytes Master/texmf-dist/doc/latex/oberdiek/grffile.pdf | Bin 158205 -> 158206 bytes Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf | Bin 137977 -> 137977 bytes Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf | Bin 193953 -> 193952 bytes Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf | Bin 147133 -> 147133 bytes Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf | Bin 133317 -> 133316 bytes .../texmf-dist/doc/latex/oberdiek/hypdestopt.pdf | Bin 155568 -> 155566 bytes Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf | Bin 154553 -> 154552 bytes Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf | Bin 122283 -> 122282 bytes .../texmf-dist/doc/latex/oberdiek/iflang-test1.tex | 82 +-- .../texmf-dist/doc/latex/oberdiek/iflang-test2.tex | 110 ++-- .../texmf-dist/doc/latex/oberdiek/iflang-test3.tex | 138 ++--- .../texmf-dist/doc/latex/oberdiek/iflang-test4.tex | 66 +++ .../texmf-dist/doc/latex/oberdiek/iflang-test5.tex | 93 ++++ Master/texmf-dist/doc/latex/oberdiek/iflang.pdf | Bin 164226 -> 173761 bytes .../texmf-dist/doc/latex/oberdiek/ifpdf-test1.tex | 74 +++ Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf | Bin 138708 -> 146943 bytes .../texmf-dist/doc/latex/oberdiek/ifvtex-test1.tex | 74 +++ Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf | Bin 133013 -> 142397 bytes .../doc/latex/oberdiek/infwarerr-test1.tex | 217 ++------ .../doc/latex/oberdiek/infwarerr-test2.tex | 20 +- .../doc/latex/oberdiek/infwarerr-test3.tex | 217 ++++++++ Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf | Bin 157199 -> 160830 bytes Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf | Bin 492087 -> 492088 bytes .../doc/latex/oberdiek/intcalc-test1.tex | 76 +++ .../doc/latex/oberdiek/intcalc-test2.tex | 597 +++++++++++++++++++++ .../doc/latex/oberdiek/intcalc-test3.tex | 590 ++++++++++++++++++++ .../doc/latex/oberdiek/intcalc-test4.tex | 535 ++++++++++++++++++ Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf | Bin 0 -> 268205 bytes Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf | Bin 246956 -> 246955 bytes .../doc/latex/oberdiek/kvsetkeys-example.tex | 4 +- .../doc/latex/oberdiek/kvsetkeys-test1.tex | 73 +++ Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf | Bin 163032 -> 166204 bytes .../texmf-dist/doc/latex/oberdiek/makerobust.pdf | Bin 124091 -> 124089 bytes Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf | Bin 570646 -> 635272 bytes Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf | Bin 160335 -> 160335 bytes .../texmf-dist/doc/latex/oberdiek/pdfcol-test1.tex | 73 +++ .../texmf-dist/doc/latex/oberdiek/pdfcol-test2.tex | 53 ++ .../texmf-dist/doc/latex/oberdiek/pdfcol-test3.tex | 60 +++ Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf | Bin 0 -> 158106 bytes .../doc/latex/oberdiek/pdfcolfoot-test1.tex | 52 ++ .../texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf | Bin 135273 -> 143797 bytes Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf | Bin 161333 -> 161332 bytes .../doc/latex/oberdiek/pdfcolparallel-test1.tex | 79 +++ .../doc/latex/oberdiek/pdfcolparallel.pdf | Bin 0 -> 154332 bytes .../doc/latex/oberdiek/pdfcolparcolumns-test1.tex | 73 +++ .../doc/latex/oberdiek/pdfcolparcolumns.pdf | Bin 0 -> 147283 bytes Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf | Bin 164853 -> 164853 bytes .../doc/latex/oberdiek/pdfescape-test1.tex | 391 ++------------ .../doc/latex/oberdiek/pdfescape-test2.tex | 28 +- .../doc/latex/oberdiek/pdfescape-test3.tex | 18 +- .../doc/latex/oberdiek/pdfescape-test4.tex | 379 +++++++++++++ Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf | Bin 206853 -> 211708 bytes Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf | Bin 144331 -> 144331 bytes Master/texmf-dist/doc/latex/oberdiek/picture.pdf | Bin 142011 -> 142011 bytes Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf | Bin 182727 -> 182728 bytes Master/texmf-dist/doc/latex/oberdiek/refcount.pdf | Bin 135489 -> 135489 bytes .../doc/latex/oberdiek/selinput-test1.tex | 20 +- .../doc/latex/oberdiek/selinput-test2.tex | 20 +- .../doc/latex/oberdiek/selinput-test3.tex | 20 +- .../doc/latex/oberdiek/selinput-test4.tex | 12 +- .../doc/latex/oberdiek/selinput-test5.tex | 12 +- Master/texmf-dist/doc/latex/oberdiek/selinput.pdf | Bin 517077 -> 516819 bytes .../doc/latex/oberdiek/setouterhbox-example.tex | 3 +- .../doc/latex/oberdiek/setouterhbox-test1.tex | 75 +++ .../doc/latex/oberdiek/setouterhbox-test2.tex | 63 +++ .../texmf-dist/doc/latex/oberdiek/setouterhbox.pdf | Bin 165886 -> 172769 bytes Master/texmf-dist/doc/latex/oberdiek/settobox.pdf | Bin 143587 -> 143588 bytes .../doc/latex/oberdiek/soulutf8-test1.tex | 74 +++ .../doc/latex/oberdiek/soulutf8-test2.tex | 365 +++++++++++++ .../doc/latex/oberdiek/soulutf8-test3.tex | 377 +++++++++++++ .../doc/latex/oberdiek/soulutf8-test4.tex | 358 ++++++++++++ .../doc/latex/oberdiek/soulutf8-test5.tex | 370 +++++++++++++ Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf | Bin 0 -> 218887 bytes Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf | Bin 129620 -> 129620 bytes .../doc/latex/oberdiek/stringenc-test1.tex | 2 +- .../doc/latex/oberdiek/stringenc-test2.tex | 2 +- Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf | Bin 409704 -> 410699 bytes Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf | Bin 169044 -> 169045 bytes Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf | Bin 119401 -> 119401 bytes .../doc/latex/oberdiek/telprint-test1.tex | 74 +++ Master/texmf-dist/doc/latex/oberdiek/telprint.pdf | Bin 143765 -> 151195 bytes .../texmf-dist/doc/latex/oberdiek/transparent.pdf | Bin 126895 -> 126894 bytes Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf | Bin 137949 -> 137949 bytes Master/texmf-dist/doc/latex/oberdiek/zref.pdf | Bin 293230 -> 293230 bytes 123 files changed, 6525 insertions(+), 940 deletions(-) create mode 100644 Master/texmf-dist/doc/latex/oberdiek/alphalph-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/alphalph-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/alphalph-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/atbegshi-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/catchfile-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/embedfile-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/embedfile-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/embedfile-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/engord-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/etexcmds-test4.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/iflang-test4.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/iflang-test5.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/ifpdf-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/ifvtex-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/infwarerr-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/intcalc-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/intcalc-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/intcalc-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/intcalc-test4.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcol-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcol-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcol-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/pdfescape-test4.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8-test1.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8-test2.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8-test3.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8-test4.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8-test5.tex create mode 100644 Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf create mode 100644 Master/texmf-dist/doc/latex/oberdiek/telprint-test1.tex (limited to 'Master/texmf-dist/doc/latex/oberdiek') diff --git a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf index 916a2fe5693..d8f232c2205 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf and b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf index 2364cb21fce..5cb281e2c94 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test1.tex new file mode 100644 index 00000000000..0823d890246 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `alphalph-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% alphalph.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 1999, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file alphalph.dtx +%% and the derived files +%% alphalph.sty, alphalph.pdf, alphalph.ins, alphalph.drv, +%% alphalph-test1.tex, alphalph-test2.tex, alphalph-test3.tex. +%% +\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 alphalph.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `alphalph-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test2.tex new file mode 100644 index 00000000000..15c7c02052f --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test2.tex @@ -0,0 +1,250 @@ +%% +%% This is file `alphalph-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% alphalph.dtx (with options: `test2,etex') +%% +%% This is a generated file. +%% +%% Copyright (C) 1999, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file alphalph.dtx +%% and the derived files +%% alphalph.sty, alphalph.pdf, alphalph.ins, alphalph.drv, +%% alphalph-test1.tex, alphalph-test2.tex, alphalph-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\usepackage{alphalph}[2007/04/11] +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} + +\newcommand*{\TestCmd}[3]{% + \setbox0=\hbox{% + \edef\TestString{#1{#2}}% + \expandafter\Expect\expandafter{\TestString}{#3}% + \edef\TestString{#1{#2} }% + \expandafter\Expect\expandafter{\TestString}{#3 }% + }% + \Expect*{\the\wd0}{0.0pt}% +} + +\makeatletter +\newalphalph\LaTeXAlphAlph\@Alph{26} +\newalphalph\LaTeXalphalph\@alph{26} +\newalphalph\AlphWrap[wrap]\alphalph@Alph{26} +\newalphalph\alphwrap[wrap]\alphalph@alph{26} +\newalphalph\LaTeXAlphWrap[wrap]\@Alph{26} +\newalphalph\LaTeXalphwrap[wrap]\@alph{26} +\def\LastSymbol#1{% + \ifx\\#1\\% + \else + \@LastSymbol#1\@nil + \fi +} +\def\@LastSymbol#1#2\@nil{% + \ifx\\#2\\% + #1% + \else + \@LastSymbol#2\@nil + \fi +} +\makeatother +\newcommand*{\TestAlph}[2]{% + \uppercase{\TestCallCmd\AlphAlph{#2}}{#1}% + \lowercase{\TestCallCmd\alphalph{#2}}{#1}% + \uppercase{\TestCallCmd\LaTeXAlphAlph{#2}}{#1}% + \lowercase{\TestCallCmd\LaTeXalphalph{#2}}{#1}% + \edef\WrapString{\LastSymbol{#2}}% + \expandafter\TestAlphWrap\expandafter{\WrapString}{#1}% +} +\newcommand*{\TestAlphWrap}[2]{% + \uppercase{\TestCallCmd\AlphWrap{#1}}{#2}% + \lowercase{\TestCallCmd\alphwrap{#1}}{#2}% + \uppercase{\TestCallCmd\LaTeXAlphWrap{#1}}{#2}% + \lowercase{\TestCallCmd\LaTeXalphwrap{#1}}{#2}% +} +\newcommand*{\TestCallCmd}[3]{% + \TestCmd#1{#3}{#2}% +} +\begin{qstest}{AlphSymbols}{alphalph, AlphAlph, symbols} + \TestAlph{1}{a}% + \TestAlph{2}{b}% + \TestAlph{3}{c}% + \TestAlph{4}{d}% + \TestAlph{5}{e}% + \TestAlph{6}{f}% + \TestAlph{7}{g}% + \TestAlph{8}{h}% + \TestAlph{9}{i}% + \TestAlph{10}{j}% + \TestAlph{11}{k}% + \TestAlph{12}{l}% + \TestAlph{13}{m}% + \TestAlph{14}{n}% + \TestAlph{15}{o}% + \TestAlph{16}{p}% + \TestAlph{17}{q}% + \TestAlph{18}{r}% + \TestAlph{19}{s}% + \TestAlph{20}{t}% + \TestAlph{21}{u}% + \TestAlph{22}{v}% + \TestAlph{23}{w}% + \TestAlph{24}{x}% + \TestAlph{25}{y}% + \TestAlph{26}{z}% +\end{qstest} +\begin{qstest}{AlphRange}{alphalph, range} + \TestAlph{0}{}% + \TestAlph{-1}{}% + \TestAlph{-2147483647}{}% + \TestAlph{27}{aa}% + \TestAlph{28}{ab}% + \TestAlph{52}{az}% + \TestAlph{53}{ba}% + \TestAlph{78}{bz}% + \TestAlph{79}{ca}% + \TestAlph{702}{zz}% + \TestAlph{703}{aaa}% + \TestAlph{2147483647}{fxshrxw}% +\end{qstest} + +\makeatletter +\newcommand*{\myvocals}[1]{% + \ifcase#1X\or A\or E\or I\or O\or U\else Y\fi +} +\makeatother +\newalphalph\vocalsvocals\myvocals{5} +\newcommand*{\TestVocals}{% + \TestCmd\vocalsvocals +} +\begin{qstest}{vocals}{vocals} + \TestVocals{0}{}% + \TestVocals{1}{A}% + \TestVocals{2}{E}% + \TestVocals{3}{I}% + \TestVocals{4}{O}% + \TestVocals{5}{U}% + \TestVocals{6}{AA}% + \TestVocals{7}{AE}% + \TestVocals{8}{AI}% + \TestVocals{9}{AO}% + \TestVocals{10}{AU}% + \TestVocals{11}{EA}% + \TestVocals{24}{OO}% + \TestVocals{25}{OU}% + \TestVocals{26}{UA}% + \TestVocals{29}{UO}% + \TestVocals{30}{UU}% + \TestVocals{31}{AAA}% + \TestVocals{155}{UUU}% + \TestVocals{156}{AAAA}% + \TestVocals{2147483647}{AIIOOEEIOIIUOE}% +\end{qstest} + +\makeatletter +\newalphalph\AlphMult[mult]{\alphalph@Alph}{26} +\newalphalph\alphmult[mult]{\alphalph@alph}{26} +\newalphalph\LaTeXAlphMult[mult]{\@Alph}{26} +\newalphalph\LaTeXalphmult[mult]{\@alph}{26} +\makeatother +\newcommand*{\TestMult}[2]{% + \uppercase{\TestCallCmd\AlphMult{#2}}{#1}% + \lowercase{\TestCallCmd\alphmult{#2}}{#1}% + \uppercase{\TestCallCmd\LaTeXAlphMult{#2}}{#1}% + \lowercase{\TestCallCmd\LaTeXalphmult{#2}}{#1}% +} +\begin{qstest}{mult}{mult} + \TestMult{0}{}% + \TestMult{-1}{}% + \TestMult{-2147483647}{}% + \TestMult{1}{a}% + \TestMult{2}{b}% + \TestMult{26}{z}% + \TestMult{27}{aa}% + \TestMult{28}{bb}% + \TestMult{52}{zz}% + \TestMult{53}{aaa}% + \TestMult{54}{bbb}% + \TestMult{259}{yyyyyyyyyy}% + \TestMult{260}{zzzzzzzzzz}% + \TestMult{261}{aaaaaaaaaaa}% + \TestMult{262}{bbbbbbbbbbb}% +\end{qstest} + +\def\myvocalsB#1{% + \ifcase#1\or A\or E\or I\or O\or U\fi +} +\begin{qstest}{symbolnum}{symbolnum} + \makeatletter + \def\Test#1#2{% + \let\TestCmd\relax + \newalphalph\TestCmd{#1}{}% + \Expect*{\AlPh@Number}{#2}% + }% + \Test\@alph{26}% + \Test\@Alph{26}% + \Test\@fnsymbol{9}% + \Test\myvocalsB{5}% + \Test\alphalph@alph{26}% + \Test\alphalph@Alph{26}% +\end{qstest} + +\begin{qstest}{list}{list} + \makeatletter + \def\catch#1\relax{% + \def\FoundList{\catch#1}% + }% + \def\Test[#1]#2#3#4{% + \let\testcmd\relax + \newalphalph\testcmd[{#1}]{\catch}{#2}% + \testcmd{#3}|\relax + \expandafter\Expect\expandafter{\FoundList}{#4|}% + % + \let\SavedCatch\catch + \def\catch{\noexpand\catch\noexpand\foo}% + \edef\Result{#4|}% + \@onelevel@sanitize\Result + \let\catch\SavedCatch + \let\testcmd\relax + \newalphalph\testcmd[{#1}]{\catch\foo}{#2}% + \testcmd{#3}|\relax + \@onelevel@sanitize\FoundList + \Expect*{\FoundList}*{\Result}% + }% + \Test[alph]{26}{3}{\catch{3}}% + \Test[alph]{26}{12}{\catch{12}}% + \Test[alph]{26}{27}{\catch{1}\catch{1}}% + \Test[alph]{26}{78}{\catch{2}\catch{26}}% + \Test[wrap]{26}{7}{\catch{7}}% + \Test[wrap]{26}{14}{\catch{14}}% + \Test[wrap]{26}{80}{\catch{2}}% + \Test[wrap]{26}{700}{\catch{24}}% + \Test[mult]{26}{4}{\catch{4}}% + \Test[mult]{26}{17}{\catch{17}}% + \Test[mult]{26}{54}{\catch{2}\catch{2}\catch{2}}% +\end{qstest} + +\begin{document} +\end{document} +\endinput +%% +%% End of file `alphalph-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test3.tex new file mode 100644 index 00000000000..1fa4f8a53b7 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph-test3.tex @@ -0,0 +1,261 @@ +%% +%% This is file `alphalph-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% alphalph.dtx (with options: `test2,noetex') +%% +%% This is a generated file. +%% +%% Copyright (C) 1999, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file alphalph.dtx +%% and the derived files +%% alphalph.sty, alphalph.pdf, alphalph.ins, alphalph.drv, +%% alphalph-test1.tex, alphalph-test2.tex, alphalph-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\makeatletter +\let\saved@numexpr\numexpr +\newcommand*{\DisableNumexpr}{% + \let\numexpr\@undefined +} +\newcommand*{\RestoreNumexpr}{% + \let\numexpr\saved@numexpr +} +\DisableNumexpr +\usepackage{alphalph}[2007/04/11] +\RestoreNumexpr +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} + +\newcommand*{\TestCmd}[3]{% + \setbox0=\hbox{% + \DisableNumexpr + \edef\TestString{#1{#2}}% + \expandafter\Expect\expandafter{\TestString}{#3}% + \edef\TestString{#1{#2} }% + \expandafter\Expect\expandafter{\TestString}{#3 }% + }% + \Expect*{\the\wd0}{0.0pt}% +} + +\makeatletter +\newalphalph\LaTeXAlphAlph\@Alph{26} +\newalphalph\LaTeXalphalph\@alph{26} +\newalphalph\AlphWrap[wrap]\alphalph@Alph{26} +\newalphalph\alphwrap[wrap]\alphalph@alph{26} +\newalphalph\LaTeXAlphWrap[wrap]\@Alph{26} +\newalphalph\LaTeXalphwrap[wrap]\@alph{26} +\def\LastSymbol#1{% + \ifx\\#1\\% + \else + \@LastSymbol#1\@nil + \fi +} +\def\@LastSymbol#1#2\@nil{% + \ifx\\#2\\% + #1% + \else + \@LastSymbol#2\@nil + \fi +} +\makeatother +\newcommand*{\TestAlph}[2]{% + \uppercase{\TestCallCmd\AlphAlph{#2}}{#1}% + \lowercase{\TestCallCmd\alphalph{#2}}{#1}% + \uppercase{\TestCallCmd\LaTeXAlphAlph{#2}}{#1}% + \lowercase{\TestCallCmd\LaTeXalphalph{#2}}{#1}% + \edef\WrapString{\LastSymbol{#2}}% + \expandafter\TestAlphWrap\expandafter{\WrapString}{#1}% +} +\newcommand*{\TestAlphWrap}[2]{% + \uppercase{\TestCallCmd\AlphWrap{#1}}{#2}% + \lowercase{\TestCallCmd\alphwrap{#1}}{#2}% + \uppercase{\TestCallCmd\LaTeXAlphWrap{#1}}{#2}% + \lowercase{\TestCallCmd\LaTeXalphwrap{#1}}{#2}% +} +\newcommand*{\TestCallCmd}[3]{% + \TestCmd#1{#3}{#2}% +} +\begin{qstest}{AlphSymbols}{alphalph, AlphAlph, symbols} + \TestAlph{1}{a}% + \TestAlph{2}{b}% + \TestAlph{3}{c}% + \TestAlph{4}{d}% + \TestAlph{5}{e}% + \TestAlph{6}{f}% + \TestAlph{7}{g}% + \TestAlph{8}{h}% + \TestAlph{9}{i}% + \TestAlph{10}{j}% + \TestAlph{11}{k}% + \TestAlph{12}{l}% + \TestAlph{13}{m}% + \TestAlph{14}{n}% + \TestAlph{15}{o}% + \TestAlph{16}{p}% + \TestAlph{17}{q}% + \TestAlph{18}{r}% + \TestAlph{19}{s}% + \TestAlph{20}{t}% + \TestAlph{21}{u}% + \TestAlph{22}{v}% + \TestAlph{23}{w}% + \TestAlph{24}{x}% + \TestAlph{25}{y}% + \TestAlph{26}{z}% +\end{qstest} +\begin{qstest}{AlphRange}{alphalph, range} + \TestAlph{0}{}% + \TestAlph{-1}{}% + \TestAlph{-2147483647}{}% + \TestAlph{27}{aa}% + \TestAlph{28}{ab}% + \TestAlph{52}{az}% + \TestAlph{53}{ba}% + \TestAlph{78}{bz}% + \TestAlph{79}{ca}% + \TestAlph{702}{zz}% + \TestAlph{703}{aaa}% + \TestAlph{2147483647}{fxshrxw}% +\end{qstest} + +\makeatletter +\newcommand*{\myvocals}[1]{% + \ifcase#1X\or A\or E\or I\or O\or U\else Y\fi +} +\makeatother +\newalphalph\vocalsvocals\myvocals{5} +\newcommand*{\TestVocals}{% + \TestCmd\vocalsvocals +} +\begin{qstest}{vocals}{vocals} + \TestVocals{0}{}% + \TestVocals{1}{A}% + \TestVocals{2}{E}% + \TestVocals{3}{I}% + \TestVocals{4}{O}% + \TestVocals{5}{U}% + \TestVocals{6}{AA}% + \TestVocals{7}{AE}% + \TestVocals{8}{AI}% + \TestVocals{9}{AO}% + \TestVocals{10}{AU}% + \TestVocals{11}{EA}% + \TestVocals{24}{OO}% + \TestVocals{25}{OU}% + \TestVocals{26}{UA}% + \TestVocals{29}{UO}% + \TestVocals{30}{UU}% + \TestVocals{31}{AAA}% + \TestVocals{155}{UUU}% + \TestVocals{156}{AAAA}% + \TestVocals{2147483647}{AIIOOEEIOIIUOE}% +\end{qstest} + +\makeatletter +\newalphalph\AlphMult[mult]{\alphalph@Alph}{26} +\newalphalph\alphmult[mult]{\alphalph@alph}{26} +\newalphalph\LaTeXAlphMult[mult]{\@Alph}{26} +\newalphalph\LaTeXalphmult[mult]{\@alph}{26} +\makeatother +\newcommand*{\TestMult}[2]{% + \uppercase{\TestCallCmd\AlphMult{#2}}{#1}% + \lowercase{\TestCallCmd\alphmult{#2}}{#1}% + \uppercase{\TestCallCmd\LaTeXAlphMult{#2}}{#1}% + \lowercase{\TestCallCmd\LaTeXalphmult{#2}}{#1}% +} +\begin{qstest}{mult}{mult} + \TestMult{0}{}% + \TestMult{-1}{}% + \TestMult{-2147483647}{}% + \TestMult{1}{a}% + \TestMult{2}{b}% + \TestMult{26}{z}% + \TestMult{27}{aa}% + \TestMult{28}{bb}% + \TestMult{52}{zz}% + \TestMult{53}{aaa}% + \TestMult{54}{bbb}% + \TestMult{259}{yyyyyyyyyy}% + \TestMult{260}{zzzzzzzzzz}% + \TestMult{261}{aaaaaaaaaaa}% + \TestMult{262}{bbbbbbbbbbb}% +\end{qstest} + +\def\myvocalsB#1{% + \ifcase#1\or A\or E\or I\or O\or U\fi +} +\begin{qstest}{symbolnum}{symbolnum} + \makeatletter + \def\Test#1#2{% + \let\TestCmd\relax + \newalphalph\TestCmd{#1}{}% + \Expect*{\AlPh@Number}{#2}% + }% + \Test\@alph{26}% + \Test\@Alph{26}% + \Test\@fnsymbol{9}% + \Test\myvocalsB{5}% + \Test\alphalph@alph{26}% + \Test\alphalph@Alph{26}% +\end{qstest} + +\begin{qstest}{list}{list} + \makeatletter + \def\catch#1\relax{% + \def\FoundList{\catch#1}% + }% + \def\Test[#1]#2#3#4{% + \let\testcmd\relax + \newalphalph\testcmd[{#1}]{\catch}{#2}% + \testcmd{#3}|\relax + \expandafter\Expect\expandafter{\FoundList}{#4|}% + % + \let\SavedCatch\catch + \def\catch{\noexpand\catch\noexpand\foo}% + \edef\Result{#4|}% + \@onelevel@sanitize\Result + \let\catch\SavedCatch + \let\testcmd\relax + \newalphalph\testcmd[{#1}]{\catch\foo}{#2}% + \testcmd{#3}|\relax + \@onelevel@sanitize\FoundList + \Expect*{\FoundList}*{\Result}% + }% + \Test[alph]{26}{3}{\catch{3}}% + \Test[alph]{26}{12}{\catch{12}}% + \Test[alph]{26}{27}{\catch{1}\catch{1}}% + \Test[alph]{26}{78}{\catch{2}\catch{26}}% + \Test[wrap]{26}{7}{\catch{7}}% + \Test[wrap]{26}{14}{\catch{14}}% + \Test[wrap]{26}{80}{\catch{2}}% + \Test[wrap]{26}{700}{\catch{24}}% + \Test[mult]{26}{4}{\catch{4}}% + \Test[mult]{26}{17}{\catch{17}}% + \Test[mult]{26}{54}{\catch{2}\catch{2}\catch{2}}% +\end{qstest} + +\begin{document} +\end{document} +\endinput +%% +%% End of file `alphalph-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf index c1161c0179b..80b0d68e2a3 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf and b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-example.tex b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-example.tex index f5c3c2472ee..3d4b6eaf9f7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-example.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-example.tex @@ -26,7 +26,7 @@ %% and the derived files %% atbegshi.sty, atbegshi.pdf, atbegshi.ins, atbegshi.drv, %% atbegshi-example.tex, atbegshi-test1.tex, -%% atbegshi-test2.tex. +%% atbegshi-test2.tex, atbegshi-test3.tex. %% \documentclass[a4paper]{article} \usepackage{color} diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test1.tex index 8cc9ef75b31..b6677eb7b7c 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test1.tex @@ -26,100 +26,48 @@ %% and the derived files %% atbegshi.sty, atbegshi.pdf, atbegshi.ins, atbegshi.drv, %% atbegshi-example.tex, atbegshi-test1.tex, -%% atbegshi-test2.tex. +%% atbegshi-test2.tex, atbegshi-test3.tex. %% -\input atbegshi.sty\relax -\def\msg#{\immediate\write16} -\msg{File: atbegshi-test1.tex 2007/06/06 v1.5 Test file for plain-TeX} -\def\testmsg#1#2{% - \msg{}% - \msg{*** Test with box (#1), expected page output [#2]}% +\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 } - -\newbox\voidbox -\def\void{\box\voidbox} -\begingroup - \setbox\voidbox=\void -\endgroup - -\count0=0\relax -\AtBeginShipout{% - \global\advance\count0 by 1\relax - \msg{* Inside \string\AtBeginShipout: [\the\count0]}% -} - -\AtBeginShipoutFirst{% - \msg{* Inside \string\AtBeginShipoutFirst}% - Hello World% -} - -\testmsg{\string\null}{1} -\shipout\null - -\AtBeginShipoutFirst{% - This is too late% -} - -\testmsg{void}{} -\shipout\void - -\testmsg{\string\copy255 (not void)}{2} -\setbox255\hbox{\vrule height 10bp width 10bp} -\shipout\copy255 % - -\testmsg{\string\copy255 (again)}{3} -\shipout\copy255 % - -\testmsg{\string\box255}{4} -\shipout\box255 % - -\testmsg{\string\box255 (again)}{} -\shipout\box255 % - -\testmsg{\string\hbox}{5} -\shipout\hbox{\vrule height 5bp width 20bp} - -\testmsg{\string\vbox}{6} -\shipout\vbox{\hrule height 20bp width 5bp} - -\testmsg{\string\null, voided by hook}{} -\def\VoidBox{% - \begingroup - \setbox\AtBeginShipoutBox=\box\AtBeginShipoutBox - \endgroup +\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 atbegshi.sty\relax + \RestoreCatcodes } -\AtBeginShipout{\VoidBox} -\shipout\null -\def\VoidBox{} - -\msg{*** \string\begingroup} -\begingroup - \testmsg{void}{}% - \shipout\void -\msg{*** \string\endgroup} -\endgroup - -\msg{*** \string\begingroup} -\begingroup - \testmsg{void}{}% - \shipout\void - \testmsg{\string\null}{8}% - \shipout\null -\msg{*** \string\endgroup} -\endgroup - -\testmsg{output routine}{9} -Hello World -\vfill -\eject - -\testmsg{\string\null\space(discarded)}{} -\AtBeginShipout{% - \msg{* Inside \string\AtBeginShipout: DISCARD}% - \AtBeginShipoutDiscard -} -\shipout\null - +\Test +\csname @@end\endcsname \end \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test2.tex index 743a9656373..4ce167f48f6 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test2.tex @@ -26,50 +26,101 @@ %% and the derived files %% atbegshi.sty, atbegshi.pdf, atbegshi.ins, atbegshi.drv, %% atbegshi-example.tex, atbegshi-test1.tex, -%% atbegshi-test2.tex. +%% atbegshi-test2.tex, atbegshi-test3.tex. %% -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{atbegshi-test2.tex}[2007/06/06 v1.5 Test file for LaTeX] -\RequirePackage{color} -\pagecolor{yellow} -\documentclass[a5paper,showtrims]{memoir} -\usepackage{atbegshi} +\input atbegshi.sty\relax +\def\msg#{\immediate\write16} +\msg{File: atbegshi-test2.tex 2007/09/09 v1.6 Test file for plain-TeX} +\def\testmsg#1#2{% + \msg{}% + \msg{*** Test with box (#1), expected page output [#2]}% hash-ok +} + +\newbox\voidbox +\def\void{\box\voidbox} +\begingroup + \setbox\voidbox=\void +\endgroup + +\count0=0\relax \AtBeginShipout{% - \setbox\AtBeginShipoutBox=\vbox{% - \vbox to 0pt{% - \kern-1.5in % - \hbox to 0pt{% - \kern-1.5in % - \color{blue}% - \rule{1in}{1in}% - \hss - }% - \vss - }% - \hrule - \hbox{\vrule\box\AtBeginShipoutBox\vrule}% - \hrule - }% + \global\advance\count0 by 1\relax + \msg{* Inside \string\AtBeginShipout: [\the\count0]}% +} + +\AtBeginShipoutFirst{% + \msg{* Inside \string\AtBeginShipoutFirst}% + Hello World% +} + +\testmsg{\string\null}{1} +\shipout\null + +\AtBeginShipoutFirst{% + This is too late% } -\usepackage{eso-pic} -\makeatletter -\@EveryShipout@Init -\let\@EveryShipout@Init\relax -\makeatother -\AddToShipoutPicture{% - \hspace{.52\paperwidth}% - \colorbox{cyan}{% - \rule{0mm}{\paperheight}% - \hspace{.48\paperwidth}% - }% + +\testmsg{void}{} +\shipout\void + +\testmsg{\string\copy255 (not void)}{2} +\setbox255\hbox{\vrule height 10bp width 10bp} +\shipout\copy255 % + +\testmsg{\string\copy255 (again)}{3} +\shipout\copy255 % + +\testmsg{\string\box255}{4} +\shipout\box255 % + +\testmsg{\string\box255 (again)}{} +\shipout\box255 % + +\testmsg{\string\hbox}{5} +\shipout\hbox{\vrule height 5bp width 20bp} + +\testmsg{\string\vbox}{6} +\shipout\vbox{\hrule height 20bp width 5bp} + +\testmsg{\string\null, voided by hook}{} +\def\VoidBox{% + \begingroup + \setbox\AtBeginShipoutBox=\box\AtBeginShipoutBox + \endgroup +} +\AtBeginShipout{\VoidBox} +\shipout\null +\def\VoidBox{} + +\msg{*** \string\begingroup} +\begingroup + \testmsg{void}{}% + \shipout\void +\msg{*** \string\endgroup} +\endgroup + +\msg{*** \string\begingroup} +\begingroup + \testmsg{void}{}% + \shipout\void + \testmsg{\string\null}{8}% + \shipout\null +\msg{*** \string\endgroup} +\endgroup + +\testmsg{output routine}{9} +Hello World +\vfill +\eject + +\testmsg{\string\null\space(discarded)}{} +\AtBeginShipout{% + \msg{* Inside \string\AtBeginShipout: DISCARD}% + \AtBeginShipoutDiscard } -\expandafter\let\csname ver@crop.sty\endcsname\relax -\usepackage[color=red,cross,a4,center]{crop} -\begin{document} \shipout\null -\shipout\box\csname voidb@x\endcsname -\section{Hello World} -\end{document} + +\end \endinput %% %% End of file `atbegshi-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test3.tex new file mode 100644 index 00000000000..d8d20c078dd --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi-test3.tex @@ -0,0 +1,75 @@ +%% +%% This is file `atbegshi-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% atbegshi.dtx (with options: `test3') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file atbegshi.dtx +%% and the derived files +%% atbegshi.sty, atbegshi.pdf, atbegshi.ins, atbegshi.drv, +%% atbegshi-example.tex, atbegshi-test1.tex, +%% atbegshi-test2.tex, atbegshi-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{atbegshi-test3.tex}[2007/09/09 v1.6 Test file for LaTeX] +\RequirePackage{color} +\pagecolor{yellow} +\documentclass[a5paper,showtrims]{memoir} +\usepackage{atbegshi} +\AtBeginShipout{% + \setbox\AtBeginShipoutBox=\vbox{% + \vbox to 0pt{% + \kern-1.5in % + \hbox to 0pt{% + \kern-1.5in % + \color{blue}% + \rule{1in}{1in}% + \hss + }% + \vss + }% + \hrule + \hbox{\vrule\box\AtBeginShipoutBox\vrule}% + \hrule + }% +} +\usepackage{eso-pic} +\makeatletter +\@EveryShipout@Init +\let\@EveryShipout@Init\relax +\makeatother +\AddToShipoutPicture{% + \hspace{.52\paperwidth}% + \colorbox{cyan}{% + \rule{0mm}{\paperheight}% + \hspace{.48\paperwidth}% + }% +} +\expandafter\let\csname ver@crop.sty\endcsname\relax +\usepackage[color=red,cross,a4,center]{crop} +\begin{document} +\shipout\null +\shipout\box\csname voidb@x\endcsname +\section{Hello World} +\end{document} +\endinput +%% +%% End of file `atbegshi-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf index 43db6883a7c..e514d3da4ad 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf and b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf index bb6f440dc8b..c03fe6d863a 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf and b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf index a3d361aeec5..5b1c5a51921 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf and b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf index 2336e1dba84..df9b3d31017 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf and b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf index d300b3ebe0c..38a9d015985 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf and b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf index 26d7ca19070..bc3a7579cd7 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf and b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test1.tex index dfc71ac43e0..db2fbc18b9e 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/catchfile-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test1.tex @@ -25,31 +25,50 @@ %% This work consists of the main source file catchfile.dtx %% and the derived files %% catchfile.sty, catchfile.pdf, catchfile.ins, catchfile.drv, -%% catchfile-test1.tex, catchfile-test2.tex. +%% catchfile-test1.tex, catchfile-test2.tex, +%% catchfile-test3.tex. %% -\NeedsTeXFormat{LaTeX2e} -\nofiles -\listfiles -\documentclass{minimal} -\usepackage{catchfile}[2007/05/30] -\makeatletter -\def\mysetup{% - \let\do\@makeother - \dospecials -} -\makeatother -\begin{document} - -\CatchFileDef\contents{catchfile.sty}\mysetup -\typeout{\meaning\contents} +\catcode`\@=11 % +\def\RestoreCatcodes{} +\count@=0 % +\loop + \edef\RestoreCatcodes{% + \RestoreCatcodes + \catcode\the\count@=\the\catcode\count@\relax + }% +\ifnum\count@<255 % + \advance\count@\@ne +\repeat -\CatchFileEdef\contents{catchfile.sty}{% - \mysetup - \def\par{^^J}% - \obeylines +\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 catchfile.sty\relax + \RestoreCatcodes } -\typeout{\contents} -\end{document} +\Test +\csname @@end\endcsname +\end \endinput %% %% End of file `catchfile-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test2.tex index 3318eda5863..c3d195fb607 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/catchfile-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test2.tex @@ -25,31 +25,32 @@ %% This work consists of the main source file catchfile.dtx %% and the derived files %% catchfile.sty, catchfile.pdf, catchfile.ins, catchfile.drv, -%% catchfile-test1.tex, catchfile-test2.tex. +%% catchfile-test1.tex, catchfile-test2.tex, +%% catchfile-test3.tex. %% -\def\msg#{\immediate\write16} -\newlinechar=10 % -\input catchfile.sty\relax - +\NeedsTeXFormat{LaTeX2e} +\nofiles +\listfiles +\documentclass{minimal} +\usepackage{catchfile}[2007/09/09] +\makeatletter \def\mysetup{% - \def\do##1{% - \catcode`##1=12\relax - }% + \let\do\@makeother \dospecials } +\makeatother +\begin{document} \CatchFileDef\contents{catchfile.sty}\mysetup -\msg{\meaning\contents} +\typeout{\meaning\contents} \CatchFileEdef\contents{catchfile.sty}{% \mysetup \def\par{^^J}% \obeylines } -\msg{\contents} - -\csname @@end\endcsname -\end +\typeout{\contents} +\end{document} \endinput %% %% End of file `catchfile-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test3.tex new file mode 100644 index 00000000000..b5344616da6 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/catchfile-test3.tex @@ -0,0 +1,56 @@ +%% +%% This is file `catchfile-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% catchfile.dtx (with options: `test3') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file catchfile.dtx +%% and the derived files +%% catchfile.sty, catchfile.pdf, catchfile.ins, catchfile.drv, +%% catchfile-test1.tex, catchfile-test2.tex, +%% catchfile-test3.tex. +%% +\def\msg#{\immediate\write16} +\newlinechar=10 % +\input catchfile.sty\relax + +\def\mysetup{% + \def\do##1{% + \catcode`##1=12\relax + }% + \dospecials +} + +\CatchFileDef\contents{catchfile.sty}\mysetup +\msg{\meaning\contents} + +\CatchFileEdef\contents{catchfile.sty}{% + \mysetup + \def\par{^^J}% + \obeylines +} +\msg{\contents} + +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `catchfile-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf index df773d5741f..3a35aacfec7 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf and b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf index 989486d6012..20dd81068b3 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf and b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf index 77cc4136ab6..e6dfd612014 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf and b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf index 3e25dcf907a..2004fb73c0c 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf and b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf index 05f6c8584f2..878227378f8 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf and b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf index bfabaa232fa..8e4dc085b94 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf and b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile-example-plain.tex b/Master/texmf-dist/doc/latex/oberdiek/embedfile-example-plain.tex index 4b8bba0c252..f32ec34c201 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/embedfile-example-plain.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile-example-plain.tex @@ -25,7 +25,9 @@ %% This work consists of the main source file embedfile.dtx %% and the derived files %% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, -%% dtx-attach.sty, embedfile-example-plain.tex. +%% dtx-attach.sty, embedfile-example-plain.tex, +%% embedfile-test1.tex, embedfile-test2.tex, +%% embedfile-test3.tex. %% % Load packages \input miniltx diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test1.tex new file mode 100644 index 00000000000..97e77f68cd2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test1.tex @@ -0,0 +1,75 @@ +%% +%% This is file `embedfile-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% embedfile.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006, 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file embedfile.dtx +%% and the derived files +%% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +%% dtx-attach.sty, embedfile-example-plain.tex, +%% embedfile-test1.tex, embedfile-test2.tex, +%% embedfile-test3.tex. +%% +\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 embedfile.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `embedfile-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test2.tex new file mode 100644 index 00000000000..3ddfb6eaa83 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test2.tex @@ -0,0 +1,44 @@ +%% +%% This is file `embedfile-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% embedfile.dtx (with options: `test2') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006, 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file embedfile.dtx +%% and the derived files +%% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +%% dtx-attach.sty, embedfile-example-plain.tex, +%% embedfile-test1.tex, embedfile-test2.tex, +%% embedfile-test3.tex. +%% +\input embedfile.sty\relax +\embedfile[% + stringmethod=escape,% + mimetype=plain/text,% + desc={LaTeX docstrip source archive for package `embedfile'}% +]{embedfile.dtx} +\nopagenumbers +Test (plain-\TeX): {\tt embedfile.dtx} should be embedded.% +\embedfilefinish +\bye +\endinput +%% +%% End of file `embedfile-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test3.tex new file mode 100644 index 00000000000..b04fe415556 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile-test3.tex @@ -0,0 +1,43 @@ +%% +%% This is file `embedfile-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% embedfile.dtx (with options: `test3') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006, 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file embedfile.dtx +%% and the derived files +%% embedfile.sty, embedfile.pdf, embedfile.ins, embedfile.drv, +%% dtx-attach.sty, embedfile-example-plain.tex, +%% embedfile-test1.tex, embedfile-test2.tex, +%% embedfile-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\let\SavedJobname\jobname +\def\jobname{embedfile} +\RequirePackage{dtx-attach}[2007/09/09] +\let\jobname\SavedJobname +\documentclass{minimal} +\begin{document} + Test (\LaTeX): \texttt{embedfile.dtx} should be embedded.% +\end{document} +\endinput +%% +%% End of file `embedfile-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf index cb373c95b9e..16879df7209 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf and b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/engord-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/engord-test1.tex new file mode 100644 index 00000000000..329ce58e477 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/engord-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `engord-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% engord.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2000, 2003, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file engord.dtx +%% and the derived files +%% engord.sty, engord.pdf, engord.ins, engord.drv, +%% engord-test1.tex. +%% +\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 engord.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `engord-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf index cd26e0fd41a..491fe2b0317 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf and b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf index 9839a87e8a6..473b244bf42 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf and b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test1.tex index 0ec94b6e822..6812abb9a5c 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test1.tex @@ -25,17 +25,49 @@ %% This work consists of the main source file etexcmds.dtx %% and the derived files %% etexcmds.sty, etexcmds.pdf, etexcmds.ins, etexcmds.drv, -%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex. +%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex, +%% etexcmds-test4.tex. %% -\immediate\write16{etexcmds-test1.tex: test file for plainTeX} -\input etexcmds.sty\relax \catcode`\@=11 % -\edef\x{\string\unexpanded} -\edef\y{\meaning\etex@unexpanded} -\ifx\x\y -\else - \@PackageError{etexcmds-test1}{Test failed}\@ehc -\fi +\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 etexcmds.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname \end \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test2.tex index 8fd244c79d2..02e5af69e34 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test2.tex @@ -25,19 +25,19 @@ %% This work consists of the main source file etexcmds.dtx %% and the derived files %% etexcmds.sty, etexcmds.pdf, etexcmds.ins, etexcmds.drv, -%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex. +%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex, +%% etexcmds-test4.tex. %% -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{etexcmds-test2.tex}[2007/05/06 v1.0 Test file for LaTeX] -\RequirePackage{etexcmds} -\makeatletter +\immediate\write16{etexcmds-test2.tex: test file for plainTeX} +\input etexcmds.sty\relax +\catcode`\@=11 % \edef\x{\string\unexpanded} \edef\y{\meaning\etex@unexpanded} \ifx\x\y \else \@PackageError{etexcmds-test2}{Test failed}\@ehc \fi -\stop +\end \endinput %% %% End of file `etexcmds-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test3.tex index 1aacdd3fb4d..da5c70f24ba 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test3.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test3.tex @@ -25,26 +25,18 @@ %% This work consists of the main source file etexcmds.dtx %% and the derived files %% etexcmds.sty, etexcmds.pdf, etexcmds.ins, etexcmds.drv, -%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex. +%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex, +%% etexcmds-test4.tex. %% \NeedsTeXFormat{LaTeX2e} -\ProvidesFile{etexcmds-test3.tex}[2007/05/06 v1.0 Test file for LaTeX] -\documentclass{article} -\usepackage{m-pictex} -\usepackage{m-ch-de} -\usepackage{etexcmds} +\ProvidesFile{etexcmds-test3.tex}[2007/09/09 v1.1 Test file for LaTeX] +\RequirePackage{etexcmds} \makeatletter -\ifetex@unexpanded - \edef\x{\string\unexpanded}% - \edef\y{\meaning\etex@unexpanded}% - \ifx\x\y - \else - \@PackageWarningNoLine{etexcmds-test3}{Test failed}% - \fi +\edef\x{\string\unexpanded} +\edef\y{\meaning\etex@unexpanded} +\ifx\x\y \else - \@PackageWarningNoLine{etexcmds-test3}{% - Test failed because of ConTeXt% - }% + \@PackageError{etexcmds-test3}{Test failed}\@ehc \fi \stop \endinput diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test4.tex new file mode 100644 index 00000000000..d17a4c7dd95 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds-test4.tex @@ -0,0 +1,53 @@ +%% +%% This is file `etexcmds-test4.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% etexcmds.dtx (with options: `test4') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file etexcmds.dtx +%% and the derived files +%% etexcmds.sty, etexcmds.pdf, etexcmds.ins, etexcmds.drv, +%% etexcmds-test1.tex, etexcmds-test2.tex, etexcmds-test3.tex, +%% etexcmds-test4.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{etexcmds-test4.tex}[2007/09/09 v1.1 Test file for LaTeX] +\documentclass{article} +\usepackage{m-pictex} +\usepackage{m-ch-de} +\usepackage{etexcmds} +\makeatletter +\ifetex@unexpanded + \edef\x{\string\unexpanded}% + \edef\y{\meaning\etex@unexpanded}% + \ifx\x\y + \else + \@PackageWarningNoLine{etexcmds-test4}{Test failed}% + \fi +\else + \@PackageWarningNoLine{etexcmds-test4}{% + Test failed because of ConTeXt% + }% +\fi +\stop +\endinput +%% +%% End of file `etexcmds-test4.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf index c064896dfdb..df64101c42d 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf and b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf index edbd0669afa..dca6f662d3d 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf and b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf index 75bd514a8ff..4300cbcfd67 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf and b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf index 213da2bcde7..f0bd0b4382d 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf and b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf index 98d24cfb311..886869ff5fd 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf index a7dd4a13dfa..0f11ac7e7f1 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf index 8a2db6f0c6f..e0eff055795 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf index 2819ccc514e..f07ab610914 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf index 54a583dc60e..cc9da5e337d 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf and b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf index f7de5721375..5c8482788c0 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/iflang-test1.tex index fe588f78abd..19fe407c9f9 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/iflang-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang-test1.tex @@ -25,48 +25,50 @@ %% This work consists of the main source file iflang.dtx %% and the derived files %% iflang.sty, iflang.pdf, iflang.ins, iflang.drv, -%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex. +%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex, +%% iflang-test4.tex, iflang-test5.tex. %% -\NeedsTeXFormat{LaTeX2e} -\nofiles -\documentclass{minimal} -\usepackage{qstest} -\IncludeTests{*} -\LogTests{log}{*}{*} -\usepackage[english,naustrian,ngerman]{babel} -\usepackage{iflang} -\begin{document} -\begin{qstest}{IfLanguagePatterns}{language, pattern} - \def\test#1#2{% - \Expect*{\IfLanguagePatterns{#1}{true}{false}}{#2}% +\catcode`\@=11 % +\def\RestoreCatcodes{} +\count@=0 % +\loop + \edef\RestoreCatcodes{% + \RestoreCatcodes + \catcode\the\count@=\the\catcode\count@\relax }% - \test{ngerman}{true}% - \test{naustrian}{true}% - \test{english}{false}% - \test{foobar}{false}% -\end{qstest} -\begin{qstest}{IfLanguageName}{language, name} - \def\test#1#2{% - \Expect*{\IfLanguageName{#1}{true}{false}}{#2}% - }% - \test{ngerman}{true}% - \test{naustrian}{false}% - \selectlanguage{naustrian}% - \test{ngerman}{false}% - \test{naustrian}{true}% - \test{foobar}{false}% -\end{qstest} -\begin{qstest}{IfDefined}{defined} - \makeatletter - \let\foobar\relax - \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% - \Expect*{\ifx\foobar\relax true\else false\fi}{true}% - \let\foobar\UNDEFINED - \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% - \Expect*{\ifx\foobar\relax true\else false\fi}{false}% - \Expect*{\ifx\foobar\UNDEFINED true\else false\fi}{true}% -\end{qstest} -\end{document} +\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 iflang.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end \endinput %% %% End of file `iflang-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/iflang-test2.tex index 93afe55d192..6dc72d704eb 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/iflang-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang-test2.tex @@ -25,41 +25,83 @@ %% This work consists of the main source file iflang.dtx %% and the derived files %% iflang.sty, iflang.pdf, iflang.ins, iflang.drv, -%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex. +%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex, +%% iflang-test4.tex, iflang-test5.tex. %% -%% Format `etex' based on `language.def' -\input iflang.sty -\catcode64=12 - -\def\TestGeneric#1#2#3{% - \begingroup - \edef\x{#1{#2}{true}{false}}% - \edef\y{#3}% - \ifx\x\y - \else - \errmessage{Failed test: \string#1{#2} <> #3}% - \fi - \endgroup -} -\def\TestPatterns{\TestGeneric\IfLanguagePatterns} -\def\TestName{\TestGeneric\IfLanguageName} - -\TestPatterns{USenglish}{true} -\TestPatterns{ngerman}{false} - -\TestName{USenglish}{true} -\TestName{ngerman}{false} - -\uselanguage{ngerman} - -\TestPatterns{USenglish}{false} -\TestPatterns{ngerman}{true} - -\TestName{USenglish}{false} -\TestName{ngerman}{true} - -\csname @@end\endcsname -\end +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{minimal} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\usepackage[english,naustrian,ngerman]{babel} +\usepackage{iflang} +\begin{document} +\begin{qstest}{IfLanguagePatterns}{language, pattern} + \def\test#1#2{% + \Expect*{\IfLanguagePatterns{#1}{true}{false}}{#2}% + }% + \test{ngerman}{true}% + \test{naustrian}{true}% + \test{english}{false}% + \test{foobar}{false}% +\end{qstest} +\begin{qstest}{IfLanguageName}{language, name} + \def\test#1#2{% + \Expect*{\IfLanguageName{#1}{true}{false}}{#2}% + }% + \test{ngerman}{true}% + \test{naustrian}{false}% + \selectlanguage{naustrian}% + \test{ngerman}{false}% + \test{naustrian}{true}% + \test{foobar}{false}% + % + \def\languagename{naustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \edef\languagename{\string naustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \def\languagename{naustrian}% + \makeatletter + \@onelevel@sanitize\languagename + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \def\languagename{naustrian}% + \def\xaustrian{naustrian}% + \def\xgerman{ngerman}% + \test{\xaustrian}{true}% + \test{\xgerman}{false}% + % + \def\languagename{\xaustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + \test{\xaustrian}{true}% + \test{\xgerman}{false}% + \test{\languagename}{true}% + \test{\languagename\space}{false}% + % + \def\languagename{\empty\xaustrian\empty}% + \test{naustrian}{true}% + \test{ngerman}{false}% + \test{\empty\xaustrian\empty}{true}% + \test{\empty\xgerman\empty}{false}% +\end{qstest} +\begin{qstest}{IfDefined}{defined} + \makeatletter + \let\foobar\relax + \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% + \Expect*{\ifx\foobar\relax true\else false\fi}{true}% + \let\foobar\UNDEFINED + \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% + \Expect*{\ifx\foobar\relax true\else false\fi}{false}% + \Expect*{\ifx\foobar\UNDEFINED true\else false\fi}{true}% +\end{qstest} +\end{document} \endinput %% %% End of file `iflang-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/iflang-test3.tex index 9c62d2115a1..667bd85afac 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/iflang-test3.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang-test3.tex @@ -25,68 +25,84 @@ %% This work consists of the main source file iflang.dtx %% and the derived files %% iflang.sty, iflang.pdf, iflang.ins, iflang.drv, -%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex. +%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex, +%% iflang-test4.tex, iflang-test5.tex. %% -%% Format `tex' (vanilla plain-TeX) -\let\ifcsname\UNDEFINED -\let\pdfstrcmp\UNDEFINED -\input iflang.sty -\catcode64=11 - -\def\TestDefined#1{% - \IfLang@IfDefined{foobar}{}{}% - \ifx\foobar#1% - \else - \errmessage{Failed test: \string\foobar <> \string#1}% - \fi -} -\let\foobar\relax -\TestDefined\relax -\let\foobar\UNDEFINED -\TestDefined\relax - -\def\strip@prefix#1>{} -\def\@onelevel@sanitize#1{% - \edef#1{\expandafter\strip@prefix\meaning#1}% -} -\def\TestCompare#1#2#3{% - \begingroup - \edef\x{% - \if\IfLang@StrEqual{#1}{#2}% - true% - \else - false% - \fi - }% - \def\expect{#3}% - \ifx\x\expect - \else - \def\a{#1}% - \@onelevel@sanitize\a - \def\b{#2}% - \@onelevel@sanitize\b - \errmessage{Failed test: `\a'='\b' <> \expect}% - \fi - \endgroup -} -\TestCompare{junk}{junk}{true} -\TestCompare{}{}{true} -\TestCompare{a}{b}{false} -\TestCompare{aa}{bb}{false} -\def\a{ax} -\def\b{bx} -\def\c{\a\b} -\def\d{\c\b} -\def\exch#1#2{#2#1} -\def\gobble#1{} -\TestCompare{\gobble a}{}{true} -\TestCompare{}{\gobble a}{true} -\TestCompare{a\exch xyb}{ayxb}{true} -\TestCompare{\c}{\c}{true} -\TestCompare{\d}{\c\b}{true} - -\csname @@end\endcsname -\end +\NeedsTeXFormat{LaTeX2e} +\let\pdfstrcmp\relax +\nofiles +\documentclass{minimal} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\usepackage[english,naustrian,ngerman]{babel} +\usepackage{iflang} +\begin{document} +\begin{qstest}{IfLanguagePatterns}{language, pattern} + \def\test#1#2{% + \Expect*{\IfLanguagePatterns{#1}{true}{false}}{#2}% + }% + \test{ngerman}{true}% + \test{naustrian}{true}% + \test{english}{false}% + \test{foobar}{false}% +\end{qstest} +\begin{qstest}{IfLanguageName}{language, name} + \def\test#1#2{% + \Expect*{\IfLanguageName{#1}{true}{false}}{#2}% + }% + \test{ngerman}{true}% + \test{naustrian}{false}% + \selectlanguage{naustrian}% + \test{ngerman}{false}% + \test{naustrian}{true}% + \test{foobar}{false}% + % + \def\languagename{naustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \edef\languagename{\string naustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \def\languagename{naustrian}% + \makeatletter + \@onelevel@sanitize\languagename + \test{naustrian}{true}% + \test{ngerman}{false}% + % + \def\languagename{naustrian}% + \def\xaustrian{naustrian}% + \def\xgerman{ngerman}% + \test{\xaustrian}{true}% + \test{\xgerman}{false}% + % + \def\languagename{\xaustrian}% + \test{naustrian}{true}% + \test{ngerman}{false}% + \test{\xaustrian}{true}% + \test{\xgerman}{false}% + \test{\languagename}{true}% + \test{\languagename\space}{false}% + % + \def\languagename{\empty\xaustrian\empty}% + \test{naustrian}{true}% + \test{ngerman}{false}% + \test{\empty\xaustrian\empty}{true}% + \test{\empty\xgerman\empty}{false}% +\end{qstest} +\begin{qstest}{IfDefined}{defined} + \makeatletter + \let\foobar\relax + \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% + \Expect*{\ifx\foobar\relax true\else false\fi}{true}% + \let\foobar\UNDEFINED + \Expect*{\IfLang@IfDefined{foobar}{true}{false}}{false}% + \Expect*{\ifx\foobar\relax true\else false\fi}{false}% + \Expect*{\ifx\foobar\UNDEFINED true\else false\fi}{true}% +\end{qstest} +\end{document} \endinput %% %% End of file `iflang-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/iflang-test4.tex new file mode 100644 index 00000000000..b89af71f3dd --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang-test4.tex @@ -0,0 +1,66 @@ +%% +%% This is file `iflang-test4.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% iflang.dtx (with options: `test4') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file iflang.dtx +%% and the derived files +%% iflang.sty, iflang.pdf, iflang.ins, iflang.drv, +%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex, +%% iflang-test4.tex, iflang-test5.tex. +%% +%% Format `etex' based on `language.def' +\input iflang.sty +\catcode64=12 + +\def\TestGeneric#1#2#3{% + \begingroup + \edef\x{#1{#2}{true}{false}}% + \edef\y{#3}% + \ifx\x\y + \else + \errmessage{Failed test: \string#1{#2} <> #3}% + \fi + \endgroup +} +\def\TestPatterns{\TestGeneric\IfLanguagePatterns} +\def\TestName{\TestGeneric\IfLanguageName} + +\TestPatterns{USenglish}{true} +\TestPatterns{ngerman}{false} + +\TestName{USenglish}{true} +\TestName{ngerman}{false} + +\uselanguage{ngerman} + +\TestPatterns{USenglish}{false} +\TestPatterns{ngerman}{true} + +\TestName{USenglish}{false} +\TestName{ngerman}{true} + +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `iflang-test4.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang-test5.tex b/Master/texmf-dist/doc/latex/oberdiek/iflang-test5.tex new file mode 100644 index 00000000000..aa5d69fbdc4 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang-test5.tex @@ -0,0 +1,93 @@ +%% +%% This is file `iflang-test5.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% iflang.dtx (with options: `test5') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file iflang.dtx +%% and the derived files +%% iflang.sty, iflang.pdf, iflang.ins, iflang.drv, +%% iflang-test1.tex, iflang-test2.tex, iflang-test3.tex, +%% iflang-test4.tex, iflang-test5.tex. +%% +%% Format `tex' (vanilla plain-TeX) +\let\ifcsname\UNDEFINED +\let\pdfstrcmp\UNDEFINED +\input iflang.sty +\catcode64=11 + +\def\TestDefined#1{% + \IfLang@IfDefined{foobar}{}{}% + \ifx\foobar#1% + \else + \errmessage{Failed test: \string\foobar <> \string#1}% + \fi +} +\let\foobar\relax +\TestDefined\relax +\let\foobar\UNDEFINED +\TestDefined\relax + +\def\strip@prefix#1>{} +\def\@onelevel@sanitize#1{% + \edef#1{\expandafter\strip@prefix\meaning#1}% +} +\def\TestCompare#1#2#3{% + \begingroup + \edef\x{% + \if\IfLang@StrEqual{#1}{#2}% + true% + \else + false% + \fi + }% + \def\expect{#3}% + \ifx\x\expect + \else + \def\a{#1}% + \@onelevel@sanitize\a + \def\b{#2}% + \@onelevel@sanitize\b + \errmessage{Failed test: `\a'='\b' <> \expect}% + \fi + \endgroup +} +\TestCompare{junk}{junk}{true} +\TestCompare{}{}{true} +\TestCompare{a}{b}{false} +\TestCompare{aa}{bb}{false} +\def\a{ax} +\def\b{bx} +\def\c{\a\b} +\def\d{\c\b} +\def\exch#1#2{#2#1} +\def\gobble#1{} +\TestCompare{\gobble a}{}{true} +\TestCompare{}{\gobble a}{true} +\TestCompare{a\exch xyb}{ayxb}{true} +\TestCompare{\c}{\c}{true} +\TestCompare{\d}{\c\b}{true} + +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `iflang-test5.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf index b763fbb306f..114445b261a 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf and b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifpdf-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/ifpdf-test1.tex new file mode 100644 index 00000000000..a34a9e296e8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/ifpdf-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `ifpdf-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ifpdf.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2001, 2005, 2006 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file ifpdf.dtx +%% and the derived files +%% ifpdf.sty, ifpdf.pdf, ifpdf.ins, ifpdf.drv, +%% ifpdf-test1.tex. +%% +\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 ifpdf.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `ifpdf-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf index ea397c00459..d86aac82fac 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifvtex-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/ifvtex-test1.tex new file mode 100644 index 00000000000..3f8329bdbf5 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/ifvtex-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `ifvtex-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% ifvtex.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2001, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file ifvtex.dtx +%% and the derived files +%% ifvtex.sty, ifvtex.pdf, ifvtex.ins, ifvtex.drv, +%% ifvtex-test1.tex. +%% +\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 ifvtex.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `ifvtex-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf index fecbaf14fa2..13118cfc8eb 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf and b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test1.tex index 50561278fd1..39fe9a2f27f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test1.tex @@ -25,188 +25,49 @@ %% This work consists of the main source file infwarerr.dtx %% and the derived files %% infwarerr.sty, infwarerr.pdf, infwarerr.ins, infwarerr.drv, -%% infwarerr-test1.tex, infwarerr-test2.tex. +%% infwarerr-test1.tex, infwarerr-test2.tex, +%% infwarerr-test3.tex. %% -\let\PackageInfo\relax -\input infwarerr.sty\relax -\let\OrgWrite\write -\chardef\WriteUnused=16 % -\def\msg#{\immediate\OrgWrite\WriteUnused} -\msg{File: infwarerr-test1.tex 2007/06/14 v1.1 Test file for plain-TeX} -\catcode64=11 % -\def\pkgname{PACKAGE} -\def\clsname{CLASS} -\def\msgtext{MESSAGE\MessageBreak SECOND LINE} -\def\hlptext{HELP\MessageBreak SECOND LINE} - -\let\OrgWrite\write -\let\OrgErrMessage\errmessage - -\def\write#1#{% - \@write{#1}% -} -\def\@write#1#2{% - \OrgWrite#1{#2}% - \xdef\WriteNum{\number#1}% - \xdef\WriteText{#2}% -} -\def\TestFailed#1#2{% - \OrgErrMessage{Test (\string#1) failed: #2}% -} -\def\TestWrite#1#2#3{% - \ifnum\WriteNum=#2\relax - \else - \TestFailed#1{write stream number: \WriteNum <> #2}% - \fi - \begingroup - \let~\space - \edef\TestString{#3}% - \ifx\WriteText\TestString - \else - \msg{}% - \msg{[\WriteText]}% - \msg{<>}% - \msg{[#3]}% hash-ok - \TestFailed#1{write text}% - \fi - \endgroup -} -\newtoks\ErrHelpToks -\def\errmessage#1{% - \global\ErrHelpToks=\expandafter{\the\errhelp}% - \msg{**************** error message ****************}% - \msg{! #1}% - \msg{**************** help message *****************}% - \msg{\the\errhelp}% - \msg{***********************************************}% - \xdef\ErrMessage{! #1}% -} -\def\TestInfo{% - \@PackageInfo\pkgname\msgtext - \TestWrite\@PackageInfo{-1}{% - Package PACKAGE Info: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% - }% - \@PackageInfoNoLine\pkgname\msgtext - \TestWrite\@PackageInfoNoLine{-1}{% - Package PACKAGE Info: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~SECOND LINE.% - }% - \@ClassInfo\clsname\msgtext - \TestWrite\@ClassInfo{-1}{% - Class CLASS Info: MESSAGE^^J% - (CLASS)~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% - }% - \@ClassInfoNoLine\clsname\msgtext - \TestWrite\@ClassInfoNoLine{-1}{% - Class CLASS Info: MESSAGE^^J% - (CLASS)~~~~~~~~~~~SECOND LINE.% - }% -} -\def\TestWarning{% - \@PackageWarning\pkgname\msgtext - \TestWrite\@PackageWarning\WriteUnused{% - ^^J% - Package PACKAGE Warning: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% - ^^J% - }% - \@PackageWarningNoLine\pkgname\msgtext - \TestWrite\@PackageWarningNoLine\WriteUnused{% - ^^J% - Package PACKAGE Warning: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.% - ^^J% - }% - \@ClassWarning\clsname\msgtext - \TestWrite\@ClassWarning\WriteUnused{% - ^^J% - Class CLASS Warning: MESSAGE^^J% - (CLASS)~~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% - ^^J% - }% - \@ClassWarningNoLine\clsname\msgtext - \TestWrite\@ClassWarningNoLine\WriteUnused{% - ^^J% - Class CLASS Warning: MESSAGE^^J% - (CLASS)~~~~~~~~~~~~~~SECOND LINE.% - ^^J% - }% -} -\def\TestError{% - \def\plaindots{.^^J ...^^J} - \@PackageError\pkgname\msgtext\hlptext - \@TestError\@PackageError{% - ! Package PACKAGE Error: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% - ^^J% - See the PACKAGE package documentation for explanation.^^J% - Type~~H ~~for immediate help\plaindots - }{% - HELP^^J% - SECOND LINE% - }% - \@ClassError\clsname\msgtext\hlptext - \@TestError\@ClassError{% - ! Class CLASS Error: MESSAGE^^J% - (CLASS)~~~~~~~~~~~~~~SECOND LINE.^^J% - ^^J% - See the CLASS class documentation for explanation.^^J% - Type~~H ~~for immediate help\plaindots - }{% - HELP^^J% - SECOND LINE% - }% - \@PackageError\pkgname\msgtext\@ehc - \@TestError\@PackageError{% - ! Package PACKAGE Error: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% - ^^J% - See the PACKAGE package documentation for explanation.^^J% - Type~~H ~~for immediate help\plaindots - }{% - Try typing~~~~to proceed.^^J% - If that doesn't work, type~~X ~~to quit.% - }% - \@PackageError\pkgname\msgtext\@ehd - \@TestError\@PackageError{% - ! Package PACKAGE Error: MESSAGE^^J% - (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% - ^^J% - See the PACKAGE package documentation for explanation.^^J% - Type~~H ~~for immediate help\plaindots - }{% - You're in trouble here.~~Try typing~~~~to proceed.^^J% - If that doesn't work, type~~X ~~to quit.% +\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\@TestError#1#2#3{% - \begingroup - \let~\space - \edef\x{#2}% - \ifx\x\ErrMessage - \else - \msg{}% - \msg{[\ErrMessage]}% - \msg{<>}% - \msg{[\x]}% - \TestFailed#1{errmessage text}% - \fi - \edef\x{\the\ErrHelpToks}% - \edef\y{#3}% - \ifx\x\y - \else - \msg{}% - \msg{[\the\ErrHelpToks]}% - \msg{<>}% - \msg{[\y]}% - \TestFailed#1{errhelp text}% - \fi - \endgroup +\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 infwarerr.sty\relax + \RestoreCatcodes } -\TestInfo -\TestWarning -\TestError +\Test +\csname @@end\endcsname \end \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test2.tex index 642924a9737..e40eb3897ef 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test2.tex @@ -25,15 +25,16 @@ %% This work consists of the main source file infwarerr.dtx %% and the derived files %% infwarerr.sty, infwarerr.pdf, infwarerr.ins, infwarerr.drv, -%% infwarerr-test1.tex, infwarerr-test2.tex. +%% infwarerr-test1.tex, infwarerr-test2.tex, +%% infwarerr-test3.tex. %% -\NeedsTeXFormat{LaTeX2e} -\ProvidesFile{infwarerr-test2.tex}[2007/06/14 v1.1 Test file for LaTeX] -\RequirePackage{infwarerr} -\makeatletter +\let\PackageInfo\relax +\input infwarerr.sty\relax \let\OrgWrite\write -\chardef\WriteUnused=\@unused +\chardef\WriteUnused=16 % \def\msg#{\immediate\OrgWrite\WriteUnused} +\msg{File: infwarerr-test2.tex 2007/09/09 v1.2 Test file for plain-TeX} +\catcode64=11 % \def\pkgname{PACKAGE} \def\clsname{CLASS} \def\msgtext{MESSAGE\MessageBreak SECOND LINE} @@ -134,8 +135,7 @@ }% } \def\TestError{% - \let\write\OrgWrite - \def\plaindots{} + \def\plaindots{.^^J ...^^J} \@PackageError\pkgname\msgtext\hlptext \@TestError\@PackageError{% ! Package PACKAGE Error: MESSAGE^^J% @@ -185,8 +185,6 @@ \begingroup \let~\space \edef\x{#2}% - \@onelevel@sanitize\x - \@onelevel@sanitize\ErrMessage \ifx\x\ErrMessage \else \msg{}% @@ -210,7 +208,7 @@ \TestInfo \TestWarning \TestError -\@@end +\end \endinput %% %% End of file `infwarerr-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test3.tex new file mode 100644 index 00000000000..4159934123d --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/infwarerr-test3.tex @@ -0,0 +1,217 @@ +%% +%% This is file `infwarerr-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% infwarerr.dtx (with options: `test3') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file infwarerr.dtx +%% and the derived files +%% infwarerr.sty, infwarerr.pdf, infwarerr.ins, infwarerr.drv, +%% infwarerr-test1.tex, infwarerr-test2.tex, +%% infwarerr-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\ProvidesFile{infwarerr-test3.tex}[2007/09/09 v1.2 Test file for LaTeX] +\RequirePackage{infwarerr}[2007/09/09] +\makeatletter +\let\OrgWrite\write +\chardef\WriteUnused=\@unused +\def\msg#{\immediate\OrgWrite\WriteUnused} +\def\pkgname{PACKAGE} +\def\clsname{CLASS} +\def\msgtext{MESSAGE\MessageBreak SECOND LINE} +\def\hlptext{HELP\MessageBreak SECOND LINE} + +\let\OrgWrite\write +\let\OrgErrMessage\errmessage + +\def\write#1#{% + \@write{#1}% +} +\def\@write#1#2{% + \OrgWrite#1{#2}% + \xdef\WriteNum{\number#1}% + \xdef\WriteText{#2}% +} +\def\TestFailed#1#2{% + \OrgErrMessage{Test (\string#1) failed: #2}% +} +\def\TestWrite#1#2#3{% + \ifnum\WriteNum=#2\relax + \else + \TestFailed#1{write stream number: \WriteNum <> #2}% + \fi + \begingroup + \let~\space + \edef\TestString{#3}% + \ifx\WriteText\TestString + \else + \msg{}% + \msg{[\WriteText]}% + \msg{<>}% + \msg{[#3]}% hash-ok + \TestFailed#1{write text}% + \fi + \endgroup +} +\newtoks\ErrHelpToks +\def\errmessage#1{% + \global\ErrHelpToks=\expandafter{\the\errhelp}% + \msg{**************** error message ****************}% + \msg{! #1}% + \msg{**************** help message *****************}% + \msg{\the\errhelp}% + \msg{***********************************************}% + \xdef\ErrMessage{! #1}% +} +\def\TestInfo{% + \@PackageInfo\pkgname\msgtext + \TestWrite\@PackageInfo{-1}{% + Package PACKAGE Info: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% + }% + \@PackageInfoNoLine\pkgname\msgtext + \TestWrite\@PackageInfoNoLine{-1}{% + Package PACKAGE Info: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~SECOND LINE.% + }% + \@ClassInfo\clsname\msgtext + \TestWrite\@ClassInfo{-1}{% + Class CLASS Info: MESSAGE^^J% + (CLASS)~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% + }% + \@ClassInfoNoLine\clsname\msgtext + \TestWrite\@ClassInfoNoLine{-1}{% + Class CLASS Info: MESSAGE^^J% + (CLASS)~~~~~~~~~~~SECOND LINE.% + }% +} +\def\TestWarning{% + \@PackageWarning\pkgname\msgtext + \TestWrite\@PackageWarning\WriteUnused{% + ^^J% + Package PACKAGE Warning: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% + ^^J% + }% + \@PackageWarningNoLine\pkgname\msgtext + \TestWrite\@PackageWarningNoLine\WriteUnused{% + ^^J% + Package PACKAGE Warning: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.% + ^^J% + }% + \@ClassWarning\clsname\msgtext + \TestWrite\@ClassWarning\WriteUnused{% + ^^J% + Class CLASS Warning: MESSAGE^^J% + (CLASS)~~~~~~~~~~~~~~SECOND LINE on input line \the\inputlineno.% + ^^J% + }% + \@ClassWarningNoLine\clsname\msgtext + \TestWrite\@ClassWarningNoLine\WriteUnused{% + ^^J% + Class CLASS Warning: MESSAGE^^J% + (CLASS)~~~~~~~~~~~~~~SECOND LINE.% + ^^J% + }% +} +\def\TestError{% + \let\write\OrgWrite + \def\plaindots{} + \@PackageError\pkgname\msgtext\hlptext + \@TestError\@PackageError{% + ! Package PACKAGE Error: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% + ^^J% + See the PACKAGE package documentation for explanation.^^J% + Type~~H ~~for immediate help\plaindots + }{% + HELP^^J% + SECOND LINE% + }% + \@ClassError\clsname\msgtext\hlptext + \@TestError\@ClassError{% + ! Class CLASS Error: MESSAGE^^J% + (CLASS)~~~~~~~~~~~~~~SECOND LINE.^^J% + ^^J% + See the CLASS class documentation for explanation.^^J% + Type~~H ~~for immediate help\plaindots + }{% + HELP^^J% + SECOND LINE% + }% + \@PackageError\pkgname\msgtext\@ehc + \@TestError\@PackageError{% + ! Package PACKAGE Error: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% + ^^J% + See the PACKAGE package documentation for explanation.^^J% + Type~~H ~~for immediate help\plaindots + }{% + Try typing~~~~to proceed.^^J% + If that doesn't work, type~~X ~~to quit.% + }% + \@PackageError\pkgname\msgtext\@ehd + \@TestError\@PackageError{% + ! Package PACKAGE Error: MESSAGE^^J% + (PACKAGE)~~~~~~~~~~~~~~~~SECOND LINE.^^J% + ^^J% + See the PACKAGE package documentation for explanation.^^J% + Type~~H ~~for immediate help\plaindots + }{% + You're in trouble here.~~Try typing~~~~to proceed.^^J% + If that doesn't work, type~~X ~~to quit.% + }% +} +\def\@TestError#1#2#3{% + \begingroup + \let~\space + \edef\x{#2}% + \@onelevel@sanitize\x + \@onelevel@sanitize\ErrMessage + \ifx\x\ErrMessage + \else + \msg{}% + \msg{[\ErrMessage]}% + \msg{<>}% + \msg{[\x]}% + \TestFailed#1{errmessage text}% + \fi + \edef\x{\the\ErrHelpToks}% + \edef\y{#3}% + \ifx\x\y + \else + \msg{}% + \msg{[\the\ErrHelpToks]}% + \msg{<>}% + \msg{[\y]}% + \TestFailed#1{errhelp text}% + \fi + \endgroup +} +\TestInfo +\TestWarning +\TestError +\@@end +\endinput +%% +%% End of file `infwarerr-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf index bad3abd8468..15a8262dc71 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf and b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf index 206771b2d97..506a04bf47a 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf and b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test1.tex new file mode 100644 index 00000000000..06bf9e08db3 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test1.tex @@ -0,0 +1,76 @@ +%% +%% This is file `intcalc-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% intcalc.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file intcalc.dtx +%% and the derived files +%% intcalc.sty, intcalc.pdf, intcalc.ins, intcalc.drv, +%% intcalc-test1.tex, intcalc-test2.tex, intcalc-test3.tex, +%% intcalc-test4.tex. +%% +\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 intcalc.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end + + +\endinput +%% +%% End of file `intcalc-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test2.tex new file mode 100644 index 00000000000..696816c6f80 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test2.tex @@ -0,0 +1,597 @@ +%% +%% This is file `intcalc-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% intcalc.dtx (with options: `test2,etex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file intcalc.dtx +%% and the derived files +%% intcalc.sty, intcalc.pdf, intcalc.ins, intcalc.drv, +%% intcalc-test1.tex, intcalc-test2.tex, intcalc-test3.tex, +%% intcalc-test4.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\makeatletter +\chardef\IntCalc@TestMode=1 % +\makeatother +\usepackage{intcalc}[2007/09/09] +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newcommand*{\TestSpaceAtEnd}[1]{% + \edef\resultA{#1}% + \edef\resultB{#1 }% + \Expect*{\resultA\space}*{\resultB}% +} +\newcommand*{\TestResult}[2]{% + \edef\result{#1}% + \Expect*{\result}{#2}% +} +\newcommand*{\TestResultTwoExpansions}[2]{% + \expandafter\expandafter\expandafter\Expect + \expandafter\expandafter\expandafter{#1}{#2}% +} +\newcount\TestCount +\newcommand*{\TestArg}[1]{\numexpr#1\relax} +\newcommand*{\TestTeXDivide}[2]{% + \TestCount=\TestArg{#1}\relax + \divide\TestCount by \TestArg{#2}\relax + \Expect*{\intcalcDiv{#1}{#2}}*{\the\TestCount}% +} +\newcommand*{\Test}[2]{% + \TestResult{#1}{#2}% + \TestResultTwoExpansions{#1}{#2}% + \TestSpaceAtEnd{#1}% +} +\newcommand*{\TestExch}[2]{\Test{#2}{#1}} +\newcommand*{\TestInv}[2]{% + \Test{\intcalcInv{#1}}{#2}% +} +\newcommand*{\TestAbs}[2]{% + \Test{\intcalcAbs{#1}}{#2}% +} +\newcommand*{\TestSgn}[2]{% + \Test{\intcalcSgn{#1}}{#2}% +} +\newcommand*{\TestMin}[3]{% + \Test{\intcalcMin{#1}{#2}}{#3}% +} +\newcommand*{\TestMax}[3]{% + \Test{\intcalcMax{#1}{#2}}{#3}% +} +\newcommand*{\TestCmp}[3]{% + \Test{\intcalcCmp{#1}{#2}}{#3}% +} +\newcommand*{\TestInc}[2]{% + \Test{\intcalcInc{#1}}{#2}% +} +\newcommand*{\TestDec}[2]{% + \Test{\intcalcDec{#1}}{#2}% +} +\newcommand*{\TestAdd}[3]{% + \Test{\intcalcAdd{#1}{#2}}{#3}% +} +\newcommand*{\TestSub}[3]{% + \Test{\intcalcSub{#1}{#2}}{#3}% +} +\newcommand*{\TestShl}[2]{% + \Test{\intcalcShl{#1}}{#2}% +} +\newcommand*{\TestShr}[2]{% + \Test{\intcalcShr{#1}}{#2}% +} +\newcommand*{\TestMul}[3]{% + \Test{\intcalcMul{#1}{#2}}{#3}% +} +\newcommand*{\TestSqr}[2]{% + \Test{\intcalcSqr{#1}}{#2}% +} +\newcommand*{\TestFac}[2]{% + \expandafter\TestExch\expandafter{\the\numexpr#2}{\intcalcFac{#1}}% +} +\newcommand*{\TestPow}[3]{% + \Test{\intcalcPow{#1}{#2}}{#3}% +} +\newcommand*{\TestDiv}[3]{% + \Test{\intcalcDiv{#1}{#2}}{#3}% + \TestTeXDivide{#1}{#2}% +} +\newcommand*{\TestMod}[3]{% + \Test{\intcalcMod{#1}{#2}}{#3}% +} +\makeatletter + +\begin{qstest}{inv}{inv}% + \TestInv{0}{0}% + \TestInv{1}{-1}% + \TestInv{-1}{1}% + \TestInv{10}{-10}% + \TestInv{-10}{10}% + \TestInv{2147483647}{-2147483647}% + \TestInv{-2147483647}{2147483647}% + \TestInv{ 0 }{0}% + \TestInv{ 1 }{-1}% + \TestInv{--1}{-1}% + \TestInv{\z@}{0}% + \TestInv{\@ne}{-1}% + \TestInv{\m@ne}{1}% + \TestInv{-10+30}{-20}% + \TestInv{10-30}{20}% +\end{qstest} + +\begin{qstest}{abs}{abs}% + \TestAbs{0}{0}% + \TestAbs{1}{1}% + \TestAbs{-1}{1}% + \TestAbs{10}{10}% + \TestAbs{-10}{10}% + \TestAbs{2147483647}{2147483647}% + \TestAbs{-2147483647}{2147483647}% + \TestAbs{ 0 }{0}% + \TestAbs{ 1 }{1}% + \TestAbs{--1}{1}% + \TestAbs{\z@}{0}% + \TestAbs{\@ne}{1}% + \TestAbs{\m@ne}{1}% + \TestAbs{-10+30}{20}% + \TestAbs{10-30}{20}% +\end{qstest} + +\begin{qstest}{sign}{sign}% + \TestSgn{0}{0}% + \TestSgn{1}{1}% + \TestSgn{-1}{-1}% + \TestSgn{10}{1}% + \TestSgn{-10}{-1}% + \TestSgn{2147483647}{1}% + \TestSgn{-2147483647}{-1}% + \TestSgn{ 0 }{0}% + \TestSgn{ 2 }{1}% + \TestSgn{ -2 }{-1}% + \TestSgn{--2}{1}% + \TestSgn{\z@}{0}% + \TestSgn{\@ne}{1}% + \TestSgn{\m@ne}{-1}% + \TestSgn{-10+30}{1}% + \TestSgn{10-30}{-1}% +\end{qstest} + +\begin{qstest}{min}{min}% + \TestMin{0}{1}{0}% + \TestMin{1}{0}{0}% + \TestMin{-10}{-20}{-20}% + \TestMin{ 1 }{ 2 }{1}% + \TestMin{ 2 }{ 1 }{1}% + \TestMin{1}{1}{1}% + \TestMin{\z@}{\@ne}{0}% + \TestMin{\@ne}{\m@ne}{-1}% + \TestMin{1+2}{3+4}{3}% +\end{qstest} + +\begin{qstest}{max}{max}% + \TestMax{0}{1}{1}% + \TestMax{1}{0}{1}% + \TestMax{-10}{-20}{-10}% + \TestMax{ 1 }{ 2 }{2}% + \TestMax{ 2 }{ 1 }{2}% + \TestMax{1}{1}{1}% + \TestMax{\z@}{\@ne}{1}% + \TestMax{\@ne}{\m@ne}{1}% + \TestMax{1+2}{3+4}{7}% +\end{qstest} + +\begin{qstest}{cmp}{cmp}% + \TestCmp{0}{0}{0}% + \TestCmp{-21}{17}{-1}% + \TestCmp{3}{4}{-1}% + \TestCmp{-10}{-10}{0}% + \TestCmp{-10}{-11}{1}% + \TestCmp{100}{5}{1}% + \TestCmp{2147483647}{-2147483647}{1}% + \TestCmp{-2147483647}{2147483647}{-1}% + \TestCmp{2147483647}{2147483647}{0}% + \TestCmp{\z@}{\@ne}{-1}% + \TestCmp{\@ne}{\m@ne}{1}% + \TestCmp{ 4 }{ 5 }{-1}% + \TestCmp{ -3 }{ -7 }{1}% + \TestCmp{1+2}{3+4}{-1}% +\end{qstest} + +\begin{qstest}{fac}{fac} + \TestFac{0}{1}% + \TestFac{1}{1}% + \TestFac{2}{2}% + \TestFac{3}{2*3}% + \TestFac{4}{2*3*4}% + \TestFac{5}{2*3*4*5}% + \TestFac{6}{2*3*4*5*6}% + \TestFac{7}{2*3*4*5*6*7}% + \TestFac{8}{2*3*4*5*6*7*8}% + \TestFac{9}{2*3*4*5*6*7*8*9}% + \TestFac{10}{2*3*4*5*6*7*8*9*10}% + \TestFac{11}{2*3*4*5*6*7*8*9*10*11}% + \TestFac{12}{2*3*4*5*6*7*8*9*10*11*12}% +\end{qstest} + +\begin{qstest}{inc}{inc}% + \TestInc{0}{1}% + \TestInc{1}{2}% + \TestInc{-1}{0}% + \TestInc{10}{11}% + \TestInc{-10}{-9}% + \TestInc{999}{1000}% + \TestInc{-1000}{-999}% + \TestInc{129}{130}% + \TestInc{2147483646}{2147483647}% + \TestInc{-2147483647}{-2147483646}% +\end{qstest} + +\begin{qstest}{dec}{dec}% + \TestDec{0}{-1}% + \TestDec{1}{0}% + \TestDec{-1}{-2}% + \TestDec{10}{9}% + \TestDec{-10}{-11}% + \TestDec{1000}{999}% + \TestDec{-999}{-1000}% + \TestDec{130}{129}% + \TestDec{2147483647}{2147483646}% + \TestDec{-2147483646}{-2147483647}% +\end{qstest} + +\begin{qstest}{add}{add}% + \TestAdd{0}{0}{0}% + \TestAdd{1}{0}{1}% + \TestAdd{0}{1}{1}% + \TestAdd{1}{2}{3}% + \TestAdd{-1}{-1}{-2}% + \TestAdd{2147483646}{1}{2147483647}% + \TestAdd{-2147483647}{2147483647}{0}% + \TestAdd{20}{-5}{15}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{-4}{1}{-3}% + \TestAdd{-1}{4}{3}% + \TestAdd{4}{-1}{3}% + \TestAdd{1}{-4}{-3}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{ -4 }{ 1 }{-3}% + \TestAdd{ -1 }{ 4 }{3}% + \TestAdd{ 4 }{ -1 }{3}% + \TestAdd{ 1 }{ -4 }{-3}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{876543210}{111111111}{987654321}% + \TestAdd{999999999}{2}{1000000001}% + \TestAdd{100}{50+150}{300}% + \TestAdd{2147483647}{10-2147483647}{10}% +\end{qstest} + +\begin{qstest}{sub}{sub} + \TestSub{0}{0}{0}% + \TestSub{1}{0}{1}% + \TestSub{1}{2}{-1}% + \TestSub{-1}{-1}{0}% + \TestSub{2147483646}{-1}{2147483647}% + \TestSub{-2147483647}{-2147483647}{0}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{-4}{1}{-5}% + \TestSub{-1}{4}{-5}% + \TestSub{4}{-1}{5}% + \TestSub{1}{-4}{5}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{ -4 }{ 1 }{-5}% + \TestSub{ -1 }{ 4 }{-5}% + \TestSub{ 4 }{ -1 }{5}% + \TestSub{ 1 }{ -4 }{5}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{1000000000}{2}{999999998}% + \TestSub{987654321}{111111111}{876543210}% + \TestSub{100}{50+150}{-100}% + \TestSub{2147483647}{-10+2147483647}{10}% +\end{qstest} + +\begin{qstest}{shl}{shl} + \TestShl{0}{0}% + \TestShl{1}{2}% + \TestShl{5621}{11242}% + \TestShl{1073741823}{2147483646}% +\end{qstest} + +\begin{qstest}{shr}{shr} + \TestShr{0}{0}% + \TestShr{1}{0}% + \TestShr{2}{1}% + \TestShr{3}{1}% + \TestShr{4}{2}% + \TestShr{5}{2}% + \TestShr{6}{3}% + \TestShr{7}{3}% + \TestShr{8}{4}% + \TestShr{9}{4}% + \TestShr{10}{5}% + \TestShr{11}{5}% + \TestShr{12}{6}% + \TestShr{13}{6}% + \TestShr{14}{7}% + \TestShr{15}{7}% + \TestShr{16}{8}% + \TestShr{17}{8}% + \TestShr{18}{9}% + \TestShr{19}{9}% + \TestShr{20}{10}% + \TestShr{21}{10}% + \TestShr{22}{11}% + \TestShr{11241}{5620}% + \TestShr{73054202}{36527101}% + \TestShr{2147483646}{1073741823}% +\end{qstest} + +\begin{qstest}{mul}{mul} + \TestMul{0}{0}{0}% + \TestMul{1}{0}{0}% + \TestMul{0}{1}{0}% + \TestMul{1}{1}{1}% + \TestMul{3}{1}{3}% + \TestMul{1}{-3}{-3}% + \TestMul{-4}{-5}{20}% + \TestMul{3}{7}{21}% + \TestMul{7}{3}{21}% + \TestMul{3}{-7}{-21}% + \TestMul{7}{-3}{-21}% + \TestMul{-3}{7}{-21}% + \TestMul{-7}{3}{-21}% + \TestMul{-3}{-7}{21}% + \TestMul{-7}{-3}{21}% + \TestMul{12}{11}{132}% + \TestMul{999}{333}{332667}% + \TestMul{1000}{4321}{4321000}% + \TestMul{12345}{173955}{2147474475}% + \TestMul{1073741823}{2}{2147483646}% + \TestMul{2}{1073741823}{2147483646}% + \TestMul{-1073741823}{2}{-2147483646}% + \TestMul{2}{-1073741823}{-2147483646}% + \TestMul{2+3}{5+7}{60}% + \TestMul{2147483647}{2147483647/2147483647}{2147483647}% +\end{qstest} + +\begin{qstest}{sqr}{sqr} + \TestSqr{0}{0}% + \TestSqr{1}{1}% + \TestSqr{2}{4}% + \TestSqr{3}{9}% + \TestSqr{4}{16}% + \TestSqr{9}{81}% + \TestSqr{10}{100}% + \TestSqr{46340}{2147395600}% + \TestSqr{-1}{1}% + \TestSqr{-2}{4}% + \TestSqr{-46340}{2147395600}% +\end{qstest} + +\begin{qstest}{pow}{pow} + \TestPow{-2}{0}{1}% + \TestPow{-1}{0}{1}% + \TestPow{0}{0}{1}% + \TestPow{1}{0}{1}% + \TestPow{2}{0}{1}% + \TestPow{3}{0}{1}% + \TestPow{-2}{1}{-2}% + \TestPow{-1}{1}{-1}% + \TestPow{1}{1}{1}% + \TestPow{2}{1}{2}% + \TestPow{3}{1}{3}% + \TestPow{-2}{2}{4}% + \TestPow{-1}{2}{1}% + \TestPow{0}{2}{0}% + \TestPow{1}{2}{1}% + \TestPow{2}{2}{4}% + \TestPow{3}{2}{9}% + \TestPow{0}{1}{0}% + \TestPow{1}{-2}{1}% + \TestPow{1}{-1}{1}% + \TestPow{-1}{-2}{1}% + \TestPow{-1}{-1}{-1}% + \TestPow{-1}{3}{-1}% + \TestPow{-1}{4}{1}% + \TestPow{-2}{-1}{0}% + \TestPow{-2}{-2}{0}% + \TestPow{2}{3}{8}% + \TestPow{2}{4}{16}% + \TestPow{2}{5}{32}% + \TestPow{2}{6}{64}% + \TestPow{2}{7}{128}% + \TestPow{2}{8}{256}% + \TestPow{2}{9}{512}% + \TestPow{2}{10}{1024}% + \TestPow{-2}{3}{-8}% + \TestPow{-2}{4}{16}% + \TestPow{-2}{5}{-32}% + \TestPow{-2}{6}{64}% + \TestPow{-2}{7}{-128}% + \TestPow{-2}{8}{256}% + \TestPow{-2}{9}{-512}% + \TestPow{-2}{10}{1024}% + \TestPow{3}{3}{27}% + \TestPow{3}{4}{81}% + \TestPow{3}{5}{243}% + \TestPow{-3}{3}{-27}% + \TestPow{-3}{4}{81}% + \TestPow{-3}{5}{-243}% + \TestPow{2}{30}{1073741824}% + \TestPow{-3}{19}{-1162261467}% + \TestPow{5}{13}{1220703125}% + \TestPow{-7}{11}{-1977326743}% +\end{qstest} + +\begin{qstest}{div}{div} + \TestDiv{1}{1}{1}% + \TestDiv{2}{1}{2}% + \TestDiv{-2}{1}{-2}% + \TestDiv{2}{-1}{-2}% + \TestDiv{-2}{-1}{2}% + \TestDiv{15}{2}{7}% + \TestDiv{-16}{2}{-8}% + \TestDiv{1}{2}{0}% + \TestDiv{1}{3}{0}% + \TestDiv{2}{3}{0}% + \TestDiv{-2}{3}{0}% + \TestDiv{2}{-3}{0}% + \TestDiv{-2}{-3}{0}% + \TestDiv{13}{3}{4}% + \TestDiv{-13}{-3}{4}% + \TestDiv{-13}{3}{-4}% + \TestDiv{-6}{5}{-1}% + \TestDiv{-5}{5}{-1}% + \TestDiv{-4}{5}{0}% + \TestDiv{-3}{5}{0}% + \TestDiv{-2}{5}{0}% + \TestDiv{-1}{5}{0}% + \TestDiv{0}{5}{0}% + \TestDiv{1}{5}{0}% + \TestDiv{2}{5}{0}% + \TestDiv{3}{5}{0}% + \TestDiv{4}{5}{0}% + \TestDiv{5}{5}{1}% + \TestDiv{6}{5}{1}% + \TestDiv{-5}{4}{-1}% + \TestDiv{-4}{4}{-1}% + \TestDiv{-3}{4}{0}% + \TestDiv{-2}{4}{0}% + \TestDiv{-1}{4}{0}% + \TestDiv{0}{4}{0}% + \TestDiv{1}{4}{0}% + \TestDiv{2}{4}{0}% + \TestDiv{3}{4}{0}% + \TestDiv{4}{4}{1}% + \TestDiv{5}{4}{1}% + \TestDiv{12345}{678}{18}% + \TestDiv{32372}{5952}{5}% + \TestDiv{284271294}{18162}{15651}% + \TestDiv{217652429}{12561}{17327}% + \TestDiv{462028434}{5439}{84947}% + \TestDiv{2147483647}{1000}{2147483}% + \TestDiv{2147483647}{-1000}{-2147483}% + \TestDiv{-2147483647}{1000}{-2147483}% + \TestDiv{-2147483647}{-1000}{2147483}% +\end{qstest} + +\begin{qstest}{mod}{mod} + \TestMod{-6}{5}{4}% + \TestMod{-5}{5}{0}% + \TestMod{-4}{5}{1}% + \TestMod{-3}{5}{2}% + \TestMod{-2}{5}{3}% + \TestMod{-1}{5}{4}% + \TestMod{0}{5}{0}% + \TestMod{1}{5}{1}% + \TestMod{2}{5}{2}% + \TestMod{3}{5}{3}% + \TestMod{4}{5}{4}% + \TestMod{5}{5}{0}% + \TestMod{6}{5}{1}% + \TestMod{-5}{4}{3}% + \TestMod{-4}{4}{0}% + \TestMod{-3}{4}{1}% + \TestMod{-2}{4}{2}% + \TestMod{-1}{4}{3}% + \TestMod{0}{4}{0}% + \TestMod{1}{4}{1}% + \TestMod{2}{4}{2}% + \TestMod{3}{4}{3}% + \TestMod{4}{4}{0}% + \TestMod{5}{4}{1}% + \TestMod{-6}{-5}{-1}% + \TestMod{-5}{-5}{0}% + \TestMod{-4}{-5}{-4}% + \TestMod{-3}{-5}{-3}% + \TestMod{-2}{-5}{-2}% + \TestMod{-1}{-5}{-1}% + \TestMod{0}{-5}{0}% + \TestMod{1}{-5}{-4}% + \TestMod{2}{-5}{-3}% + \TestMod{3}{-5}{-2}% + \TestMod{4}{-5}{-1}% + \TestMod{5}{-5}{0}% + \TestMod{6}{-5}{-4}% + \TestMod{-5}{-4}{-1}% + \TestMod{-4}{-4}{0}% + \TestMod{-3}{-4}{-3}% + \TestMod{-2}{-4}{-2}% + \TestMod{-1}{-4}{-1}% + \TestMod{0}{-4}{0}% + \TestMod{1}{-4}{-3}% + \TestMod{2}{-4}{-2}% + \TestMod{3}{-4}{-1}% + \TestMod{4}{-4}{0}% + \TestMod{5}{-4}{-3}% + \TestMod{2147483647}{1000}{647}% + \TestMod{2147483647}{-1000}{-353}% + \TestMod{-2147483647}{1000}{353}% + \TestMod{-2147483647}{-1000}{-647}% + \TestMod{ 0 }{ 4 }{0}% + \TestMod{ 1 }{ 4 }{1}% + \TestMod{ -1 }{ 4 }{3}% + \TestMod{ 0 }{ -4 }{0}% + \TestMod{ 1 }{ -4 }{-3}% + \TestMod{ -1 }{ -4 }{-1}% + \TestMod{1+2}{1+3}{3}% + \TestMod{1-2}{1+3}{3}% + \TestMod{1-2}{1-4}{-1}% + \TestMod{1+2}{1-4}{0}% + \TestMod{1+2}{1-5}{-1}% +\end{qstest} + +\newcommand*{\TestError}[2]{% + \begingroup + \expandafter\def\csname IntCalcError:#1\endcsname{}% + \Expect*{#2}{0}% + \expandafter\def\csname IntCalcError:#1\endcsname{ERROR}% + \Expect*{#2}{0ERROR }% + \endgroup +} +\begin{qstest}{error}{error} + \TestError{FacNegative}{\intcalcFac{-1}}% + \TestError{FacNegative}{\intcalcFac{-2147483647}}% + \TestError{FacOverflow}{\intcalcFac{13}}% + \TestError{FacOverflow}{\intcalcFac{2147483647}}% + \TestError{ShlNegativeNumber}{\intcalcShl{-1}}% + \TestError{ShrNegativeNumber}{\intcalcShr{-1}}% + \TestError{DivisionByZero}{\intcalcPow{0}{-1}}% + \TestError{DivisionByZero}{\intcalcDiv{1}{0}}% + \TestError{DivisionByZero}{\intcalcMod{1}{0}}% +\end{qstest} + +\begin{document} +\end{document} +\endinput +%% +%% End of file `intcalc-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test3.tex new file mode 100644 index 00000000000..c01bff1c246 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test3.tex @@ -0,0 +1,590 @@ +%% +%% This is file `intcalc-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% intcalc.dtx (with options: `test3,noetex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file intcalc.dtx +%% and the derived files +%% intcalc.sty, intcalc.pdf, intcalc.ins, intcalc.drv, +%% intcalc-test1.tex, intcalc-test2.tex, intcalc-test3.tex, +%% intcalc-test4.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\let\SavedNumexpr\numexpr +\let\numexpr\UNDEFINED +\makeatletter +\chardef\IntCalc@TestMode=1 % +\makeatother +\usepackage{intcalc}[2007/09/09] +\let\numexpr\SavedNumexpr +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newcommand*{\TestSpaceAtEnd}[1]{% + \let\SavedNumexpr\numexpr + \let\numexpr\UNDEFINED + \edef\resultA{#1}% + \edef\resultB{#1 }% + \let\numexpr\SavedNumexpr + \Expect*{\resultA\space}*{\resultB}% +} +\newcommand*{\TestResult}[2]{% + \let\SavedNumexpr\numexpr + \let\numexpr\UNDEFINED + \edef\result{#1}% + \let\numexpr\SavedNumexpr + \Expect*{\result}{#2}% +} +\newcommand*{\TestResultTwoExpansions}[2]{% + \begingroup + \let\numexpr\UNDEFINED + \expandafter\expandafter\expandafter + \endgroup + \expandafter\expandafter\expandafter\Expect + \expandafter\expandafter\expandafter{#1}{#2}% +} +\newcount\TestCount +\newcommand*{\TestArg}[1]{#1} +\newcommand*{\TestTeXDivide}[2]{% + \TestCount=\TestArg{#1}\relax + \divide\TestCount by \TestArg{#2}\relax + \Expect*{\intcalcDiv{#1}{#2}}*{\the\TestCount}% +} +\newcommand*{\Test}[2]{% + \TestResult{#1}{#2}% + \TestResultTwoExpansions{#1}{#2}% + \TestSpaceAtEnd{#1}% +} +\newcommand*{\TestExch}[2]{\Test{#2}{#1}} +\newcommand*{\TestInv}[2]{% + \Test{\intcalcInv{#1}}{#2}% +} +\newcommand*{\TestAbs}[2]{% + \Test{\intcalcAbs{#1}}{#2}% +} +\newcommand*{\TestSgn}[2]{% + \Test{\intcalcSgn{#1}}{#2}% +} +\newcommand*{\TestMin}[3]{% + \Test{\intcalcMin{#1}{#2}}{#3}% +} +\newcommand*{\TestMax}[3]{% + \Test{\intcalcMax{#1}{#2}}{#3}% +} +\newcommand*{\TestCmp}[3]{% + \Test{\intcalcCmp{#1}{#2}}{#3}% +} +\newcommand*{\TestInc}[2]{% + \Test{\intcalcInc{#1}}{#2}% +} +\newcommand*{\TestDec}[2]{% + \Test{\intcalcDec{#1}}{#2}% +} +\newcommand*{\TestAdd}[3]{% + \Test{\intcalcAdd{#1}{#2}}{#3}% +} +\newcommand*{\TestSub}[3]{% + \Test{\intcalcSub{#1}{#2}}{#3}% +} +\newcommand*{\TestShl}[2]{% + \Test{\intcalcShl{#1}}{#2}% +} +\newcommand*{\TestShr}[2]{% + \Test{\intcalcShr{#1}}{#2}% +} +\newcommand*{\TestMul}[3]{% + \Test{\intcalcMul{#1}{#2}}{#3}% +} +\newcommand*{\TestSqr}[2]{% + \Test{\intcalcSqr{#1}}{#2}% +} +\newcommand*{\TestFac}[2]{% + \expandafter\TestExch\expandafter{\the\numexpr#2}{\intcalcFac{#1}}% +} +\newcommand*{\TestPow}[3]{% + \Test{\intcalcPow{#1}{#2}}{#3}% +} +\newcommand*{\TestDiv}[3]{% + \Test{\intcalcDiv{#1}{#2}}{#3}% + \TestTeXDivide{#1}{#2}% +} +\newcommand*{\TestMod}[3]{% + \Test{\intcalcMod{#1}{#2}}{#3}% +} +\makeatletter + +\begin{qstest}{inv}{inv}% + \TestInv{0}{0}% + \TestInv{1}{-1}% + \TestInv{-1}{1}% + \TestInv{10}{-10}% + \TestInv{-10}{10}% + \TestInv{2147483647}{-2147483647}% + \TestInv{-2147483647}{2147483647}% + \TestInv{ 0 }{0}% + \TestInv{ 1 }{-1}% + \TestInv{--1}{-1}% + \TestInv{\z@}{0}% + \TestInv{\@ne}{-1}% + \TestInv{\m@ne}{1}% +\end{qstest} + +\begin{qstest}{abs}{abs}% + \TestAbs{0}{0}% + \TestAbs{1}{1}% + \TestAbs{-1}{1}% + \TestAbs{10}{10}% + \TestAbs{-10}{10}% + \TestAbs{2147483647}{2147483647}% + \TestAbs{-2147483647}{2147483647}% + \TestAbs{ 0 }{0}% + \TestAbs{ 1 }{1}% + \TestAbs{--1}{1}% + \TestAbs{\z@}{0}% + \TestAbs{\@ne}{1}% + \TestAbs{\m@ne}{1}% +\end{qstest} + +\begin{qstest}{sign}{sign}% + \TestSgn{0}{0}% + \TestSgn{1}{1}% + \TestSgn{-1}{-1}% + \TestSgn{10}{1}% + \TestSgn{-10}{-1}% + \TestSgn{2147483647}{1}% + \TestSgn{-2147483647}{-1}% + \TestSgn{ 0 }{0}% + \TestSgn{ 2 }{1}% + \TestSgn{ -2 }{-1}% + \TestSgn{--2}{1}% + \TestSgn{\z@}{0}% + \TestSgn{\@ne}{1}% + \TestSgn{\m@ne}{-1}% +\end{qstest} + +\begin{qstest}{min}{min}% + \TestMin{0}{1}{0}% + \TestMin{1}{0}{0}% + \TestMin{-10}{-20}{-20}% + \TestMin{ 1 }{ 2 }{1}% + \TestMin{ 2 }{ 1 }{1}% + \TestMin{1}{1}{1}% + \TestMin{\z@}{\@ne}{0}% + \TestMin{\@ne}{\m@ne}{-1}% +\end{qstest} + +\begin{qstest}{max}{max}% + \TestMax{0}{1}{1}% + \TestMax{1}{0}{1}% + \TestMax{-10}{-20}{-10}% + \TestMax{ 1 }{ 2 }{2}% + \TestMax{ 2 }{ 1 }{2}% + \TestMax{1}{1}{1}% + \TestMax{\z@}{\@ne}{1}% + \TestMax{\@ne}{\m@ne}{1}% +\end{qstest} + +\begin{qstest}{cmp}{cmp}% + \TestCmp{0}{0}{0}% + \TestCmp{-21}{17}{-1}% + \TestCmp{3}{4}{-1}% + \TestCmp{-10}{-10}{0}% + \TestCmp{-10}{-11}{1}% + \TestCmp{100}{5}{1}% + \TestCmp{2147483647}{-2147483647}{1}% + \TestCmp{-2147483647}{2147483647}{-1}% + \TestCmp{2147483647}{2147483647}{0}% + \TestCmp{\z@}{\@ne}{-1}% + \TestCmp{\@ne}{\m@ne}{1}% + \TestCmp{ 4 }{ 5 }{-1}% + \TestCmp{ -3 }{ -7 }{1}% +\end{qstest} + +\begin{qstest}{fac}{fac} + \TestFac{0}{1}% + \TestFac{1}{1}% + \TestFac{2}{2}% + \TestFac{3}{2*3}% + \TestFac{4}{2*3*4}% + \TestFac{5}{2*3*4*5}% + \TestFac{6}{2*3*4*5*6}% + \TestFac{7}{2*3*4*5*6*7}% + \TestFac{8}{2*3*4*5*6*7*8}% + \TestFac{9}{2*3*4*5*6*7*8*9}% + \TestFac{10}{2*3*4*5*6*7*8*9*10}% + \TestFac{11}{2*3*4*5*6*7*8*9*10*11}% + \TestFac{12}{2*3*4*5*6*7*8*9*10*11*12}% +\end{qstest} + +\begin{qstest}{inc}{inc}% + \TestInc{0}{1}% + \TestInc{1}{2}% + \TestInc{-1}{0}% + \TestInc{10}{11}% + \TestInc{-10}{-9}% + \TestInc{999}{1000}% + \TestInc{-1000}{-999}% + \TestInc{129}{130}% + \TestInc{2147483646}{2147483647}% + \TestInc{-2147483647}{-2147483646}% +\end{qstest} + +\begin{qstest}{dec}{dec}% + \TestDec{0}{-1}% + \TestDec{1}{0}% + \TestDec{-1}{-2}% + \TestDec{10}{9}% + \TestDec{-10}{-11}% + \TestDec{1000}{999}% + \TestDec{-999}{-1000}% + \TestDec{130}{129}% + \TestDec{2147483647}{2147483646}% + \TestDec{-2147483646}{-2147483647}% +\end{qstest} + +\begin{qstest}{add}{add}% + \TestAdd{0}{0}{0}% + \TestAdd{1}{0}{1}% + \TestAdd{0}{1}{1}% + \TestAdd{1}{2}{3}% + \TestAdd{-1}{-1}{-2}% + \TestAdd{2147483646}{1}{2147483647}% + \TestAdd{-2147483647}{2147483647}{0}% + \TestAdd{20}{-5}{15}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{-4}{1}{-3}% + \TestAdd{-1}{4}{3}% + \TestAdd{4}{-1}{3}% + \TestAdd{1}{-4}{-3}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{ -4 }{ 1 }{-3}% + \TestAdd{ -1 }{ 4 }{3}% + \TestAdd{ 4 }{ -1 }{3}% + \TestAdd{ 1 }{ -4 }{-3}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{876543210}{111111111}{987654321}% + \TestAdd{999999999}{2}{1000000001}% +\end{qstest} + +\begin{qstest}{sub}{sub} + \TestSub{0}{0}{0}% + \TestSub{1}{0}{1}% + \TestSub{1}{2}{-1}% + \TestSub{-1}{-1}{0}% + \TestSub{2147483646}{-1}{2147483647}% + \TestSub{-2147483647}{-2147483647}{0}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{-4}{1}{-5}% + \TestSub{-1}{4}{-5}% + \TestSub{4}{-1}{5}% + \TestSub{1}{-4}{5}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{ -4 }{ 1 }{-5}% + \TestSub{ -1 }{ 4 }{-5}% + \TestSub{ 4 }{ -1 }{5}% + \TestSub{ 1 }{ -4 }{5}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{1000000000}{2}{999999998}% + \TestSub{987654321}{111111111}{876543210}% +\end{qstest} + +\begin{qstest}{shl}{shl} + \TestShl{0}{0}% + \TestShl{1}{2}% + \TestShl{5621}{11242}% + \TestShl{1073741823}{2147483646}% +\end{qstest} + +\begin{qstest}{shr}{shr} + \TestShr{0}{0}% + \TestShr{1}{0}% + \TestShr{2}{1}% + \TestShr{3}{1}% + \TestShr{4}{2}% + \TestShr{5}{2}% + \TestShr{6}{3}% + \TestShr{7}{3}% + \TestShr{8}{4}% + \TestShr{9}{4}% + \TestShr{10}{5}% + \TestShr{11}{5}% + \TestShr{12}{6}% + \TestShr{13}{6}% + \TestShr{14}{7}% + \TestShr{15}{7}% + \TestShr{16}{8}% + \TestShr{17}{8}% + \TestShr{18}{9}% + \TestShr{19}{9}% + \TestShr{20}{10}% + \TestShr{21}{10}% + \TestShr{22}{11}% + \TestShr{11241}{5620}% + \TestShr{73054202}{36527101}% + \TestShr{2147483646}{1073741823}% +\end{qstest} + +\begin{qstest}{mul}{mul} + \TestMul{0}{0}{0}% + \TestMul{1}{0}{0}% + \TestMul{0}{1}{0}% + \TestMul{1}{1}{1}% + \TestMul{3}{1}{3}% + \TestMul{1}{-3}{-3}% + \TestMul{-4}{-5}{20}% + \TestMul{3}{7}{21}% + \TestMul{7}{3}{21}% + \TestMul{3}{-7}{-21}% + \TestMul{7}{-3}{-21}% + \TestMul{-3}{7}{-21}% + \TestMul{-7}{3}{-21}% + \TestMul{-3}{-7}{21}% + \TestMul{-7}{-3}{21}% + \TestMul{12}{11}{132}% + \TestMul{999}{333}{332667}% + \TestMul{1000}{4321}{4321000}% + \TestMul{12345}{173955}{2147474475}% + \TestMul{1073741823}{2}{2147483646}% + \TestMul{2}{1073741823}{2147483646}% + \TestMul{-1073741823}{2}{-2147483646}% + \TestMul{2}{-1073741823}{-2147483646}% +\end{qstest} + +\begin{qstest}{sqr}{sqr} + \TestSqr{0}{0}% + \TestSqr{1}{1}% + \TestSqr{2}{4}% + \TestSqr{3}{9}% + \TestSqr{4}{16}% + \TestSqr{9}{81}% + \TestSqr{10}{100}% + \TestSqr{46340}{2147395600}% + \TestSqr{-1}{1}% + \TestSqr{-2}{4}% + \TestSqr{-46340}{2147395600}% +\end{qstest} + +\begin{qstest}{pow}{pow} + \TestPow{-2}{0}{1}% + \TestPow{-1}{0}{1}% + \TestPow{0}{0}{1}% + \TestPow{1}{0}{1}% + \TestPow{2}{0}{1}% + \TestPow{3}{0}{1}% + \TestPow{-2}{1}{-2}% + \TestPow{-1}{1}{-1}% + \TestPow{1}{1}{1}% + \TestPow{2}{1}{2}% + \TestPow{3}{1}{3}% + \TestPow{-2}{2}{4}% + \TestPow{-1}{2}{1}% + \TestPow{0}{2}{0}% + \TestPow{1}{2}{1}% + \TestPow{2}{2}{4}% + \TestPow{3}{2}{9}% + \TestPow{0}{1}{0}% + \TestPow{1}{-2}{1}% + \TestPow{1}{-1}{1}% + \TestPow{-1}{-2}{1}% + \TestPow{-1}{-1}{-1}% + \TestPow{-1}{3}{-1}% + \TestPow{-1}{4}{1}% + \TestPow{-2}{-1}{0}% + \TestPow{-2}{-2}{0}% + \TestPow{2}{3}{8}% + \TestPow{2}{4}{16}% + \TestPow{2}{5}{32}% + \TestPow{2}{6}{64}% + \TestPow{2}{7}{128}% + \TestPow{2}{8}{256}% + \TestPow{2}{9}{512}% + \TestPow{2}{10}{1024}% + \TestPow{-2}{3}{-8}% + \TestPow{-2}{4}{16}% + \TestPow{-2}{5}{-32}% + \TestPow{-2}{6}{64}% + \TestPow{-2}{7}{-128}% + \TestPow{-2}{8}{256}% + \TestPow{-2}{9}{-512}% + \TestPow{-2}{10}{1024}% + \TestPow{3}{3}{27}% + \TestPow{3}{4}{81}% + \TestPow{3}{5}{243}% + \TestPow{-3}{3}{-27}% + \TestPow{-3}{4}{81}% + \TestPow{-3}{5}{-243}% + \TestPow{2}{30}{1073741824}% + \TestPow{-3}{19}{-1162261467}% + \TestPow{5}{13}{1220703125}% + \TestPow{-7}{11}{-1977326743}% +\end{qstest} + +\begin{qstest}{div}{div} + \TestDiv{1}{1}{1}% + \TestDiv{2}{1}{2}% + \TestDiv{-2}{1}{-2}% + \TestDiv{2}{-1}{-2}% + \TestDiv{-2}{-1}{2}% + \TestDiv{15}{2}{7}% + \TestDiv{-16}{2}{-8}% + \TestDiv{1}{2}{0}% + \TestDiv{1}{3}{0}% + \TestDiv{2}{3}{0}% + \TestDiv{-2}{3}{0}% + \TestDiv{2}{-3}{0}% + \TestDiv{-2}{-3}{0}% + \TestDiv{13}{3}{4}% + \TestDiv{-13}{-3}{4}% + \TestDiv{-13}{3}{-4}% + \TestDiv{-6}{5}{-1}% + \TestDiv{-5}{5}{-1}% + \TestDiv{-4}{5}{0}% + \TestDiv{-3}{5}{0}% + \TestDiv{-2}{5}{0}% + \TestDiv{-1}{5}{0}% + \TestDiv{0}{5}{0}% + \TestDiv{1}{5}{0}% + \TestDiv{2}{5}{0}% + \TestDiv{3}{5}{0}% + \TestDiv{4}{5}{0}% + \TestDiv{5}{5}{1}% + \TestDiv{6}{5}{1}% + \TestDiv{-5}{4}{-1}% + \TestDiv{-4}{4}{-1}% + \TestDiv{-3}{4}{0}% + \TestDiv{-2}{4}{0}% + \TestDiv{-1}{4}{0}% + \TestDiv{0}{4}{0}% + \TestDiv{1}{4}{0}% + \TestDiv{2}{4}{0}% + \TestDiv{3}{4}{0}% + \TestDiv{4}{4}{1}% + \TestDiv{5}{4}{1}% + \TestDiv{12345}{678}{18}% + \TestDiv{32372}{5952}{5}% + \TestDiv{284271294}{18162}{15651}% + \TestDiv{217652429}{12561}{17327}% + \TestDiv{462028434}{5439}{84947}% + \TestDiv{2147483647}{1000}{2147483}% + \TestDiv{2147483647}{-1000}{-2147483}% + \TestDiv{-2147483647}{1000}{-2147483}% + \TestDiv{-2147483647}{-1000}{2147483}% +\end{qstest} + +\begin{qstest}{mod}{mod} + \TestMod{-6}{5}{4}% + \TestMod{-5}{5}{0}% + \TestMod{-4}{5}{1}% + \TestMod{-3}{5}{2}% + \TestMod{-2}{5}{3}% + \TestMod{-1}{5}{4}% + \TestMod{0}{5}{0}% + \TestMod{1}{5}{1}% + \TestMod{2}{5}{2}% + \TestMod{3}{5}{3}% + \TestMod{4}{5}{4}% + \TestMod{5}{5}{0}% + \TestMod{6}{5}{1}% + \TestMod{-5}{4}{3}% + \TestMod{-4}{4}{0}% + \TestMod{-3}{4}{1}% + \TestMod{-2}{4}{2}% + \TestMod{-1}{4}{3}% + \TestMod{0}{4}{0}% + \TestMod{1}{4}{1}% + \TestMod{2}{4}{2}% + \TestMod{3}{4}{3}% + \TestMod{4}{4}{0}% + \TestMod{5}{4}{1}% + \TestMod{-6}{-5}{-1}% + \TestMod{-5}{-5}{0}% + \TestMod{-4}{-5}{-4}% + \TestMod{-3}{-5}{-3}% + \TestMod{-2}{-5}{-2}% + \TestMod{-1}{-5}{-1}% + \TestMod{0}{-5}{0}% + \TestMod{1}{-5}{-4}% + \TestMod{2}{-5}{-3}% + \TestMod{3}{-5}{-2}% + \TestMod{4}{-5}{-1}% + \TestMod{5}{-5}{0}% + \TestMod{6}{-5}{-4}% + \TestMod{-5}{-4}{-1}% + \TestMod{-4}{-4}{0}% + \TestMod{-3}{-4}{-3}% + \TestMod{-2}{-4}{-2}% + \TestMod{-1}{-4}{-1}% + \TestMod{0}{-4}{0}% + \TestMod{1}{-4}{-3}% + \TestMod{2}{-4}{-2}% + \TestMod{3}{-4}{-1}% + \TestMod{4}{-4}{0}% + \TestMod{5}{-4}{-3}% + \TestMod{2147483647}{1000}{647}% + \TestMod{2147483647}{-1000}{-353}% + \TestMod{-2147483647}{1000}{353}% + \TestMod{-2147483647}{-1000}{-647}% + \TestMod{ 0 }{ 4 }{0}% + \TestMod{ 1 }{ 4 }{1}% + \TestMod{ -1 }{ 4 }{3}% + \TestMod{ 0 }{ -4 }{0}% + \TestMod{ 1 }{ -4 }{-3}% + \TestMod{ -1 }{ -4 }{-1}% +\end{qstest} + +\newcommand*{\TestError}[2]{% + \begingroup + \expandafter\def\csname IntCalcError:#1\endcsname{}% + \Expect*{#2}{0}% + \expandafter\def\csname IntCalcError:#1\endcsname{ERROR}% + \Expect*{#2}{0ERROR }% + \endgroup +} +\begin{qstest}{error}{error} + \TestError{FacNegative}{\intcalcFac{-1}}% + \TestError{FacNegative}{\intcalcFac{-2147483647}}% + \TestError{FacOverflow}{\intcalcFac{13}}% + \TestError{FacOverflow}{\intcalcFac{2147483647}}% + \TestError{ShlNegativeNumber}{\intcalcShl{-1}}% + \TestError{ShrNegativeNumber}{\intcalcShr{-1}}% + \TestError{DivisionByZero}{\intcalcPow{0}{-1}}% + \TestError{DivisionByZero}{\intcalcDiv{1}{0}}% + \TestError{DivisionByZero}{\intcalcMod{1}{0}}% +\end{qstest} + +\begin{document} +\end{document} +\endinput +%% +%% End of file `intcalc-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test4.tex new file mode 100644 index 00000000000..9d4d2391743 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc-test4.tex @@ -0,0 +1,535 @@ +%% +%% This is file `intcalc-test4.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% intcalc.dtx (with options: `test4,etex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file intcalc.dtx +%% and the derived files +%% intcalc.sty, intcalc.pdf, intcalc.ins, intcalc.drv, +%% intcalc-test1.tex, intcalc-test2.tex, intcalc-test3.tex, +%% intcalc-test4.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\makeatletter +\chardef\IntCalc@TestMode=1 % +\makeatother +\usepackage{intcalc}[2007/09/09] +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newcommand*{\TestDo}[2]{% + \ifcase\numexpr#2\relax + \else + \edef\temp{\intcalcMod{#1}{#2}}% + \Expect*{% + \the\numexpr + \intcalcMul{% + \intcalcDiv{\intcalcAbs{#1}}{\intcalcAbs{#2}}% + }{\intcalcAbs{#2}}% + +\intcalcMod{\intcalcAbs{#1}}{\intcalcAbs{#2}}\relax + }*{\the\numexpr\intcalcAbs{#1}\relax}% + \fi +} +\newcommand*{\TestOne}[2]{% + \TestDo{#1}{#1}% +} +\newcommand*{\TestTwo}[3]{% + \TestDo{#1}{#2}% + \TestDo{#2}{#1}% +} +\let\TestInv\TestOne +\let\TestAbs\TestOne +\let\TestSgn\TestOne +\let\TestMin\TestTwo +\let\TestMax\TestTwo +\let\TestCmp\TestTwo +\let\TestInc\TestOne +\let\TestDec\TestOne +\let\TestAdd\TestTwo +\let\TestSub\TestTwo +\let\TestShl\TestOne +\let\TestShr\TestOne +\let\TestMul\TestTwo +\let\TestSqr\TestOne +\def\TestFac#1#2{} +\let\TestPow\TestTwo +\let\TestDiv\TestTwo +\let\TestMod\TestTwo +\makeatletter + +\begin{qstest}{inv}{inv}% + \TestInv{0}{0}% + \TestInv{1}{-1}% + \TestInv{-1}{1}% + \TestInv{10}{-10}% + \TestInv{-10}{10}% + \TestInv{2147483647}{-2147483647}% + \TestInv{-2147483647}{2147483647}% + \TestInv{ 0 }{0}% + \TestInv{ 1 }{-1}% + \TestInv{--1}{-1}% + \TestInv{\z@}{0}% + \TestInv{\@ne}{-1}% + \TestInv{\m@ne}{1}% + \TestInv{-10+30}{-20}% + \TestInv{10-30}{20}% +\end{qstest} + +\begin{qstest}{abs}{abs}% + \TestAbs{0}{0}% + \TestAbs{1}{1}% + \TestAbs{-1}{1}% + \TestAbs{10}{10}% + \TestAbs{-10}{10}% + \TestAbs{2147483647}{2147483647}% + \TestAbs{-2147483647}{2147483647}% + \TestAbs{ 0 }{0}% + \TestAbs{ 1 }{1}% + \TestAbs{--1}{1}% + \TestAbs{\z@}{0}% + \TestAbs{\@ne}{1}% + \TestAbs{\m@ne}{1}% + \TestAbs{-10+30}{20}% + \TestAbs{10-30}{20}% +\end{qstest} + +\begin{qstest}{sign}{sign}% + \TestSgn{0}{0}% + \TestSgn{1}{1}% + \TestSgn{-1}{-1}% + \TestSgn{10}{1}% + \TestSgn{-10}{-1}% + \TestSgn{2147483647}{1}% + \TestSgn{-2147483647}{-1}% + \TestSgn{ 0 }{0}% + \TestSgn{ 2 }{1}% + \TestSgn{ -2 }{-1}% + \TestSgn{--2}{1}% + \TestSgn{\z@}{0}% + \TestSgn{\@ne}{1}% + \TestSgn{\m@ne}{-1}% + \TestSgn{-10+30}{1}% + \TestSgn{10-30}{-1}% +\end{qstest} + +\begin{qstest}{min}{min}% + \TestMin{0}{1}{0}% + \TestMin{1}{0}{0}% + \TestMin{-10}{-20}{-20}% + \TestMin{ 1 }{ 2 }{1}% + \TestMin{ 2 }{ 1 }{1}% + \TestMin{1}{1}{1}% + \TestMin{\z@}{\@ne}{0}% + \TestMin{\@ne}{\m@ne}{-1}% + \TestMin{1+2}{3+4}{3}% +\end{qstest} + +\begin{qstest}{max}{max}% + \TestMax{0}{1}{1}% + \TestMax{1}{0}{1}% + \TestMax{-10}{-20}{-10}% + \TestMax{ 1 }{ 2 }{2}% + \TestMax{ 2 }{ 1 }{2}% + \TestMax{1}{1}{1}% + \TestMax{\z@}{\@ne}{1}% + \TestMax{\@ne}{\m@ne}{1}% + \TestMax{1+2}{3+4}{7}% +\end{qstest} + +\begin{qstest}{cmp}{cmp}% + \TestCmp{0}{0}{0}% + \TestCmp{-21}{17}{-1}% + \TestCmp{3}{4}{-1}% + \TestCmp{-10}{-10}{0}% + \TestCmp{-10}{-11}{1}% + \TestCmp{100}{5}{1}% + \TestCmp{2147483647}{-2147483647}{1}% + \TestCmp{-2147483647}{2147483647}{-1}% + \TestCmp{2147483647}{2147483647}{0}% + \TestCmp{\z@}{\@ne}{-1}% + \TestCmp{\@ne}{\m@ne}{1}% + \TestCmp{ 4 }{ 5 }{-1}% + \TestCmp{ -3 }{ -7 }{1}% + \TestCmp{1+2}{3+4}{-1}% +\end{qstest} + +\begin{qstest}{fac}{fac} + \TestFac{0}{1}% + \TestFac{1}{1}% + \TestFac{2}{2}% + \TestFac{3}{2*3}% + \TestFac{4}{2*3*4}% + \TestFac{5}{2*3*4*5}% + \TestFac{6}{2*3*4*5*6}% + \TestFac{7}{2*3*4*5*6*7}% + \TestFac{8}{2*3*4*5*6*7*8}% + \TestFac{9}{2*3*4*5*6*7*8*9}% + \TestFac{10}{2*3*4*5*6*7*8*9*10}% + \TestFac{11}{2*3*4*5*6*7*8*9*10*11}% + \TestFac{12}{2*3*4*5*6*7*8*9*10*11*12}% +\end{qstest} + +\begin{qstest}{inc}{inc}% + \TestInc{0}{1}% + \TestInc{1}{2}% + \TestInc{-1}{0}% + \TestInc{10}{11}% + \TestInc{-10}{-9}% + \TestInc{999}{1000}% + \TestInc{-1000}{-999}% + \TestInc{129}{130}% + \TestInc{2147483646}{2147483647}% + \TestInc{-2147483647}{-2147483646}% +\end{qstest} + +\begin{qstest}{dec}{dec}% + \TestDec{0}{-1}% + \TestDec{1}{0}% + \TestDec{-1}{-2}% + \TestDec{10}{9}% + \TestDec{-10}{-11}% + \TestDec{1000}{999}% + \TestDec{-999}{-1000}% + \TestDec{130}{129}% + \TestDec{2147483647}{2147483646}% + \TestDec{-2147483646}{-2147483647}% +\end{qstest} + +\begin{qstest}{add}{add}% + \TestAdd{0}{0}{0}% + \TestAdd{1}{0}{1}% + \TestAdd{0}{1}{1}% + \TestAdd{1}{2}{3}% + \TestAdd{-1}{-1}{-2}% + \TestAdd{2147483646}{1}{2147483647}% + \TestAdd{-2147483647}{2147483647}{0}% + \TestAdd{20}{-5}{15}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{-4}{1}{-3}% + \TestAdd{-1}{4}{3}% + \TestAdd{4}{-1}{3}% + \TestAdd{1}{-4}{-3}% + \TestAdd{-4}{-1}{-5}% + \TestAdd{-1}{-4}{-5}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{ -4 }{ 1 }{-3}% + \TestAdd{ -1 }{ 4 }{3}% + \TestAdd{ 4 }{ -1 }{3}% + \TestAdd{ 1 }{ -4 }{-3}% + \TestAdd{ -4 }{ -1 }{-5}% + \TestAdd{ -1 }{ -4 }{-5}% + \TestAdd{876543210}{111111111}{987654321}% + \TestAdd{999999999}{2}{1000000001}% + \TestAdd{100}{50+150}{300}% + \TestAdd{2147483647}{10-2147483647}{10}% +\end{qstest} + +\begin{qstest}{sub}{sub} + \TestSub{0}{0}{0}% + \TestSub{1}{0}{1}% + \TestSub{1}{2}{-1}% + \TestSub{-1}{-1}{0}% + \TestSub{2147483646}{-1}{2147483647}% + \TestSub{-2147483647}{-2147483647}{0}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{-4}{1}{-5}% + \TestSub{-1}{4}{-5}% + \TestSub{4}{-1}{5}% + \TestSub{1}{-4}{5}% + \TestSub{-4}{-1}{-3}% + \TestSub{-1}{-4}{3}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{ -4 }{ 1 }{-5}% + \TestSub{ -1 }{ 4 }{-5}% + \TestSub{ 4 }{ -1 }{5}% + \TestSub{ 1 }{ -4 }{5}% + \TestSub{ -4 }{ -1 }{-3}% + \TestSub{ -1 }{ -4 }{3}% + \TestSub{1000000000}{2}{999999998}% + \TestSub{987654321}{111111111}{876543210}% + \TestSub{100}{50+150}{-100}% + \TestSub{2147483647}{-10+2147483647}{10}% +\end{qstest} + +\begin{qstest}{shl}{shl} + \TestShl{0}{0}% + \TestShl{1}{2}% + \TestShl{5621}{11242}% + \TestShl{1073741823}{2147483646}% +\end{qstest} + +\begin{qstest}{shr}{shr} + \TestShr{0}{0}% + \TestShr{1}{0}% + \TestShr{2}{1}% + \TestShr{3}{1}% + \TestShr{4}{2}% + \TestShr{5}{2}% + \TestShr{6}{3}% + \TestShr{7}{3}% + \TestShr{8}{4}% + \TestShr{9}{4}% + \TestShr{10}{5}% + \TestShr{11}{5}% + \TestShr{12}{6}% + \TestShr{13}{6}% + \TestShr{14}{7}% + \TestShr{15}{7}% + \TestShr{16}{8}% + \TestShr{17}{8}% + \TestShr{18}{9}% + \TestShr{19}{9}% + \TestShr{20}{10}% + \TestShr{21}{10}% + \TestShr{22}{11}% + \TestShr{11241}{5620}% + \TestShr{73054202}{36527101}% + \TestShr{2147483646}{1073741823}% +\end{qstest} + +\begin{qstest}{mul}{mul} + \TestMul{0}{0}{0}% + \TestMul{1}{0}{0}% + \TestMul{0}{1}{0}% + \TestMul{1}{1}{1}% + \TestMul{3}{1}{3}% + \TestMul{1}{-3}{-3}% + \TestMul{-4}{-5}{20}% + \TestMul{3}{7}{21}% + \TestMul{7}{3}{21}% + \TestMul{3}{-7}{-21}% + \TestMul{7}{-3}{-21}% + \TestMul{-3}{7}{-21}% + \TestMul{-7}{3}{-21}% + \TestMul{-3}{-7}{21}% + \TestMul{-7}{-3}{21}% + \TestMul{12}{11}{132}% + \TestMul{999}{333}{332667}% + \TestMul{1000}{4321}{4321000}% + \TestMul{12345}{173955}{2147474475}% + \TestMul{1073741823}{2}{2147483646}% + \TestMul{2}{1073741823}{2147483646}% + \TestMul{-1073741823}{2}{-2147483646}% + \TestMul{2}{-1073741823}{-2147483646}% + \TestMul{2+3}{5+7}{60}% + \TestMul{2147483647}{2147483647/2147483647}{2147483647}% +\end{qstest} + +\begin{qstest}{sqr}{sqr} + \TestSqr{0}{0}% + \TestSqr{1}{1}% + \TestSqr{2}{4}% + \TestSqr{3}{9}% + \TestSqr{4}{16}% + \TestSqr{9}{81}% + \TestSqr{10}{100}% + \TestSqr{46340}{2147395600}% + \TestSqr{-1}{1}% + \TestSqr{-2}{4}% + \TestSqr{-46340}{2147395600}% +\end{qstest} + +\begin{qstest}{pow}{pow} + \TestPow{-2}{0}{1}% + \TestPow{-1}{0}{1}% + \TestPow{0}{0}{1}% + \TestPow{1}{0}{1}% + \TestPow{2}{0}{1}% + \TestPow{3}{0}{1}% + \TestPow{-2}{1}{-2}% + \TestPow{-1}{1}{-1}% + \TestPow{1}{1}{1}% + \TestPow{2}{1}{2}% + \TestPow{3}{1}{3}% + \TestPow{-2}{2}{4}% + \TestPow{-1}{2}{1}% + \TestPow{0}{2}{0}% + \TestPow{1}{2}{1}% + \TestPow{2}{2}{4}% + \TestPow{3}{2}{9}% + \TestPow{0}{1}{0}% + \TestPow{1}{-2}{1}% + \TestPow{1}{-1}{1}% + \TestPow{-1}{-2}{1}% + \TestPow{-1}{-1}{-1}% + \TestPow{-1}{3}{-1}% + \TestPow{-1}{4}{1}% + \TestPow{-2}{-1}{0}% + \TestPow{-2}{-2}{0}% + \TestPow{2}{3}{8}% + \TestPow{2}{4}{16}% + \TestPow{2}{5}{32}% + \TestPow{2}{6}{64}% + \TestPow{2}{7}{128}% + \TestPow{2}{8}{256}% + \TestPow{2}{9}{512}% + \TestPow{2}{10}{1024}% + \TestPow{-2}{3}{-8}% + \TestPow{-2}{4}{16}% + \TestPow{-2}{5}{-32}% + \TestPow{-2}{6}{64}% + \TestPow{-2}{7}{-128}% + \TestPow{-2}{8}{256}% + \TestPow{-2}{9}{-512}% + \TestPow{-2}{10}{1024}% + \TestPow{3}{3}{27}% + \TestPow{3}{4}{81}% + \TestPow{3}{5}{243}% + \TestPow{-3}{3}{-27}% + \TestPow{-3}{4}{81}% + \TestPow{-3}{5}{-243}% + \TestPow{2}{30}{1073741824}% + \TestPow{-3}{19}{-1162261467}% + \TestPow{5}{13}{1220703125}% + \TestPow{-7}{11}{-1977326743}% +\end{qstest} + +\begin{qstest}{div}{div} + \TestDiv{1}{1}{1}% + \TestDiv{2}{1}{2}% + \TestDiv{-2}{1}{-2}% + \TestDiv{2}{-1}{-2}% + \TestDiv{-2}{-1}{2}% + \TestDiv{15}{2}{7}% + \TestDiv{-16}{2}{-8}% + \TestDiv{1}{2}{0}% + \TestDiv{1}{3}{0}% + \TestDiv{2}{3}{0}% + \TestDiv{-2}{3}{0}% + \TestDiv{2}{-3}{0}% + \TestDiv{-2}{-3}{0}% + \TestDiv{13}{3}{4}% + \TestDiv{-13}{-3}{4}% + \TestDiv{-13}{3}{-4}% + \TestDiv{-6}{5}{-1}% + \TestDiv{-5}{5}{-1}% + \TestDiv{-4}{5}{0}% + \TestDiv{-3}{5}{0}% + \TestDiv{-2}{5}{0}% + \TestDiv{-1}{5}{0}% + \TestDiv{0}{5}{0}% + \TestDiv{1}{5}{0}% + \TestDiv{2}{5}{0}% + \TestDiv{3}{5}{0}% + \TestDiv{4}{5}{0}% + \TestDiv{5}{5}{1}% + \TestDiv{6}{5}{1}% + \TestDiv{-5}{4}{-1}% + \TestDiv{-4}{4}{-1}% + \TestDiv{-3}{4}{0}% + \TestDiv{-2}{4}{0}% + \TestDiv{-1}{4}{0}% + \TestDiv{0}{4}{0}% + \TestDiv{1}{4}{0}% + \TestDiv{2}{4}{0}% + \TestDiv{3}{4}{0}% + \TestDiv{4}{4}{1}% + \TestDiv{5}{4}{1}% + \TestDiv{12345}{678}{18}% + \TestDiv{32372}{5952}{5}% + \TestDiv{284271294}{18162}{15651}% + \TestDiv{217652429}{12561}{17327}% + \TestDiv{462028434}{5439}{84947}% + \TestDiv{2147483647}{1000}{2147483}% + \TestDiv{2147483647}{-1000}{-2147483}% + \TestDiv{-2147483647}{1000}{-2147483}% + \TestDiv{-2147483647}{-1000}{2147483}% +\end{qstest} + +\begin{qstest}{mod}{mod} + \TestMod{-6}{5}{4}% + \TestMod{-5}{5}{0}% + \TestMod{-4}{5}{1}% + \TestMod{-3}{5}{2}% + \TestMod{-2}{5}{3}% + \TestMod{-1}{5}{4}% + \TestMod{0}{5}{0}% + \TestMod{1}{5}{1}% + \TestMod{2}{5}{2}% + \TestMod{3}{5}{3}% + \TestMod{4}{5}{4}% + \TestMod{5}{5}{0}% + \TestMod{6}{5}{1}% + \TestMod{-5}{4}{3}% + \TestMod{-4}{4}{0}% + \TestMod{-3}{4}{1}% + \TestMod{-2}{4}{2}% + \TestMod{-1}{4}{3}% + \TestMod{0}{4}{0}% + \TestMod{1}{4}{1}% + \TestMod{2}{4}{2}% + \TestMod{3}{4}{3}% + \TestMod{4}{4}{0}% + \TestMod{5}{4}{1}% + \TestMod{-6}{-5}{-1}% + \TestMod{-5}{-5}{0}% + \TestMod{-4}{-5}{-4}% + \TestMod{-3}{-5}{-3}% + \TestMod{-2}{-5}{-2}% + \TestMod{-1}{-5}{-1}% + \TestMod{0}{-5}{0}% + \TestMod{1}{-5}{-4}% + \TestMod{2}{-5}{-3}% + \TestMod{3}{-5}{-2}% + \TestMod{4}{-5}{-1}% + \TestMod{5}{-5}{0}% + \TestMod{6}{-5}{-4}% + \TestMod{-5}{-4}{-1}% + \TestMod{-4}{-4}{0}% + \TestMod{-3}{-4}{-3}% + \TestMod{-2}{-4}{-2}% + \TestMod{-1}{-4}{-1}% + \TestMod{0}{-4}{0}% + \TestMod{1}{-4}{-3}% + \TestMod{2}{-4}{-2}% + \TestMod{3}{-4}{-1}% + \TestMod{4}{-4}{0}% + \TestMod{5}{-4}{-3}% + \TestMod{2147483647}{1000}{647}% + \TestMod{2147483647}{-1000}{-353}% + \TestMod{-2147483647}{1000}{353}% + \TestMod{-2147483647}{-1000}{-647}% + \TestMod{ 0 }{ 4 }{0}% + \TestMod{ 1 }{ 4 }{1}% + \TestMod{ -1 }{ 4 }{3}% + \TestMod{ 0 }{ -4 }{0}% + \TestMod{ 1 }{ -4 }{-3}% + \TestMod{ -1 }{ -4 }{-1}% + \TestMod{1+2}{1+3}{3}% + \TestMod{1-2}{1+3}{3}% + \TestMod{1-2}{1-4}{-1}% + \TestMod{1+2}{1-4}{0}% + \TestMod{1+2}{1-5}{-1}% +\end{qstest} + + +\begin{document} +\end{document} +\endinput +%% +%% End of file `intcalc-test4.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf new file mode 100644 index 00000000000..a3978b992e8 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf index b97494337ee..57996c95bab 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf and b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-example.tex b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-example.tex index 48a07c3b9b7..1466159e2db 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-example.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-example.tex @@ -8,7 +8,7 @@ %% %% This is a generated file. %% -%% Copyright (C) 2006 by Heiko Oberdiek +%% Copyright (C) 2006, 2007 by Heiko Oberdiek %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -25,7 +25,7 @@ %% This work consists of the main source file kvsetkeys.dtx %% and the derived files %% kvsetkeys.sty, kvsetkeys.pdf, kvsetkeys.ins, kvsetkeys.drv, -%% kvsetkeys-example.tex. +%% kvsetkeys-example.tex, kvsetkeys-test1.tex. %% \documentclass{article} \usepackage[T1]{fontenc} diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-test1.tex new file mode 100644 index 00000000000..718ce0bced8 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys-test1.tex @@ -0,0 +1,73 @@ +%% +%% This is file `kvsetkeys-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% kvsetkeys.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2006, 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file kvsetkeys.dtx +%% and the derived files +%% kvsetkeys.sty, kvsetkeys.pdf, kvsetkeys.ins, kvsetkeys.drv, +%% kvsetkeys-example.tex, kvsetkeys-test1.tex. +%% +\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 kvsetkeys.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `kvsetkeys-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf index ec3c2ebbe24..eb2c8c0652b 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf and b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf index f2039c821cf..77dfad4fa94 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf and b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf index b2f5c2da126..621d9703be5 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf and b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf index 6ac5c6e8ef7..0be191a8819 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test1.tex new file mode 100644 index 00000000000..531c7b9114f --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test1.tex @@ -0,0 +1,73 @@ +%% +%% This is file `pdfcol-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcol.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcol.dtx +%% and the derived files +%% pdfcol.sty, pdfcol.pdf, pdfcol.ins, pdfcol.drv, +%% pdfcol-test1.tex, pdfcol-test2.tex, pdfcol-test3.tex. +%% +\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 pdfcol.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `pdfcol-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test2.tex new file mode 100644 index 00000000000..98a4e6e52f1 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test2.tex @@ -0,0 +1,53 @@ +%% +%% This is file `pdfcol-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcol.dtx (with options: `test2') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcol.dtx +%% and the derived files +%% pdfcol.sty, pdfcol.pdf, pdfcol.ins, pdfcol.drv, +%% pdfcol-test1.tex, pdfcol-test2.tex, pdfcol-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\usepackage{pdfcol}[2007/09/09] +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\begin{document} + \begin{qstest}{pdfcol}{}% + \makeatletter + \Expect*{\ifpdfcolAvailable true\else false\fi}{false}% + \setbox0=\hbox{% + \pdfcolInitStack{test}% + \pdfcolSwitchStack{test}% + \pdfcolSetCurrent{test}% + \pdfcolSetCurrent{}% + }% + \Expect*{\the\wd0}{0.0pt}% + \Expect*{\pdfcolIfStackExists{dummy}{true}{false}}{false}% + \end{qstest}% +\end{document} +\endinput +%% +%% End of file `pdfcol-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test3.tex new file mode 100644 index 00000000000..027ad453882 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcol-test3.tex @@ -0,0 +1,60 @@ +%% +%% This is file `pdfcol-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcol.dtx (with options: `test3') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcol.dtx +%% and the derived files +%% pdfcol.sty, pdfcol.pdf, pdfcol.ins, pdfcol.drv, +%% pdfcol-test1.tex, pdfcol-test2.tex, pdfcol-test3.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\nofiles +\documentclass{article} +\usepackage{pdfcol}[2007/09/09] +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\begin{document} + \begin{qstest}{pdfcol}{}% + \makeatletter + \Expect*{\ifpdfcolAvailable true\else false\fi}{true}% + \Expect*{\number\@pdfcolorstack}{0}% + \setbox0=\hbox{% + \pdfcolInitStack{test}% + \Expect*{\number\pdfcol@Stack@test}{1}% + \Expect*{\number\@pdfcolorstack}{0}% + \pdfcolSwitchStack{test}% + \Expect*{\number\@pdfcolorstack}{1}% + \pdfcolSetCurrent{test}% + \pdfcolSetCurrent{}% + }% + \Expect*{\the\wd0}{0.0pt}% + \Expect*{\number\@pdfcolorstack}{0}% + \Expect*{\number\pdfcol@Stack@test}{1}% + \Expect*{\pdfcolIfStackExists{test}{true}{false}}{true}% + \Expect*{\pdfcolIfStackExists{dummy}{true}{false}}{false}% + \end{qstest}% +\end{document} +\endinput +%% +%% End of file `pdfcol-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf new file mode 100644 index 00000000000..be5d4d31346 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot-test1.tex new file mode 100644 index 00000000000..5ea5fc5e585 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot-test1.tex @@ -0,0 +1,52 @@ +%% +%% This is file `pdfcolfoot-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcolfoot.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcolfoot.dtx +%% and the derived files +%% pdfcolfoot.sty, pdfcolfoot.pdf, pdfcolfoot.ins, pdfcolfoot.drv, +%% pdfcolfoot-test1.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\AtEndDocument{% + \typeout{}% + \typeout{**************************************}% + \typeout{*** \space Check the PDF file manually! \space ***}% + \typeout{**************************************}% + \typeout{}% +} +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname pdfcompresslevel\endcsname\relax +\else + \pdfcompresslevel=0 % +\fi +\documentclass[12pt,a5paper]{article} +\usepackage{pdfcolfoot}[2007/09/09] +\dimen\footins=\baselineskip % for testing +\begin{document} + Black\footnote{Black \textcolor{blue}{Blue\\Blue} Black} % + \textcolor{red}{Red\newpage Red} Black% +\end{document} +\endinput +%% +%% End of file `pdfcolfoot-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf index a9e7d244224..48ae28c940f 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf index f98b9272f67..7e34d34f014 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel-test1.tex new file mode 100644 index 00000000000..d15d2454c5d --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel-test1.tex @@ -0,0 +1,79 @@ +%% +%% This is file `pdfcolparallel-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcolparallel.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcolparallel.dtx +%% and the derived files +%% pdfcolparallel.sty, pdfcolparallel.pdf, pdfcolparallel.ins, pdfcolparallel.drv, +%% pdfcolparallel-test1.tex. +%% +\AtEndDocument{% + \typeout{}% + \typeout{**************************************}% + \typeout{*** \space Check the PDF file manually! \space ***}% + \typeout{**************************************}% + \typeout{}% +} +\documentclass{article} +\usepackage{xcolor} +\usepackage{pdfcolparallel}[2007/09/09] + +\begin{document} + \color{green}% + Green% + \begin{Parallel}{0.47\textwidth}{0.47\textwidth}% + \ParallelLText{% + \textcolor{red}{% + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll.% + }% + }% + \ParallelRText{% + \textcolor{blue}{% + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll.% + }% + }% + \end{Parallel}% + Green% + \begin{Parallel}[p]{\textwidth}{\textwidth}% + \ParallelLText{% + \textcolor{red}{% + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Foo bar bla bla bla.% + }% + }% + \ParallelRText{% + \textcolor{blue}{% + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Ein Absatz, der sich ueber zwei Zeilen erstrecken soll. % + Foo bar bla bla bla.% + }% + }% + \end{Parallel}% + Green% +\end{document} +\endinput +%% +%% End of file `pdfcolparallel-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf new file mode 100644 index 00000000000..ab399713002 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns-test1.tex new file mode 100644 index 00000000000..531fe69027e --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns-test1.tex @@ -0,0 +1,73 @@ +%% +%% This is file `pdfcolparcolumns-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfcolparcolumns.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfcolparcolumns.dtx +%% and the derived files +%% pdfcolparcolumns.sty, pdfcolparcolumns.pdf, pdfcolparcolumns.ins, pdfcolparcolumns.drv, +%% pdfcolparcolumns-test1.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\AtEndDocument{% + \typeout{}% + \typeout{**************************************}% + \typeout{*** \space Check the PDF file manually! \space ***}% + \typeout{**************************************}% + \typeout{}% +} +\documentclass{article} +\usepackage{xcolor} +\usepackage{pdfcolparcolumns} + +\newcommand{\instruct}[1]{% + \noindent + \footnotesize + \textcolor{red}{#1}% +} + +\begin{document} + \begin{parcolumns}[colwidths={1=2.3in,2=2.3in},sloppy]{2}% + \colchunk[1]{% + \instruct{Et non dicitur versus} % + Fidelium anim\ae\ % + \instruct{% + sed immediate subiungitur antiphona finalis % + beat\ae\ Mari\ae\ Virginis% + } % + 100.% + }% + \colchunk[2]{% + \instruct{% + And the verse % + \textcolor{black}{May the souls of the faithful} % + is not said, but the final antiphon of the % + Blessed Virgin Mary, % + \textcolor{black}{100,} % + is immediately joined.% + }% + }% + \end{parcolumns}% +\end{document} +\endinput +%% +%% End of file `pdfcolparcolumns-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf new file mode 100644 index 00000000000..4e252de7e10 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf index 77f9a1093bc..52eda074d29 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test1.tex index d7d2d9a86a7..ff1f9fc9d3a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test1.tex @@ -26,362 +26,49 @@ %% and the derived files %% pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv, %% pdfescape-test1.tex, pdfescape-test2.tex, -%% pdfescape-test3.tex. +%% pdfescape-test3.tex, pdfescape-test4.tex. %% -\NeedsTeXFormat{LaTeX2e} -\makeatletter -\ProvidesFile{pdfescape-test1.tex}% - [2007/04/21 v1.4 Test with \string\pdfescape... commands]% -\@ifundefined{pdfescapehex}{% - \PackageError{pdfescape-test1}{% - Missing \string\pdfescape... commands% - }{Test aborted.}% - \stop -}{} -\RequirePackage{qstest} -\IncludeTests{*} -\LogTests{log}{*}{*} - -\newcommand*{\ExpectVar}[2]{% - \ifx#1#2% - \else - \begingroup - \@onelevel@sanitize#1% - \@onelevel@sanitize#2% - \typeout{[#1] <> [#2]}% hash-ok - \endgroup - \fi - \Expect*{\ifx#1#2true\else false\fi}{true}% -} - -\makeatletter -\begingroup - \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 % +\catcode`\@=11 % +\def\RestoreCatcodes{} +\count@=0 % +\loop + \edef\RestoreCatcodes{% + \RestoreCatcodes + \catcode\the\count@=\the\catcode\count@\relax }% -\endgroup -\newcommand*{\AllBytesHex}{% - 000102030405060708090A0B0C0D0E0F% - 101112131415161718191A1B1C1D1E1F% - 202122232425262728292A2B2C2D2E2F% - 303132333435363738393A3B3C3D3E3F% - 404142434445464748494A4B4C4D4E4F% - 505152535455565758595A5B5C5D5E5F% - 606162636465666768696A6B6C6D6E6F% - 707172737475767778797A7B7C7D7E7F% - 808182838485868788898A8B8C8D8E8F% - 909192939495969798999A9B9C9D9E9F% - A0A1A2A3A4A5A6A7A8A9AAABACADAEAF% - B0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF% - C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF% - D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF% - E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF% - F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF% +\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 } -\@onelevel@sanitize\AllBytesHex -\expandafter\lowercase\expandafter{% - \expandafter\newcommand\expandafter*\expandafter\AllBytesHexLC - \expandafter{\AllBytesHex}% +\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 pdfescape.sty\relax + \RestoreCatcodes } -\newcommand*{\AllBytesName}{} -\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\@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 -\@onelevel@sanitize\AllBytesName - -\newcommand*{\AllBytesString}{} -\begingroup - \def\|{|}% - \edef\%{\@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 -\@onelevel@sanitize\AllBytesString - -\RequirePackage{pdfescape} - -\begin{qstest}{all-hex}{\AllBytes, escapehex} - \EdefEscapeHex\x{\AllBytes}% - \Expect*{\x}*{\AllBytesHex}% - \ExpectVar\x\AllBytesHex -\end{qstest} - -\begin{qstest}{all-unhex}{\AllBytesHex, unescapehex} - \EdefUnescapeHex\x{\AllBytesHex}% - \Expect*{\x}*{\AllBytes}% - \ExpectVar\x\AllBytes -\end{qstest} - -\begin{qstest}{all-unhex-lc}{\AllBytesHexLC, unescapehex, lowercase} - \EdefUnescapeHex\x{\AllBytesHexLC}% - \Expect*{\x}*{\AllBytes}% - \ExpectVar\x\AllBytes -\end{qstest} - -\begin{qstest}{unhex-incomplete}{unescapehex, incomplete} - \EdefUnescapeHex\x{4}% - \Expect*{\x}{@}% -\end{qstest} - -\begin{qstest}{unhex-space}{unescapehex, space} - \EdefUnescapeHex\x{20}% - \Expect*{\x}{ }% - \ExpectVar\x\space -\end{qstest} - -\begin{qstest}{unhex-spaces}{unescapehex, spaces} - \EdefUnescapeHex\x{204020204120}% - \def\y#1{% - \edef\z{#1\string @#1#1\string A#1}% - }\y{ }% - \Expect*{\x}*{\z}% - \ExpectVar\x\z -\end{qstest} - -\begin{qstest}{unhex-hash}{unescapehex, hash} - \catcode`\#=12 % - \EdefUnescapeHex\x{#20}% - \ExpectVar\x\space -\end{qstest} - -\begin{qstest}{unhex-invalid}{unescapehex, invalid} - \def\test#1#2{% - \EdefUnescapeHex\x{#1}% - \edef\y{#2}% - \@onelevel@sanitize\y - \ExpectVar\x\y - }% - \edef\x{\pdfunescapehex{4X}}% - \edef\y{\string @}% - \ifx\x\y - \else - \def~{\space}% - \typeout{************************************}% - \typeout{* Your pdfTeX contains bug 777.~~~~*}% - \typeout{* This test is redefined as dummy, *}% - \typeout{* because it triggers the bug.~~~~~*}% - \typeout{************************************}% - \def\test#1#2{}% - \fi - \test{X}{}% - \test{XY}{}% - \test{XYZ}{}% - \test{A}{^^a0}% - \test{AX}{^^a0}% - \test{XA}{^^a0}% - \test{XXAXX}{^^a0}% -\end{qstest} - -\begin{qstest}{all-name}{\AllBytes, escapename} - \EdefEscapeName\x{\AllBytes}% - \Expect*{\x}*{\AllBytesName}% - \ExpectVar\x\AllBytesName -\end{qstest} - -\begin{qstest}{all-string}{\AllBytes, escapestring} - \EdefEscapeString\x{\AllBytes}% - \Expect*{\x}*{\AllBytesString}% - \ExpectVar\x\AllBytesString -\end{qstest} - -\begin{qstest}{uchexdigit}{unescape, uppercase hex digit} - \catcode`\@=11 % - \catcode0=12 % - \def\test#1#2{% - \uccode0=#1\relax - \uppercase{% - \def\x{^^@}% - }% - \Expect*{% - \ifcase\expandafter\PE@TestUcHexDigit\x - true% - \else - false% - \fi - }{#2}% - }% - \def\range#1#2#3{% - \count0=#1\relax - \loop - \ifnum\count0<#2\relax - \test{\count0}{#3}% - \advance\count0 by 1 % - \repeat - }% - \range{0}{47}{false}% - \range{48}{57}{true}% - \range{58}{64}{false}% - \range{65}{70}{true}% - \range{71}{255}{false}% -\end{qstest} - -\begin{qstest}{unescapename}{unescapename} - \def\test#1#2{% - \EdefUnescapeName\x{#1}% - \edef\y{#2}% - \@onelevel@sanitize\y - \ExpectVar\x\y - }% - \catcode`\#=12 % - \catcode0=12 % - \test{}{}% - \test{x}{x}% - \test{xy}{xy}% - \test{#}{#}% - \test{##}{##}% - \test{###}{###}% - \test{####}{####}% - \test{#x}{#x}% - \test{#xy}{#xy}% - \test{#1}{#1}% - \test{#40}{@}% - \test{#400}{@0}% - \test{#4x0}{#4x0}% - \test{#ab}{^^ab}% - \test{#00}{^^@}% - \test{x#40y#40z}{x@y@z}% - \test{#40#40#40#40}{@@@@}% - \test{a#x}{a#x}% - \test{a#xy}{a#xy}% - \test{a#1}{a#1}% - \test{a#40}{a@}% - \test{a#400}{a@0}% - \test{#20}{ }% - \test{a#20}{a }% - \test{a#20b}{a b}% - \test{a#20#20#20b}{a \space\space b}% -\end{qstest} - -\begin{qstest}{unescapestring}{unescapestring} - \def\test#1#2{% - \EdefUnescapeString\x{#1}% - \edef\y{#2}% - \@onelevel@sanitize\y - \ExpectVar\x\y - }% - \catcode0=12 % - \def\DefChar#1#2{% - \begingroup - \uccode0=#2\relax - \uppercase{\endgroup - \def#1{^^@}% - }% - }% - \DefChar\nul{0}% - \DefChar\one{1}% - \DefChar\bel{8}% - \DefChar\tab{9}% - \DefChar\lf{10}% - \DefChar\ff{12}% - \DefChar\cr{13}% - \DefChar\\{92}% - \test{}{}% - \test{a}{a}% - \test{\\}{}% - \test{\\\\}{\\}% - \test{\\\\y}{\\y}% - \test{\\000}{\nul}% - \test{\\b}{\bel}% - \test{\\t}{\tab}% - \test{\\n}{\lf}% - \test{\\f}{\ff}% - \test{\\r}{\cr}% - \test{\\(}{(}% - \test{\\)}{)}% - \test{\\040}{ }% - \test{\\100}{@}% - \test{\\40}{ }% - \test{\\1}{\one}% - \test{\\01}{\one}% - \test{\\001}{\one}% - \test{\\18}{\one8}% - \test{\\018}{\one8}% - \test{\\0018}{\one8}% - \test{x\\}{x}% - \test{x\\\\}{x\\}% - \test{x\\\\y}{x\\y}% - \test{x\\000}{x\nul}% - \test{x\\b}{x\bel}% - \test{x\\t}{x\tab}% - \test{x\\n}{x\lf}% - \test{x\\f}{x\ff}% - \test{x\\r}{x\cr}% - \test{x\\(}{x(}% - \test{x\\)}{x)}% - \test{x\\040}{x }% - \test{x\\100}{x@}% - \test{x\\40}{x }% - \test{x\\1}{x\one}% - \test{x\\01}{x\one}% - \test{x\\001}{x\one}% - \test{x\\18}{x\one8}% - \test{x\\018}{x\one8}% - \test{x\\0018}{x\one8}% - \test{\\b\\t\\n\\f\\r\\(\\)\\\\\\000\\040}{% - \bel\tab\lf\ff\cr()\\\nul\space - }% - \test{\\\lf}{}% - \test{x\\\lf}{x}% - \test{\cr}{\lf}% - \test{\cr\lf}{\lf}% - \test{\lf}{\lf}% - \test{\lf\cr}{\lf\lf}% - \test{x\cr}{x\lf}% - \test{x\cr\lf}{x\lf}% - \test{x\lf}{x\lf}% - \test{x\lf\cr}{x\lf\lf}% - \test{x\\\cr\lf y\cr}{xy\lf}% -\end{qstest} -\stop +\Test +\csname @@end\endcsname +\end \endinput %% %% End of file `pdfescape-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test2.tex index 2f965aa59e3..2f5df20991b 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test2.tex @@ -26,19 +26,15 @@ %% and the derived files %% pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv, %% pdfescape-test1.tex, pdfescape-test2.tex, -%% pdfescape-test3.tex. +%% pdfescape-test3.tex, pdfescape-test4.tex. %% \NeedsTeXFormat{LaTeX2e} \makeatletter -\ProvidesFile{pdfescape-test2.tex}% - [2007/04/21 v1.4 Test without \string\pdfescape..., with e-TeX]% -\let\pdfescapehex\@undefined -\let\pdfunescapehex\@undefined -\let\pdfescapename\@undefined -\let\pdfescapestring\@undefined -\@ifundefined{numexpr}{% - \PackageError{pdfescape-test2}{% - Missing \eTeX +\ProvidesFile{pdfescape-test1.tex}% + [2007/09/09 v1.6 Test with \string\pdfescape... commands]% +\@ifundefined{pdfescapehex}{% + \PackageError{pdfescape-test1}{% + Missing \string\pdfescape... commands% }{Test aborted.}% \stop }{} @@ -204,6 +200,18 @@ \@onelevel@sanitize\y \ExpectVar\x\y }% + \edef\x{\pdfunescapehex{4X}}% + \edef\y{\string @}% + \ifx\x\y + \else + \def~{\space}% + \typeout{************************************}% + \typeout{* Your pdfTeX contains bug 777.~~~~*}% + \typeout{* This test is redefined as dummy, *}% + \typeout{* because it triggers the bug.~~~~~*}% + \typeout{************************************}% + \def\test#1#2{}% + \fi \test{X}{}% \test{XY}{}% \test{XYZ}{}% diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test3.tex index f8a0a303ad6..3559f6d91ce 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test3.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test3.tex @@ -26,16 +26,22 @@ %% and the derived files %% pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv, %% pdfescape-test1.tex, pdfescape-test2.tex, -%% pdfescape-test3.tex. +%% pdfescape-test3.tex, pdfescape-test4.tex. %% \NeedsTeXFormat{LaTeX2e} \makeatletter -\ProvidesFile{pdfescape-test3.tex}% - [2007/04/21 v1.4 Test without \string\pdfescape... and e-TeX]% +\ProvidesFile{pdfescape-test2.tex}% + [2007/09/09 v1.6 Test without \string\pdfescape..., with e-TeX]% \let\pdfescapehex\@undefined \let\pdfunescapehex\@undefined \let\pdfescapename\@undefined \let\pdfescapestring\@undefined +\@ifundefined{numexpr}{% + \PackageError{pdfescape-test2}{% + Missing \eTeX + }{Test aborted.}% + \stop +}{} \RequirePackage{qstest} \IncludeTests{*} \LogTests{log}{*}{*} @@ -145,13 +151,7 @@ |endgroup \@onelevel@sanitize\AllBytesString -\let\org@detokenize\detokenize -\let\detokenize\@undefined -\let\org@numexpr\numexpr -\let\numexpr\@undefined \RequirePackage{pdfescape} -\let\detokenize\org@detokenize -\let\numexpr\org@numexpr \begin{qstest}{all-hex}{\AllBytes, escapehex} \EdefEscapeHex\x{\AllBytes}% diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test4.tex new file mode 100644 index 00000000000..6043b54bb89 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape-test4.tex @@ -0,0 +1,379 @@ +%% +%% This is file `pdfescape-test4.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% pdfescape.dtx (with options: `test4') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file pdfescape.dtx +%% and the derived files +%% pdfescape.sty, pdfescape.pdf, pdfescape.ins, pdfescape.drv, +%% pdfescape-test1.tex, pdfescape-test2.tex, +%% pdfescape-test3.tex, pdfescape-test4.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\makeatletter +\ProvidesFile{pdfescape-test3.tex}% + [2007/09/09 v1.6 Test without \string\pdfescape... and e-TeX]% +\let\pdfescapehex\@undefined +\let\pdfunescapehex\@undefined +\let\pdfescapename\@undefined +\let\pdfescapestring\@undefined +\RequirePackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} + +\newcommand*{\ExpectVar}[2]{% + \ifx#1#2% + \else + \begingroup + \@onelevel@sanitize#1% + \@onelevel@sanitize#2% + \typeout{[#1] <> [#2]}% hash-ok + \endgroup + \fi + \Expect*{\ifx#1#2true\else false\fi}{true}% +} + +\makeatletter +\begingroup + \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 +\newcommand*{\AllBytesHex}{% + 000102030405060708090A0B0C0D0E0F% + 101112131415161718191A1B1C1D1E1F% + 202122232425262728292A2B2C2D2E2F% + 303132333435363738393A3B3C3D3E3F% + 404142434445464748494A4B4C4D4E4F% + 505152535455565758595A5B5C5D5E5F% + 606162636465666768696A6B6C6D6E6F% + 707172737475767778797A7B7C7D7E7F% + 808182838485868788898A8B8C8D8E8F% + 909192939495969798999A9B9C9D9E9F% + A0A1A2A3A4A5A6A7A8A9AAABACADAEAF% + B0B1B2B3B4B5B6B7B8B9BABBBCBDBEBF% + C0C1C2C3C4C5C6C7C8C9CACBCCCDCECF% + D0D1D2D3D4D5D6D7D8D9DADBDCDDDEDF% + E0E1E2E3E4E5E6E7E8E9EAEBECEDEEEF% + F0F1F2F3F4F5F6F7F8F9FAFBFCFDFEFF% +} +\@onelevel@sanitize\AllBytesHex +\expandafter\lowercase\expandafter{% + \expandafter\newcommand\expandafter*\expandafter\AllBytesHexLC + \expandafter{\AllBytesHex}% +} +\newcommand*{\AllBytesName}{} +\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\@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 +\@onelevel@sanitize\AllBytesName + +\newcommand*{\AllBytesString}{} +\begingroup + \def\|{|}% + \edef\%{\@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 +\@onelevel@sanitize\AllBytesString + +\let\org@detokenize\detokenize +\let\detokenize\@undefined +\let\org@numexpr\numexpr +\let\numexpr\@undefined +\RequirePackage{pdfescape} +\let\detokenize\org@detokenize +\let\numexpr\org@numexpr + +\begin{qstest}{all-hex}{\AllBytes, escapehex} + \EdefEscapeHex\x{\AllBytes}% + \Expect*{\x}*{\AllBytesHex}% + \ExpectVar\x\AllBytesHex +\end{qstest} + +\begin{qstest}{all-unhex}{\AllBytesHex, unescapehex} + \EdefUnescapeHex\x{\AllBytesHex}% + \Expect*{\x}*{\AllBytes}% + \ExpectVar\x\AllBytes +\end{qstest} + +\begin{qstest}{all-unhex-lc}{\AllBytesHexLC, unescapehex, lowercase} + \EdefUnescapeHex\x{\AllBytesHexLC}% + \Expect*{\x}*{\AllBytes}% + \ExpectVar\x\AllBytes +\end{qstest} + +\begin{qstest}{unhex-incomplete}{unescapehex, incomplete} + \EdefUnescapeHex\x{4}% + \Expect*{\x}{@}% +\end{qstest} + +\begin{qstest}{unhex-space}{unescapehex, space} + \EdefUnescapeHex\x{20}% + \Expect*{\x}{ }% + \ExpectVar\x\space +\end{qstest} + +\begin{qstest}{unhex-spaces}{unescapehex, spaces} + \EdefUnescapeHex\x{204020204120}% + \def\y#1{% + \edef\z{#1\string @#1#1\string A#1}% + }\y{ }% + \Expect*{\x}*{\z}% + \ExpectVar\x\z +\end{qstest} + +\begin{qstest}{unhex-hash}{unescapehex, hash} + \catcode`\#=12 % + \EdefUnescapeHex\x{#20}% + \ExpectVar\x\space +\end{qstest} + +\begin{qstest}{unhex-invalid}{unescapehex, invalid} + \def\test#1#2{% + \EdefUnescapeHex\x{#1}% + \edef\y{#2}% + \@onelevel@sanitize\y + \ExpectVar\x\y + }% + \test{X}{}% + \test{XY}{}% + \test{XYZ}{}% + \test{A}{^^a0}% + \test{AX}{^^a0}% + \test{XA}{^^a0}% + \test{XXAXX}{^^a0}% +\end{qstest} + +\begin{qstest}{all-name}{\AllBytes, escapename} + \EdefEscapeName\x{\AllBytes}% + \Expect*{\x}*{\AllBytesName}% + \ExpectVar\x\AllBytesName +\end{qstest} + +\begin{qstest}{all-string}{\AllBytes, escapestring} + \EdefEscapeString\x{\AllBytes}% + \Expect*{\x}*{\AllBytesString}% + \ExpectVar\x\AllBytesString +\end{qstest} + +\begin{qstest}{uchexdigit}{unescape, uppercase hex digit} + \catcode`\@=11 % + \catcode0=12 % + \def\test#1#2{% + \uccode0=#1\relax + \uppercase{% + \def\x{^^@}% + }% + \Expect*{% + \ifcase\expandafter\PE@TestUcHexDigit\x + true% + \else + false% + \fi + }{#2}% + }% + \def\range#1#2#3{% + \count0=#1\relax + \loop + \ifnum\count0<#2\relax + \test{\count0}{#3}% + \advance\count0 by 1 % + \repeat + }% + \range{0}{47}{false}% + \range{48}{57}{true}% + \range{58}{64}{false}% + \range{65}{70}{true}% + \range{71}{255}{false}% +\end{qstest} + +\begin{qstest}{unescapename}{unescapename} + \def\test#1#2{% + \EdefUnescapeName\x{#1}% + \edef\y{#2}% + \@onelevel@sanitize\y + \ExpectVar\x\y + }% + \catcode`\#=12 % + \catcode0=12 % + \test{}{}% + \test{x}{x}% + \test{xy}{xy}% + \test{#}{#}% + \test{##}{##}% + \test{###}{###}% + \test{####}{####}% + \test{#x}{#x}% + \test{#xy}{#xy}% + \test{#1}{#1}% + \test{#40}{@}% + \test{#400}{@0}% + \test{#4x0}{#4x0}% + \test{#ab}{^^ab}% + \test{#00}{^^@}% + \test{x#40y#40z}{x@y@z}% + \test{#40#40#40#40}{@@@@}% + \test{a#x}{a#x}% + \test{a#xy}{a#xy}% + \test{a#1}{a#1}% + \test{a#40}{a@}% + \test{a#400}{a@0}% + \test{#20}{ }% + \test{a#20}{a }% + \test{a#20b}{a b}% + \test{a#20#20#20b}{a \space\space b}% +\end{qstest} + +\begin{qstest}{unescapestring}{unescapestring} + \def\test#1#2{% + \EdefUnescapeString\x{#1}% + \edef\y{#2}% + \@onelevel@sanitize\y + \ExpectVar\x\y + }% + \catcode0=12 % + \def\DefChar#1#2{% + \begingroup + \uccode0=#2\relax + \uppercase{\endgroup + \def#1{^^@}% + }% + }% + \DefChar\nul{0}% + \DefChar\one{1}% + \DefChar\bel{8}% + \DefChar\tab{9}% + \DefChar\lf{10}% + \DefChar\ff{12}% + \DefChar\cr{13}% + \DefChar\\{92}% + \test{}{}% + \test{a}{a}% + \test{\\}{}% + \test{\\\\}{\\}% + \test{\\\\y}{\\y}% + \test{\\000}{\nul}% + \test{\\b}{\bel}% + \test{\\t}{\tab}% + \test{\\n}{\lf}% + \test{\\f}{\ff}% + \test{\\r}{\cr}% + \test{\\(}{(}% + \test{\\)}{)}% + \test{\\040}{ }% + \test{\\100}{@}% + \test{\\40}{ }% + \test{\\1}{\one}% + \test{\\01}{\one}% + \test{\\001}{\one}% + \test{\\18}{\one8}% + \test{\\018}{\one8}% + \test{\\0018}{\one8}% + \test{x\\}{x}% + \test{x\\\\}{x\\}% + \test{x\\\\y}{x\\y}% + \test{x\\000}{x\nul}% + \test{x\\b}{x\bel}% + \test{x\\t}{x\tab}% + \test{x\\n}{x\lf}% + \test{x\\f}{x\ff}% + \test{x\\r}{x\cr}% + \test{x\\(}{x(}% + \test{x\\)}{x)}% + \test{x\\040}{x }% + \test{x\\100}{x@}% + \test{x\\40}{x }% + \test{x\\1}{x\one}% + \test{x\\01}{x\one}% + \test{x\\001}{x\one}% + \test{x\\18}{x\one8}% + \test{x\\018}{x\one8}% + \test{x\\0018}{x\one8}% + \test{\\b\\t\\n\\f\\r\\(\\)\\\\\\000\\040}{% + \bel\tab\lf\ff\cr()\\\nul\space + }% + \test{\\\lf}{}% + \test{x\\\lf}{x}% + \test{\cr}{\lf}% + \test{\cr\lf}{\lf}% + \test{\lf}{\lf}% + \test{\lf\cr}{\lf\lf}% + \test{x\cr}{x\lf}% + \test{x\cr\lf}{x\lf}% + \test{x\lf}{x\lf}% + \test{x\lf\cr}{x\lf\lf}% + \test{x\\\cr\lf y\cr}{xy\lf}% +\end{qstest} +\stop +\endinput +%% +%% End of file `pdfescape-test4.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf index 805fd3297d0..107c2f93d17 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf index db6821695cc..d9d0beb4611 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf index 5225b8323f2..caeacfcc186 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf and b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf index 5df3d5bb719..de133485a5b 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf and b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf index a18ef842c72..135dc0c67af 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf and b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/selinput-test1.tex index ee05ea6ee1e..1f952da54e2 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput-test1.tex @@ -51,7 +51,7 @@ \sbox2{#2}% \Expect*{wd:\the\wd0, ht:\the\ht0, dp:\the\dp0}% *{wd:\the\wd2, ht:\the\ht2, dp:\the\dp2}% - [#1=##1] % + [#1=##1] % hash-ok }% } \RequirePackage{keyval} @@ -60,23 +60,23 @@ \TestKey{Euro}{\texteuro} \makeatother \usepackage[ - warning, + warning,% ]{selinput} \inputencoding{ascii} \begin{qstest}{preamble}{} \TestEncoding{x-iso-8859-15}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^a4, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^a4,% }% \TestEncoding{x-cp1252}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^80, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^80,% }% \TestEncoding{utf8}{% - adieresis=^^c3^^a4, - germandbls=^^c3^^9f, + adieresis=^^c3^^a4,% + germandbls=^^c3^^9f,% Euro=^^e2^^82^^ac, }% \end{qstest} diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/selinput-test2.tex index 77511d0fba0..de58844bd09 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput-test2.tex @@ -51,7 +51,7 @@ \sbox2{#2}% \Expect*{wd:\the\wd0, ht:\the\ht0, dp:\the\dp0}% *{wd:\the\wd2, ht:\the\ht2, dp:\the\dp2}% - [#1=##1] % + [#1=##1] % hash-ok }% } \RequirePackage{keyval} @@ -60,24 +60,24 @@ \TestKey{Euro}{\texteuro} \makeatother \usepackage[ - warning, + warning,% utf8=utf-8, ]{selinput} \inputencoding{utf-8} \begin{qstest}{preamble}{} \TestEncoding{x-iso-8859-15}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^a4, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^a4,% }% \TestEncoding{x-cp1252}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^80, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^80,% }% \TestEncoding{utf-8}{% - adieresis=^^c3^^a4, - germandbls=^^c3^^9f, + adieresis=^^c3^^a4,% + germandbls=^^c3^^9f,% }% \end{qstest} \begin{document} diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/selinput-test3.tex index b1a16eed7bd..897643f9927 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput-test3.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput-test3.tex @@ -51,7 +51,7 @@ \sbox2{#2}% \Expect*{wd:\the\wd0, ht:\the\ht0, dp:\the\dp0}% *{wd:\the\wd2, ht:\the\ht2, dp:\the\dp2}% - [#1=##1] % + [#1=##1] % hash-ok }% } \RequirePackage{keyval} @@ -60,25 +60,25 @@ \TestKey{Euro}{\texteuro} \makeatother \usepackage[ - warning, + warning,% ucs, ]{selinput} \inputencoding{ascii} \usepackage{ucs} \begin{qstest}{preamble}{} \TestEncoding{x-iso-8859-15}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^a4, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^a4,% }% \TestEncoding{x-cp1252}{% - adieresis=^^e4, - germandbls=^^df, - Euro=^^80, + adieresis=^^e4,% + germandbls=^^df,% + Euro=^^80,% }% \TestEncoding{utf8x}{% - adieresis=^^c3^^a4, - germandbls=^^c3^^9f, + adieresis=^^c3^^a4,% + germandbls=^^c3^^9f,% Euro=^^e2^^82^^ac, }% \end{qstest} diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/selinput-test4.tex index ce9b8c5ea54..94561b045b5 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput-test4.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput-test4.tex @@ -34,17 +34,17 @@ \usepackage{qstest} \usepackage[warning,ucs]{selinput} \SelectInputMappings{ - adieresis=^^c3^^a4, - germandbls=^^c3^^9f, - Euro=^^e2^^82^^ac, + adieresis=^^c3^^a4,% + germandbls=^^c3^^9f,% + Euro=^^e2^^82^^ac,% } \begin{qstest}{encoding}{} \Expect*{\inputencodingname}{utf8x}% \end{qstest} \begin{document} - adieresis=^^c3^^a4, - germandbls=^^c3^^9f, - Euro=^^e2^^82^^ac + adieresis=^^c3^^a4, % + germandbls=^^c3^^9f, % + Euro=^^e2^^82^^ac% \end{document} \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput-test5.tex b/Master/texmf-dist/doc/latex/oberdiek/selinput-test5.tex index 0d600df35c2..aa41dcc6d43 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput-test5.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput-test5.tex @@ -34,17 +34,17 @@ \usepackage{qstest} \usepackage[warning,ucs]{selinput} \SelectInputMappings{ - adieresis={\"a}, - germandbls={{\ss}}, - Euro=\texteuro{}, + adieresis={\"a},% + germandbls={{\ss}},% + Euro=\texteuro{},% } \begin{qstest}{encoding}{} \Expect*{\inputencodingname}{ascii}% \end{qstest} \begin{document} - adieresis={\"a}, - germandbls={{\ss}}, - Euro=\texteuro{} + adieresis={\"a}, % + germandbls={{\ss}}, % + Euro=\texteuro{}% \end{document} \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf index 033c316878a..e14700e609b 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf and b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-example.tex b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-example.tex index 4cc1d35983b..8c2a7dfc8f7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-example.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-example.tex @@ -26,7 +26,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. %% \documentclass[a5paper]{article} \usepackage{url}[2005/06/27] diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test1.tex new file mode 100644 index 00000000000..92b27d356ce --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test1.tex @@ -0,0 +1,75 @@ +%% +%% This is file `setouterhbox-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% setouterhbox.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% 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-test1.tex, +%% setouterhbox-test2.tex. +%% +\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 +\endinput +%% +%% End of file `setouterhbox-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test2.tex new file mode 100644 index 00000000000..47caba209f2 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox-test2.tex @@ -0,0 +1,63 @@ +%% +%% This is file `setouterhbox-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% setouterhbox.dtx (with options: `test2') +%% +%% This is a generated file. +%% +%% Copyright (C) 2005, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% 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-test1.tex, +%% setouterhbox-test2.tex. +%% +\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} +\endinput +%% +%% End of file `setouterhbox-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf index 14a79cebe13..69044ed98d9 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf and b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf index 0a10d32a92c..4bde244f1ea 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf and b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test1.tex new file mode 100644 index 00000000000..573d15a8b42 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `soulutf8-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% soulutf8.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file soulutf8.dtx +%% and the derived files +%% soulutf8.sty, soulutf8.pdf, soulutf8.ins, soulutf8.drv, +%% soulutf8-test1.tex, soulutf8-test2.tex, soulutf8-test3.tex, +%% soulutf8-test4.tex, soulutf8-test5.tex. +%% +\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 soulutf8.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `soulutf8-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test2.tex new file mode 100644 index 00000000000..d43dc88aa01 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test2.tex @@ -0,0 +1,365 @@ +%% +%% This is file `soulutf8-test2.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% soulutf8.dtx (with options: `test2,utf8') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file soulutf8.dtx +%% and the derived files +%% soulutf8.sty, soulutf8.pdf, soulutf8.ins, soulutf8.drv, +%% soulutf8-test1.tex, soulutf8-test2.tex, soulutf8-test3.tex, +%% soulutf8-test4.tex, soulutf8-test5.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{textcomp} +\usepackage[ngerman]{babel} +\expandafter\def\csname ver@hypdestopt.sty\endcsname{} +\usepackage[unicode]{hyperref} +\usepackage{bookmark} +\usepackage{color} +\usepackage{soul}[2003/11/17] +\makeatletter +\newcommand*{\@ifDefined}[1]{% + \@ifundefined{#1}{% + \@latex@error{% + \expandafter\noexpand\csname#1\endcsname undefined% + }\@ehc + }% +} +\newcommand*{\SaveOrg}[1]{% + \@ifdefinable{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname ORG@SOUL@#1\expandafter\endcsname + \csname SOUL@#1\endcsname + }% + }% +} +\newcommand*{\RestoreOrg}[1]{% + \@ifDefined{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname SOUL@#1\expandafter\endcsname + \csname ORG@SOUL@#1\endcsname + }% + }% +} +\makeatother +\SaveOrg{eval} +\SaveOrg{splittoken} +\SaveOrg{flushcomma} +\SaveOrg{flushapo} +\SaveOrg{grave} +\SaveOrg{addgroup} +\SaveOrg{addmath} +\SaveOrg{addprotect} +\SaveOrg{addtoken} +\usepackage{soulutf8}[2007/09/09] +\usepackage[utf8]{inputenc} +\DeclareUnicodeCharacter{00A0}{\nobreakspace} +\makeatletter +\DeclareRobustCommand*{\an}{% + \def\SOUL@preamble{$^{^P}$}% + \def\SOUL@everyspace##1{##1\texttt{\char`\ }\linebreak[2]}% + \def\SOUL@postamble{$^{^E}$}% + \def\SOUL@everyhyphen{$^{^-}$\linebreak[1]}% + \def\SOUL@everyexhyphen##1{##1$^{^=}$}% + \def\SOUL@everysyllable{$^{^S}$}% + \def\SOUL@everytoken{\the\SOUL@token$^{^T}$}% + \def\SOUL@everylowerthan{$^{^L}$}% + \SOUL@ +} +\DeclareRobustCommand*{\sy}{% + \SOUL@setup + \def\SOUL@preamble{% + \lefthyphenmin=\z@ + \righthyphenmin=\z@ + }% + \def\SOUL@everyspace##1{##1\space}% + \def\SOUL@everysyllable{\the\SOUL@syllable}% + \def\SOUL@everyhyphen{% + \discretionary{% + \SOUL@setkern\SOUL@hyphkern + \SOUL@sethyphenchar + }{}{% + \hbox{\kern1pt$\cdot$}% + }% + }% + \def\SOUL@everyexhyphen##1{% + \SOUL@setkern\SOUL@hyphkern + \hbox{##1}% + \discretionary{}{}{% + \SOUL@setkern\SOUL@charkern + }% + }% + \SOUL@ +} +\DeclareRobustCommand*{\soulH}{% + \def\SOUL@preamble{% + \gdef\SOULH{}% + \soulHadd{[}% + }% + \def\SOUL@everyspace##1{% + \soulHadd{Sp}% + }% + \def\SOUL@postamble{% + \soulHadd{]}% + }% + \def\SOUL@everyhyphen{% + \soulHadd{Hy}% + }% + \def\SOUL@everyexhyphen##1{% + \soulHadd{Exhy}% + }% + \def\SOUL@everysyllable{% + \soulHadd{Sy}% + }% + \def\SOUL@everytoken{% + \soulHadd{T}% + }% + \def\SOUL@everylowerthan{% + \soulHadd{<}% + }% + \SOUL@ +} +\newcommand*{\soulHadd}[1]{% + #1% + \expandafter\gdef\expandafter\soulHstring\expandafter{% + \soulHstring + #1% + }% +} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newsavebox\boxA +\newsavebox\boxB +\newsavebox\boxC +\newcommand*{\TestDriver}[4]{% + \subsection{Driver #1}% + \@PackageInfo{soulutf8-test}{* Driver #1}% + \expandafter\let\expandafter\testdriver\csname #1\endcsname + \def\teststringA{#3}% + \def\teststringB{#4}% + \begin{qstest}{string-#2-driver-#1}{string,#2,driver,#1}% + \@PackageInfo{soulutf8-test}{* Version: soulutf8}% + \global\let\soulHstring\@empty + \setbox0=\hbox{\expandafter\testdriver\expandafter{\teststringA}}% + \let\HstringA\soulHstring + \SetTestVBox{\boxA}{\teststringA}% + % + \@PackageInfo{soulutf8-test}{* Version: soul + patch}% + \global\let\soulHstring\@empty + \RestoreOrg{eval}% + \setbox2=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringB\soulHstring + \SetTestVBox{\boxB}{\teststringB}% + % + \@PackageInfo{soulutf8-test}{* Version: original soul}% + \global\let\soulHstring\@empty + \RestoreOrg{splittoken}% + \RestoreOrg{flushcomma}% + \RestoreOrg{flushapo}% + \RestoreOrg{grave}% + \RestoreOrg{addgroup}% + \RestoreOrg{addmath}% + \RestoreOrg{addprotect}% + \RestoreOrg{addtoken}% + \setbox4=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringC\soulHstring + \SetTestVBox{\boxC}{\teststringB}% + % + \TestInfo{0}{soulutf8}% + \TestInfo{2}{soul + patch}% + \TestInfo{4}{original soul}% + \TestInfoVBox + \showboxdepth=\maxdimen + \showboxbreadth=\maxdimen + \tracingonline=\@ne + \Expect*{\HstringA}*{\HstringB}% + \Expect*{\HstringA}*{\HstringC}% + \Expect*{\the\wd0}*{\the\wd2}% + \ifdim\wd0=\wd2 % + \else + \showbox0 % + \showbox2 % + \fi + \Expect*{\the\ht0}*{\the\ht2}% + \Expect*{\the\dp0}*{\the\dp2}% + \Expect*{\the\wd\boxB}*{\the\wd\boxA}% + \Expect*{\the\wd\boxC}*{\the\wd\boxA}% + \Expect*{\the\ht\boxB}*{\the\ht\boxA}% + \ifdim\ht\boxB=\ht\boxA + \else + \showbox\boxA + \showbox\boxB + \fi + \Expect*{\the\ht\boxC}*{\the\ht\boxA}% + \Expect*{\the\dp\boxB}*{\the\dp\boxA}% + \Expect*{\the\dp\boxC}*{\the\dp\boxA}% + \end{qstest}% +} +\newcommand*{\SetTestVBox}[2]{% + \setbox#1=\vbox{% + \hsize=0pt\relax + \hfuzz=100mm\relax + \expandafter\testdriver\expandafter{#2}% + }% +} +\newcommand*{\TestInfo}[2]{% + \par + \noindent + \copy#1\relax + \hfill + \begingroup + \small + \ifdim\wd0=\wd2\relax + \ifdim\wd0=\wd4\relax + \else + \ifnum#1=2 % + \raisebox{.5\baselineskip}[0pt][0pt]{% + \llap{$\}$ }% + \rlap{width = \the\wd#1\relax\space$\{$}% + \phantom{width = 999.99999pt}% + \qquad + }% + \else + \ifnum#1=4 % + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \qquad + \fi + \fi + \fi + \else + \begingroup + \bfseries + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \endgroup + \qquad + \fi + \rlap{(#2)}% + \phantom{(original soul)}% + \endgroup + \par +} +\newcommand*{\TestInfoVBox}{% + \par + \noindent + \mbox{\vrule\relax\space\copy\boxA}% + \ifdim\ht\boxA=\ht\boxB + \else + \hfill + \begingroup + \small + \rlap{(soulutf8)}% + \phantom{(soulutf8)}% + \endgroup + \par + \noindent + \mbox{\vrule\relax\space\copy\boxB}% + \hfill + \begingroup + \small + \rlap{(soul)}% + \phantom{(soulutf8)}% + \endgroup + \fi + \par +} +\makeatletter +\newcommand*{\Test}[3]{% + \clearpage + \begingroup + \def\linebreak{\textbackslash linebreak }% + \def\\{\textbackslash\textbackslash}% + \def\soulomit##1{% + \textbackslash soulomit\textbraceleft##1\textbraceright + }% + \def\mbox##1{% + \textbackslash mbox\textbraceleft##1\textbraceright + }% + \def\abc{\textbackslash abc }% + \def\texttt##1{% + \textbackslash texttt\textbraceleft##1\textbraceright + }% + \def\c##1{% + \textbackslash c\textbraceleft##1\textbraceright + }% + \csname protected@edef\endcsname\x{\endgroup + \noexpand\section{String #1: #2}% + }% + \x + \TestDriver{so}{#1}{#2}{#3}% + \TestDriver{caps}{#1}{#2}{#3}% + \TestDriver{ul}{#1}{#2}{#3}% + \TestDriver{st}{#1}{#2}{#3}% + \TestDriver{hl}{#1}{#2}{#3}% + \TestDriver{an}{#1}{#2}{#3}% + \TestDriver{sy}{#1}{#2}{#3}% + \TestDriver{soulH}{#1}{#2}{#3}% +} +\makeatother +\begin{document} + \Test A{}{}% + \Test B{Hello World}{Hello World}% + \Test C{% + Umlauts: ^^c3^^84^^c3^^96^^c3^^9c^^c3^^a4^^c3^^b6^^c3^^bc^^c3^^9f% + }{% + Umlauts: \"A\"O\"U\"a\"o\"u\ss + }% + \Test D{Euro: ^^e2^^82^^ac}{Euro: \texteuro}% + \Test E{Stra^^c3^^9fe}{Stra\ss e}% + \Test F{R^^c3^^b6mer}{R\"omer}% + \Test G{A^^e2^^80^^93B^^e2^^80^^94C}{A--B---C}% + \Test H{X^^c2^^a0Y}{X~Y}% + \Test I{A^^c5^^a4}{A\v T}% + \Test J{A,B,,C,,,D,,,,E}{A,B,,C,,,D,,,,E}% + \Test K{A'B''C'''D''''E}{A'B''C'''D''''E}% + \Test L{A`B``C```D````E}{A`B``C```D````E}% + \Test M{A$x$B}{A$x$B}% + \Test N{A\mbox{abc}B}{A\mbox{abc}B}% + \Test O{,,TA''}{,,TA''}% + \Test P{{!`}Hola{?`}}{{!`}Hola{?`}}% + \Test Q{re-sent\slash x}{re-sent\slash x}% + \Test R{new\\line}{new\\line}% + \Test S{foo\linebreak bar}{foo\linebreak bar}% + \Test T{Virchow{sche}}{Virchow{sche}}% + \Test U{A\soulomit{foo}B}{A\soulomit{foo}B}% + \Test V{A\texttt{xyz}B}{A\texttt{xyz}B}% + \Test W{ffi}{ffi}% + \Test X{f{}f{}i}{f{}f{}i}% + \Test Y{f\mbox{}f\mbox{}i}{f\mbox{}f\mbox{}i}% + \Test Z{\c{\"a}}{{\c{\"a}}}% + \let\abcx\UNDEFINED + \def\abc{% + \begingroup + \def\abcx{x}% + \abcx + \endgroup + }% + \Test{AA}{[{x\abc x}]}{[{xxx}]}% +\end{document} +\endinput +%% +%% End of file `soulutf8-test2.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test3.tex b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test3.tex new file mode 100644 index 00000000000..d6d33ae9a73 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test3.tex @@ -0,0 +1,377 @@ +%% +%% This is file `soulutf8-test3.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% soulutf8.dtx (with options: `test3,utf8x') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file soulutf8.dtx +%% and the derived files +%% soulutf8.sty, soulutf8.pdf, soulutf8.ins, soulutf8.drv, +%% soulutf8-test1.tex, soulutf8-test2.tex, soulutf8-test3.tex, +%% soulutf8-test4.tex, soulutf8-test5.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{textcomp} +\usepackage[ngerman]{babel} +\expandafter\def\csname ver@hypdestopt.sty\endcsname{} +\usepackage[unicode]{hyperref} +\usepackage{bookmark} +\usepackage{color} +\usepackage{soul}[2003/11/17] +\makeatletter +\newcommand*{\@ifDefined}[1]{% + \@ifundefined{#1}{% + \@latex@error{% + \expandafter\noexpand\csname#1\endcsname undefined% + }\@ehc + }% +} +\newcommand*{\SaveOrg}[1]{% + \@ifdefinable{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname ORG@SOUL@#1\expandafter\endcsname + \csname SOUL@#1\endcsname + }% + }% +} +\newcommand*{\RestoreOrg}[1]{% + \@ifDefined{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname SOUL@#1\expandafter\endcsname + \csname ORG@SOUL@#1\endcsname + }% + }% +} +\makeatother +\SaveOrg{eval} +\SaveOrg{splittoken} +\SaveOrg{flushcomma} +\SaveOrg{flushapo} +\SaveOrg{grave} +\SaveOrg{addgroup} +\SaveOrg{addmath} +\SaveOrg{addprotect} +\SaveOrg{addtoken} +\usepackage{soulutf8}[2007/09/09] +\let\origshow\show +\usepackage[utf8x]{inputenc} +\AtBeginDocument{% + \let\show\origshow +} +\makeatletter +\DeclareRobustCommand*{\an}{% + \def\SOUL@preamble{$^{^P}$}% + \def\SOUL@everyspace##1{##1\texttt{\char`\ }\linebreak[2]}% + \def\SOUL@postamble{$^{^E}$}% + \def\SOUL@everyhyphen{$^{^-}$\linebreak[1]}% + \def\SOUL@everyexhyphen##1{##1$^{^=}$}% + \def\SOUL@everysyllable{$^{^S}$}% + \def\SOUL@everytoken{\the\SOUL@token$^{^T}$}% + \def\SOUL@everylowerthan{$^{^L}$}% + \SOUL@ +} +\DeclareRobustCommand*{\sy}{% + \SOUL@setup + \def\SOUL@preamble{% + \lefthyphenmin=\z@ + \righthyphenmin=\z@ + }% + \def\SOUL@everyspace##1{##1\space}% + \def\SOUL@everysyllable{\the\SOUL@syllable}% + \def\SOUL@everyhyphen{% + \discretionary{% + \SOUL@setkern\SOUL@hyphkern + \SOUL@sethyphenchar + }{}{% + \hbox{\kern1pt$\cdot$}% + }% + }% + \def\SOUL@everyexhyphen##1{% + \SOUL@setkern\SOUL@hyphkern + \hbox{##1}% + \discretionary{}{}{% + \SOUL@setkern\SOUL@charkern + }% + }% + \SOUL@ +} +\DeclareRobustCommand*{\soulH}{% + \def\SOUL@preamble{% + \gdef\SOULH{}% + \soulHadd{[}% + }% + \def\SOUL@everyspace##1{% + \soulHadd{Sp}% + }% + \def\SOUL@postamble{% + \soulHadd{]}% + }% + \def\SOUL@everyhyphen{% + \soulHadd{Hy}% + }% + \def\SOUL@everyexhyphen##1{% + \soulHadd{Exhy}% + }% + \def\SOUL@everysyllable{% + \soulHadd{Sy}% + }% + \def\SOUL@everytoken{% + \soulHadd{T}% + }% + \def\SOUL@everylowerthan{% + \soulHadd{<}% + }% + \SOUL@ +} +\newcommand*{\soulHadd}[1]{% + #1% + \expandafter\gdef\expandafter\soulHstring\expandafter{% + \soulHstring + #1% + }% +} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newsavebox\boxA +\newsavebox\boxB +\newsavebox\boxC +\newcommand*{\TestDriver}[4]{% + \subsection{Driver #1}% + \@PackageInfo{soulutf8-test}{* Driver #1}% + \expandafter\let\expandafter\testdriver\csname #1\endcsname + \def\teststringA{#3}% + \def\teststringB{#4}% + \begin{qstest}{string-#2-driver-#1}{string,#2,driver,#1}% + \@PackageInfo{soulutf8-test}{* Version: soulutf8}% + \global\let\soulHstring\@empty + \setbox0=\hbox{\expandafter\testdriver\expandafter{\teststringA}}% + \let\HstringA\soulHstring + \SetTestVBox{\boxA}{\teststringA}% + % + \@PackageInfo{soulutf8-test}{* Version: soul + patch}% + \global\let\soulHstring\@empty + \RestoreOrg{eval}% + \setbox2=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringB\soulHstring + \SetTestVBox{\boxB}{\teststringB}% + % + \@PackageInfo{soulutf8-test}{* Version: original soul}% + \global\let\soulHstring\@empty + \RestoreOrg{splittoken}% + \RestoreOrg{flushcomma}% + \RestoreOrg{flushapo}% + \RestoreOrg{grave}% + \RestoreOrg{addgroup}% + \RestoreOrg{addmath}% + \RestoreOrg{addprotect}% + \RestoreOrg{addtoken}% + \setbox4=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringC\soulHstring + \SetTestVBox{\boxC}{\teststringB}% + % + \TestInfo{0}{soulutf8}% + \TestInfo{2}{soul + patch}% + \TestInfo{4}{original soul}% + \TestInfoVBox + \showboxdepth=\maxdimen + \showboxbreadth=\maxdimen + \tracingonline=\@ne + \Expect*{\HstringA}*{\HstringB}% + \Expect*{\HstringA}*{\HstringC}% + \Expect*{\the\wd0}*{\the\wd2}% + \ifdim\wd0=\wd2 % + \else + \showbox0 % + \showbox2 % + \fi + \Expect*{\the\ht0}*{\the\ht2}% + \Expect*{\the\dp0}*{\the\dp2}% + \Expect*{\the\wd\boxB}*{\the\wd\boxA}% + \Expect*{\the\wd\boxC}*{\the\wd\boxA}% + \Expect*{\the\ht\boxB}*{\the\ht\boxA}% + \ifdim\ht\boxB=\ht\boxA + \else + \showbox\boxA + \showbox\boxB + \fi + \Expect*{\the\ht\boxC}*{\the\ht\boxA}% + \Expect*{\the\dp\boxB}*{\the\dp\boxA}% + \Expect*{\the\dp\boxC}*{\the\dp\boxA}% + \end{qstest}% +} +\newcommand*{\SetTestVBox}[2]{% + \setbox#1=\vbox{% + \hsize=0pt\relax + \hfuzz=100mm\relax + \expandafter\testdriver\expandafter{#2}% + }% +} +\newcommand*{\TestInfo}[2]{% + \par + \noindent + \copy#1\relax + \hfill + \begingroup + \small + \ifdim\wd0=\wd2\relax + \ifdim\wd0=\wd4\relax + \else + \ifnum#1=2 % + \raisebox{.5\baselineskip}[0pt][0pt]{% + \llap{$\}$ }% + \rlap{width = \the\wd#1\relax\space$\{$}% + \phantom{width = 999.99999pt}% + \qquad + }% + \else + \ifnum#1=4 % + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \qquad + \fi + \fi + \fi + \else + \begingroup + \bfseries + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \endgroup + \qquad + \fi + \rlap{(#2)}% + \phantom{(original soul)}% + \endgroup + \par +} +\newcommand*{\TestInfoVBox}{% + \par + \noindent + \mbox{\vrule\relax\space\copy\boxA}% + \ifdim\ht\boxA=\ht\boxB + \else + \hfill + \begingroup + \small + \rlap{(soulutf8)}% + \phantom{(soulutf8)}% + \endgroup + \par + \noindent + \mbox{\vrule\relax\space\copy\boxB}% + \hfill + \begingroup + \small + \rlap{(soul)}% + \phantom{(soulutf8)}% + \endgroup + \fi + \par +} +\makeatletter +\newcommand*{\Test}[3]{% + \clearpage + \begingroup + \def\linebreak{\textbackslash linebreak }% + \def\\{\textbackslash\textbackslash}% + \def\soulomit##1{% + \textbackslash soulomit\textbraceleft##1\textbraceright + }% + \def\mbox##1{% + \textbackslash mbox\textbraceleft##1\textbraceright + }% + \def\abc{\textbackslash abc }% + \def\texttt##1{% + \textbackslash texttt\textbraceleft##1\textbraceright + }% + \def\c##1{% + \textbackslash c\textbraceleft##1\textbraceright + }% + \count@=128 % + \loop + \ifnum\count@<256 % + \lccode`\~=\count@ + \lowercase{% + \def~{\noexpand~}% + }% + \advance\count@\@ne + \repeat + \csname protected@edef\endcsname\x{\endgroup + \noexpand\section{String #1: #2}% + }% + \x + \TestDriver{so}{#1}{#2}{#3}% + \TestDriver{caps}{#1}{#2}{#3}% + \TestDriver{ul}{#1}{#2}{#3}% + \TestDriver{st}{#1}{#2}{#3}% + \TestDriver{hl}{#1}{#2}{#3}% + \TestDriver{an}{#1}{#2}{#3}% + \TestDriver{sy}{#1}{#2}{#3}% + \TestDriver{soulH}{#1}{#2}{#3}% +} +\makeatother +\begin{document} + \Test A{}{}% + \Test B{Hello World}{Hello World}% + \Test C{% + Umlauts: ^^c3^^84^^c3^^96^^c3^^9c^^c3^^a4^^c3^^b6^^c3^^bc^^c3^^9f% + }{% + Umlauts: \"A\"O\"U\"a\"o\"u\ss + }% + \Test D{Euro: ^^e2^^82^^ac}{Euro: \texteuro}% + \Test E{Stra^^c3^^9fe}{Stra\ss e}% + \Test F{R^^c3^^b6mer}{R\"omer}% + \Test G{A^^e2^^80^^93B^^e2^^80^^94C}{A--B---C}% + \Test H{X^^c2^^a0Y}{X~Y}% + \Test I{A^^c5^^a4}{A\v T}% + \Test J{A,B,,C,,,D,,,,E}{A,B,,C,,,D,,,,E}% + \Test K{A'B''C'''D''''E}{A'B''C'''D''''E}% + \Test L{A`B``C```D````E}{A`B``C```D````E}% + \Test M{A$x$B}{A$x$B}% + \Test N{A\mbox{abc}B}{A\mbox{abc}B}% + \Test O{,,TA''}{,,TA''}% + \Test P{{!`}Hola{?`}}{{!`}Hola{?`}}% + \Test Q{re-sent\slash x}{re-sent\slash x}% + \Test R{new\\line}{new\\line}% + \Test S{foo\linebreak bar}{foo\linebreak bar}% + \Test T{Virchow{sche}}{Virchow{sche}}% + \Test U{A\soulomit{foo}B}{A\soulomit{foo}B}% + \Test V{A\texttt{xyz}B}{A\texttt{xyz}B}% + \Test W{ffi}{ffi}% + \Test X{f{}f{}i}{f{}f{}i}% + \Test Y{f\mbox{}f\mbox{}i}{f\mbox{}f\mbox{}i}% + \Test Z{\c{\"a}}{{\c{\"a}}}% + \let\abcx\UNDEFINED + \def\abc{% + \begingroup + \def\abcx{x}% + \abcx + \endgroup + }% + \Test{AA}{[{x\abc x}]}{[{xxx}]}% +\end{document} +\endinput +%% +%% End of file `soulutf8-test3.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test4.tex b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test4.tex new file mode 100644 index 00000000000..0550357500b --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test4.tex @@ -0,0 +1,358 @@ +%% +%% This is file `soulutf8-test4.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% soulutf8.dtx (with options: `test4,utf8,noetex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file soulutf8.dtx +%% and the derived files +%% soulutf8.sty, soulutf8.pdf, soulutf8.ins, soulutf8.drv, +%% soulutf8-test1.tex, soulutf8-test2.tex, soulutf8-test3.tex, +%% soulutf8-test4.tex, soulutf8-test5.tex. +%% +\let\unexpanded\UNDEFINED +\NeedsTeXFormat{LaTeX2e} +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{textcomp} +\usepackage[ngerman]{babel} +\expandafter\def\csname ver@hypdestopt.sty\endcsname{} +\usepackage[unicode]{hyperref} +\usepackage{bookmark} +\usepackage{color} +\usepackage{soul}[2003/11/17] +\makeatletter +\newcommand*{\@ifDefined}[1]{% + \@ifundefined{#1}{% + \@latex@error{% + \expandafter\noexpand\csname#1\endcsname undefined% + }\@ehc + }% +} +\newcommand*{\SaveOrg}[1]{% + \@ifdefinable{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname ORG@SOUL@#1\expandafter\endcsname + \csname SOUL@#1\endcsname + }% + }% +} +\newcommand*{\RestoreOrg}[1]{% + \@ifDefined{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname SOUL@#1\expandafter\endcsname + \csname ORG@SOUL@#1\endcsname + }% + }% +} +\makeatother +\SaveOrg{eval} +\SaveOrg{splittoken} +\SaveOrg{flushcomma} +\SaveOrg{flushapo} +\SaveOrg{grave} +\SaveOrg{addgroup} +\SaveOrg{addmath} +\SaveOrg{addprotect} +\SaveOrg{addtoken} +\usepackage{soulutf8}[2007/09/09] +\usepackage[utf8]{inputenc} +\DeclareUnicodeCharacter{00A0}{\nobreakspace} +\makeatletter +\DeclareRobustCommand*{\an}{% + \def\SOUL@preamble{$^{^P}$}% + \def\SOUL@everyspace##1{##1\texttt{\char`\ }\linebreak[2]}% + \def\SOUL@postamble{$^{^E}$}% + \def\SOUL@everyhyphen{$^{^-}$\linebreak[1]}% + \def\SOUL@everyexhyphen##1{##1$^{^=}$}% + \def\SOUL@everysyllable{$^{^S}$}% + \def\SOUL@everytoken{\the\SOUL@token$^{^T}$}% + \def\SOUL@everylowerthan{$^{^L}$}% + \SOUL@ +} +\DeclareRobustCommand*{\sy}{% + \SOUL@setup + \def\SOUL@preamble{% + \lefthyphenmin=\z@ + \righthyphenmin=\z@ + }% + \def\SOUL@everyspace##1{##1\space}% + \def\SOUL@everysyllable{\the\SOUL@syllable}% + \def\SOUL@everyhyphen{% + \discretionary{% + \SOUL@setkern\SOUL@hyphkern + \SOUL@sethyphenchar + }{}{% + \hbox{\kern1pt$\cdot$}% + }% + }% + \def\SOUL@everyexhyphen##1{% + \SOUL@setkern\SOUL@hyphkern + \hbox{##1}% + \discretionary{}{}{% + \SOUL@setkern\SOUL@charkern + }% + }% + \SOUL@ +} +\DeclareRobustCommand*{\soulH}{% + \def\SOUL@preamble{% + \gdef\SOULH{}% + \soulHadd{[}% + }% + \def\SOUL@everyspace##1{% + \soulHadd{Sp}% + }% + \def\SOUL@postamble{% + \soulHadd{]}% + }% + \def\SOUL@everyhyphen{% + \soulHadd{Hy}% + }% + \def\SOUL@everyexhyphen##1{% + \soulHadd{Exhy}% + }% + \def\SOUL@everysyllable{% + \soulHadd{Sy}% + }% + \def\SOUL@everytoken{% + \soulHadd{T}% + }% + \def\SOUL@everylowerthan{% + \soulHadd{<}% + }% + \SOUL@ +} +\newcommand*{\soulHadd}[1]{% + #1% + \expandafter\gdef\expandafter\soulHstring\expandafter{% + \soulHstring + #1% + }% +} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newsavebox\boxA +\newsavebox\boxB +\newsavebox\boxC +\newcommand*{\TestDriver}[4]{% + \subsection{Driver #1}% + \@PackageInfo{soulutf8-test}{* Driver #1}% + \expandafter\let\expandafter\testdriver\csname #1\endcsname + \def\teststringA{#3}% + \def\teststringB{#4}% + \begin{qstest}{string-#2-driver-#1}{string,#2,driver,#1}% + \@PackageInfo{soulutf8-test}{* Version: soulutf8}% + \global\let\soulHstring\@empty + \setbox0=\hbox{\expandafter\testdriver\expandafter{\teststringA}}% + \let\HstringA\soulHstring + \SetTestVBox{\boxA}{\teststringA}% + % + \@PackageInfo{soulutf8-test}{* Version: soul + patch}% + \global\let\soulHstring\@empty + \RestoreOrg{eval}% + \setbox2=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringB\soulHstring + \SetTestVBox{\boxB}{\teststringB}% + % + \@PackageInfo{soulutf8-test}{* Version: original soul}% + \global\let\soulHstring\@empty + \RestoreOrg{splittoken}% + \RestoreOrg{flushcomma}% + \RestoreOrg{flushapo}% + \RestoreOrg{grave}% + \RestoreOrg{addgroup}% + \RestoreOrg{addmath}% + \RestoreOrg{addprotect}% + \RestoreOrg{addtoken}% + \setbox4=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringC\soulHstring + \SetTestVBox{\boxC}{\teststringB}% + % + \TestInfo{0}{soulutf8}% + \TestInfo{2}{soul + patch}% + \TestInfo{4}{original soul}% + \TestInfoVBox + \showboxdepth=\maxdimen + \showboxbreadth=\maxdimen + \tracingonline=\@ne + \Expect*{\HstringA}*{\HstringB}% + \Expect*{\HstringA}*{\HstringC}% + \Expect*{\the\wd0}*{\the\wd2}% + \ifdim\wd0=\wd2 % + \else + \showbox0 % + \showbox2 % + \fi + \Expect*{\the\ht0}*{\the\ht2}% + \Expect*{\the\dp0}*{\the\dp2}% + \Expect*{\the\wd\boxB}*{\the\wd\boxA}% + \Expect*{\the\wd\boxC}*{\the\wd\boxA}% + \Expect*{\the\ht\boxB}*{\the\ht\boxA}% + \ifdim\ht\boxB=\ht\boxA + \else + \showbox\boxA + \showbox\boxB + \fi + \Expect*{\the\ht\boxC}*{\the\ht\boxA}% + \Expect*{\the\dp\boxB}*{\the\dp\boxA}% + \Expect*{\the\dp\boxC}*{\the\dp\boxA}% + \end{qstest}% +} +\newcommand*{\SetTestVBox}[2]{% + \setbox#1=\vbox{% + \hsize=0pt\relax + \hfuzz=100mm\relax + \expandafter\testdriver\expandafter{#2}% + }% +} +\newcommand*{\TestInfo}[2]{% + \par + \noindent + \copy#1\relax + \hfill + \begingroup + \small + \ifdim\wd0=\wd2\relax + \ifdim\wd0=\wd4\relax + \else + \ifnum#1=2 % + \raisebox{.5\baselineskip}[0pt][0pt]{% + \llap{$\}$ }% + \rlap{width = \the\wd#1\relax\space$\{$}% + \phantom{width = 999.99999pt}% + \qquad + }% + \else + \ifnum#1=4 % + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \qquad + \fi + \fi + \fi + \else + \begingroup + \bfseries + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \endgroup + \qquad + \fi + \rlap{(#2)}% + \phantom{(original soul)}% + \endgroup + \par +} +\newcommand*{\TestInfoVBox}{% + \par + \noindent + \mbox{\vrule\relax\space\copy\boxA}% + \ifdim\ht\boxA=\ht\boxB + \else + \hfill + \begingroup + \small + \rlap{(soulutf8)}% + \phantom{(soulutf8)}% + \endgroup + \par + \noindent + \mbox{\vrule\relax\space\copy\boxB}% + \hfill + \begingroup + \small + \rlap{(soul)}% + \phantom{(soulutf8)}% + \endgroup + \fi + \par +} +\makeatletter +\newcommand*{\Test}[3]{% + \clearpage + \begingroup + \def\linebreak{\textbackslash linebreak }% + \def\\{\textbackslash\textbackslash}% + \def\soulomit##1{% + \textbackslash soulomit\textbraceleft##1\textbraceright + }% + \def\mbox##1{% + \textbackslash mbox\textbraceleft##1\textbraceright + }% + \def\abc{\textbackslash abc }% + \def\texttt##1{% + \textbackslash texttt\textbraceleft##1\textbraceright + }% + \def\c##1{% + \textbackslash c\textbraceleft##1\textbraceright + }% + \csname protected@edef\endcsname\x{\endgroup + \noexpand\section{String #1: #2}% + }% + \x + \TestDriver{so}{#1}{#2}{#3}% + \TestDriver{caps}{#1}{#2}{#3}% + \TestDriver{ul}{#1}{#2}{#3}% + \TestDriver{st}{#1}{#2}{#3}% + \TestDriver{hl}{#1}{#2}{#3}% + \TestDriver{an}{#1}{#2}{#3}% + \TestDriver{sy}{#1}{#2}{#3}% + \TestDriver{soulH}{#1}{#2}{#3}% +} +\makeatother +\begin{document} + \Test A{}{}% + \Test B{Hello World}{Hello World}% + \Test C{% + Umlauts: ^^c3^^84^^c3^^96^^c3^^9c^^c3^^a4^^c3^^b6^^c3^^bc^^c3^^9f% + }{% + Umlauts: \"A\"O\"U\"a\"o\"u\ss + }% + \Test D{Euro: ^^e2^^82^^ac}{Euro: \texteuro}% + \Test E{Stra^^c3^^9fe}{Stra\ss e}% + \Test F{R^^c3^^b6mer}{R\"omer}% + \Test G{A^^e2^^80^^93B^^e2^^80^^94C}{A--B---C}% + \Test H{X^^c2^^a0Y}{X~Y}% + \Test I{A^^c5^^a4}{A\v T}% + \Test J{A,B,,C,,,D,,,,E}{A,B,,C,,,D,,,,E}% + \Test K{A'B''C'''D''''E}{A'B''C'''D''''E}% + \Test L{A`B``C```D````E}{A`B``C```D````E}% + \Test M{A$x$B}{A$x$B}% + \Test N{A\mbox{abc}B}{A\mbox{abc}B}% + \Test O{,,TA''}{,,TA''}% + \Test P{{!`}Hola{?`}}{{!`}Hola{?`}}% + \Test Q{re-sent\slash x}{re-sent\slash x}% + \Test R{new\\line}{new\\line}% + \Test S{foo\linebreak bar}{foo\linebreak bar}% + \Test T{Virchow{sche}}{Virchow{sche}}% + \Test U{A\soulomit{foo}B}{A\soulomit{foo}B}% + \Test V{A\texttt{xyz}B}{A\texttt{xyz}B}% + \Test W{ffi}{ffi}% + \Test X{f{}f{}i}{f{}f{}i}% + \Test Y{f\mbox{}f\mbox{}i}{f\mbox{}f\mbox{}i}% + \Test Z{\c{\"a}}{{\c{\"a}}}% +\end{document} +\endinput +%% +%% End of file `soulutf8-test4.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test5.tex b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test5.tex new file mode 100644 index 00000000000..41795b145ac --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8-test5.tex @@ -0,0 +1,370 @@ +%% +%% This is file `soulutf8-test5.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% soulutf8.dtx (with options: `test5,utf8x,noetex') +%% +%% This is a generated file. +%% +%% Copyright (C) 2007 by Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file soulutf8.dtx +%% and the derived files +%% soulutf8.sty, soulutf8.pdf, soulutf8.ins, soulutf8.drv, +%% soulutf8-test1.tex, soulutf8-test2.tex, soulutf8-test3.tex, +%% soulutf8-test4.tex, soulutf8-test5.tex. +%% +\let\unexpanded\UNDEFINED +\NeedsTeXFormat{LaTeX2e} +\documentclass{article} +\usepackage[T1]{fontenc} +\usepackage{lmodern} +\usepackage{textcomp} +\usepackage[ngerman]{babel} +\expandafter\def\csname ver@hypdestopt.sty\endcsname{} +\usepackage[unicode]{hyperref} +\usepackage{bookmark} +\usepackage{color} +\usepackage{soul}[2003/11/17] +\makeatletter +\newcommand*{\@ifDefined}[1]{% + \@ifundefined{#1}{% + \@latex@error{% + \expandafter\noexpand\csname#1\endcsname undefined% + }\@ehc + }% +} +\newcommand*{\SaveOrg}[1]{% + \@ifdefinable{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname ORG@SOUL@#1\expandafter\endcsname + \csname SOUL@#1\endcsname + }% + }% +} +\newcommand*{\RestoreOrg}[1]{% + \@ifDefined{ORG@SOUL@#1}{% + \@ifDefined{SOUL@#1}{% + \expandafter\let\csname SOUL@#1\expandafter\endcsname + \csname ORG@SOUL@#1\endcsname + }% + }% +} +\makeatother +\SaveOrg{eval} +\SaveOrg{splittoken} +\SaveOrg{flushcomma} +\SaveOrg{flushapo} +\SaveOrg{grave} +\SaveOrg{addgroup} +\SaveOrg{addmath} +\SaveOrg{addprotect} +\SaveOrg{addtoken} +\usepackage{soulutf8}[2007/09/09] +\let\origshow\show +\usepackage[utf8x]{inputenc} +\AtBeginDocument{% + \let\show\origshow +} +\makeatletter +\DeclareRobustCommand*{\an}{% + \def\SOUL@preamble{$^{^P}$}% + \def\SOUL@everyspace##1{##1\texttt{\char`\ }\linebreak[2]}% + \def\SOUL@postamble{$^{^E}$}% + \def\SOUL@everyhyphen{$^{^-}$\linebreak[1]}% + \def\SOUL@everyexhyphen##1{##1$^{^=}$}% + \def\SOUL@everysyllable{$^{^S}$}% + \def\SOUL@everytoken{\the\SOUL@token$^{^T}$}% + \def\SOUL@everylowerthan{$^{^L}$}% + \SOUL@ +} +\DeclareRobustCommand*{\sy}{% + \SOUL@setup + \def\SOUL@preamble{% + \lefthyphenmin=\z@ + \righthyphenmin=\z@ + }% + \def\SOUL@everyspace##1{##1\space}% + \def\SOUL@everysyllable{\the\SOUL@syllable}% + \def\SOUL@everyhyphen{% + \discretionary{% + \SOUL@setkern\SOUL@hyphkern + \SOUL@sethyphenchar + }{}{% + \hbox{\kern1pt$\cdot$}% + }% + }% + \def\SOUL@everyexhyphen##1{% + \SOUL@setkern\SOUL@hyphkern + \hbox{##1}% + \discretionary{}{}{% + \SOUL@setkern\SOUL@charkern + }% + }% + \SOUL@ +} +\DeclareRobustCommand*{\soulH}{% + \def\SOUL@preamble{% + \gdef\SOULH{}% + \soulHadd{[}% + }% + \def\SOUL@everyspace##1{% + \soulHadd{Sp}% + }% + \def\SOUL@postamble{% + \soulHadd{]}% + }% + \def\SOUL@everyhyphen{% + \soulHadd{Hy}% + }% + \def\SOUL@everyexhyphen##1{% + \soulHadd{Exhy}% + }% + \def\SOUL@everysyllable{% + \soulHadd{Sy}% + }% + \def\SOUL@everytoken{% + \soulHadd{T}% + }% + \def\SOUL@everylowerthan{% + \soulHadd{<}% + }% + \SOUL@ +} +\newcommand*{\soulHadd}[1]{% + #1% + \expandafter\gdef\expandafter\soulHstring\expandafter{% + \soulHstring + #1% + }% +} +\usepackage{qstest} +\IncludeTests{*} +\LogTests{log}{*}{*} +\newsavebox\boxA +\newsavebox\boxB +\newsavebox\boxC +\newcommand*{\TestDriver}[4]{% + \subsection{Driver #1}% + \@PackageInfo{soulutf8-test}{* Driver #1}% + \expandafter\let\expandafter\testdriver\csname #1\endcsname + \def\teststringA{#3}% + \def\teststringB{#4}% + \begin{qstest}{string-#2-driver-#1}{string,#2,driver,#1}% + \@PackageInfo{soulutf8-test}{* Version: soulutf8}% + \global\let\soulHstring\@empty + \setbox0=\hbox{\expandafter\testdriver\expandafter{\teststringA}}% + \let\HstringA\soulHstring + \SetTestVBox{\boxA}{\teststringA}% + % + \@PackageInfo{soulutf8-test}{* Version: soul + patch}% + \global\let\soulHstring\@empty + \RestoreOrg{eval}% + \setbox2=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringB\soulHstring + \SetTestVBox{\boxB}{\teststringB}% + % + \@PackageInfo{soulutf8-test}{* Version: original soul}% + \global\let\soulHstring\@empty + \RestoreOrg{splittoken}% + \RestoreOrg{flushcomma}% + \RestoreOrg{flushapo}% + \RestoreOrg{grave}% + \RestoreOrg{addgroup}% + \RestoreOrg{addmath}% + \RestoreOrg{addprotect}% + \RestoreOrg{addtoken}% + \setbox4=\hbox{\expandafter\testdriver\expandafter{\teststringB}}% + \let\HstringC\soulHstring + \SetTestVBox{\boxC}{\teststringB}% + % + \TestInfo{0}{soulutf8}% + \TestInfo{2}{soul + patch}% + \TestInfo{4}{original soul}% + \TestInfoVBox + \showboxdepth=\maxdimen + \showboxbreadth=\maxdimen + \tracingonline=\@ne + \Expect*{\HstringA}*{\HstringB}% + \Expect*{\HstringA}*{\HstringC}% + \Expect*{\the\wd0}*{\the\wd2}% + \ifdim\wd0=\wd2 % + \else + \showbox0 % + \showbox2 % + \fi + \Expect*{\the\ht0}*{\the\ht2}% + \Expect*{\the\dp0}*{\the\dp2}% + \Expect*{\the\wd\boxB}*{\the\wd\boxA}% + \Expect*{\the\wd\boxC}*{\the\wd\boxA}% + \Expect*{\the\ht\boxB}*{\the\ht\boxA}% + \ifdim\ht\boxB=\ht\boxA + \else + \showbox\boxA + \showbox\boxB + \fi + \Expect*{\the\ht\boxC}*{\the\ht\boxA}% + \Expect*{\the\dp\boxB}*{\the\dp\boxA}% + \Expect*{\the\dp\boxC}*{\the\dp\boxA}% + \end{qstest}% +} +\newcommand*{\SetTestVBox}[2]{% + \setbox#1=\vbox{% + \hsize=0pt\relax + \hfuzz=100mm\relax + \expandafter\testdriver\expandafter{#2}% + }% +} +\newcommand*{\TestInfo}[2]{% + \par + \noindent + \copy#1\relax + \hfill + \begingroup + \small + \ifdim\wd0=\wd2\relax + \ifdim\wd0=\wd4\relax + \else + \ifnum#1=2 % + \raisebox{.5\baselineskip}[0pt][0pt]{% + \llap{$\}$ }% + \rlap{width = \the\wd#1\relax\space$\{$}% + \phantom{width = 999.99999pt}% + \qquad + }% + \else + \ifnum#1=4 % + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \qquad + \fi + \fi + \fi + \else + \begingroup + \bfseries + \rlap{width = \the\wd#1}% + \phantom{width = 999.99999pt}% + \endgroup + \qquad + \fi + \rlap{(#2)}% + \phantom{(original soul)}% + \endgroup + \par +} +\newcommand*{\TestInfoVBox}{% + \par + \noindent + \mbox{\vrule\relax\space\copy\boxA}% + \ifdim\ht\boxA=\ht\boxB + \else + \hfill + \begingroup + \small + \rlap{(soulutf8)}% + \phantom{(soulutf8)}% + \endgroup + \par + \noindent + \mbox{\vrule\relax\space\copy\boxB}% + \hfill + \begingroup + \small + \rlap{(soul)}% + \phantom{(soulutf8)}% + \endgroup + \fi + \par +} +\makeatletter +\newcommand*{\Test}[3]{% + \clearpage + \begingroup + \def\linebreak{\textbackslash linebreak }% + \def\\{\textbackslash\textbackslash}% + \def\soulomit##1{% + \textbackslash soulomit\textbraceleft##1\textbraceright + }% + \def\mbox##1{% + \textbackslash mbox\textbraceleft##1\textbraceright + }% + \def\abc{\textbackslash abc }% + \def\texttt##1{% + \textbackslash texttt\textbraceleft##1\textbraceright + }% + \def\c##1{% + \textbackslash c\textbraceleft##1\textbraceright + }% + \count@=128 % + \loop + \ifnum\count@<256 % + \lccode`\~=\count@ + \lowercase{% + \def~{\noexpand~}% + }% + \advance\count@\@ne + \repeat + \csname protected@edef\endcsname\x{\endgroup + \noexpand\section{String #1: #2}% + }% + \x + \TestDriver{so}{#1}{#2}{#3}% + \TestDriver{caps}{#1}{#2}{#3}% + \TestDriver{ul}{#1}{#2}{#3}% + \TestDriver{st}{#1}{#2}{#3}% + \TestDriver{hl}{#1}{#2}{#3}% + \TestDriver{an}{#1}{#2}{#3}% + \TestDriver{sy}{#1}{#2}{#3}% + \TestDriver{soulH}{#1}{#2}{#3}% +} +\makeatother +\begin{document} + \Test A{}{}% + \Test B{Hello World}{Hello World}% + \Test C{% + Umlauts: ^^c3^^84^^c3^^96^^c3^^9c^^c3^^a4^^c3^^b6^^c3^^bc^^c3^^9f% + }{% + Umlauts: \"A\"O\"U\"a\"o\"u\ss + }% + \Test D{Euro: ^^e2^^82^^ac}{Euro: \texteuro}% + \Test E{Stra^^c3^^9fe}{Stra\ss e}% + \Test F{R^^c3^^b6mer}{R\"omer}% + \Test G{A^^e2^^80^^93B^^e2^^80^^94C}{A--B---C}% + \Test H{X^^c2^^a0Y}{X~Y}% + \Test I{A^^c5^^a4}{A\v T}% + \Test J{A,B,,C,,,D,,,,E}{A,B,,C,,,D,,,,E}% + \Test K{A'B''C'''D''''E}{A'B''C'''D''''E}% + \Test L{A`B``C```D````E}{A`B``C```D````E}% + \Test M{A$x$B}{A$x$B}% + \Test N{A\mbox{abc}B}{A\mbox{abc}B}% + \Test O{,,TA''}{,,TA''}% + \Test P{{!`}Hola{?`}}{{!`}Hola{?`}}% + \Test Q{re-sent\slash x}{re-sent\slash x}% + \Test R{new\\line}{new\\line}% + \Test S{foo\linebreak bar}{foo\linebreak bar}% + \Test T{Virchow{sche}}{Virchow{sche}}% + \Test U{A\soulomit{foo}B}{A\soulomit{foo}B}% + \Test V{A\texttt{xyz}B}{A\texttt{xyz}B}% + \Test W{ffi}{ffi}% + \Test X{f{}f{}i}{f{}f{}i}% + \Test Y{f\mbox{}f\mbox{}i}{f\mbox{}f\mbox{}i}% + \Test Z{\c{\"a}}{{\c{\"a}}}% +\end{document} +\endinput +%% +%% End of file `soulutf8-test5.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf new file mode 100644 index 00000000000..e8604c214a7 Binary files /dev/null and b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf index f3c6f22bea1..d2eccc9186c 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf and b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/stringenc-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/stringenc-test1.tex index 73c86a93762..940af5d5b64 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/stringenc-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/stringenc-test1.tex @@ -78,7 +78,7 @@ \catcode`\%=14 % \catcode`\ =10 % \catcode13=5 % - \usepackage{stringenc}[2007/06/16]% + \usepackage{stringenc}[2007/09/09]% \RestoreCatcodes } \Test diff --git a/Master/texmf-dist/doc/latex/oberdiek/stringenc-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/stringenc-test2.tex index 4a99edb0d5c..973d5b92210 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/stringenc-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/stringenc-test2.tex @@ -47,7 +47,7 @@ \let\SavedNumexpr\numexpr \let\numexpr\relax \fi -\usepackage{stringenc}[2007/06/16] +\usepackage{stringenc}[2007/09/09] \ifx\plainmode Y \let\numexpr\SavedNumexpr \fi diff --git a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf index 041f401f52e..754122c52fc 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf and b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf index 3df0c7824b0..964eb41f869 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf and b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf index 5a040ed8853..11132898a58 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf and b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/telprint-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/telprint-test1.tex new file mode 100644 index 00000000000..ed748e0c77a --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/telprint-test1.tex @@ -0,0 +1,74 @@ +%% +%% This is file `telprint-test1.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% telprint.dtx (with options: `test1') +%% +%% This is a generated file. +%% +%% Copyright (C) 1996, 1997, 2004, 2005, 2006, 2007 by +%% Heiko Oberdiek +%% +%% This work may be distributed and/or modified under the +%% conditions of the LaTeX Project Public License, either +%% version 1.3 of this license or (at your option) any later +%% version. The latest version of this license is in +%% 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. +%% +%% This work consists of the main source file telprint.dtx +%% and the derived files +%% telprint.sty, telprint.pdf, telprint.ins, telprint.drv, +%% telprint-test1.tex. +%% +\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 telprint.sty\relax + \RestoreCatcodes +} +\Test +\csname @@end\endcsname +\end +\endinput +%% +%% End of file `telprint-test1.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf index ad90cbdee65..226f45a0f38 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf and b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf index 4da279754df..7d5ea1e9227 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf and b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf index cdc5189824d..cdd894dd434 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf and b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf differ diff --git a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf index 9fcfee9d5a5..30fd5d536f9 100644 Binary files a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf and b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf differ -- cgit v1.2.3