diff options
Diffstat (limited to 'Master/texmf-dist')
82 files changed, 418 insertions, 54 deletions
diff --git a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf Binary files differindex cb21265cd60..574fdc8db6d 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/accsupp.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf Binary files differindex 72d628b806d..19dea30e7b6 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/aliascnt.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf Binary files differindex b91d7a132bc..da64ffec486 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/alphalph.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf b/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf Binary files differindex c905b5e1436..040a192e060 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/askinclude.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf Binary files differindex f0c6cf27bc8..91956fa18de 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/atbegshi.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf Binary files differindex b4b45970d01..13d5112b1ca 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/atenddvi.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf Binary files differindex 6cabd466721..7048db1b41c 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/attachfile2.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf Binary files differindex 8d30707e19a..832a429ac4d 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/auxhook.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf b/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf Binary files differindex cb7ec5deedd..22aa1c8b0ab 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/bigintcalc.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf b/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf Binary files differindex 1cdaff5b58e..6e45ab603ac 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/bitset.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf Binary files differindex a7838404eaa..a45eb83838f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/bmpsize.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf Binary files differindex cd1424f2fb6..cd5da1ed238 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/bookmark.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf Binary files differindex d478097164d..5f876a1edcb 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/catchfile.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf Binary files differindex 3a2ac4153fc..54900ef22f7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/centernot.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf Binary files differindex 42913c1886e..3f784664f26 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/chemarr.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf Binary files differindex 19e305ecee2..c622247eaf9 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/classlist.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf Binary files differindex 13804600617..e04511e5706 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/colonequals.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf Binary files differindex 822a89a9974..3190511df52 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/dvipscol.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf Binary files differindex 83b6d9c8298..29a1f565678 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/embedfile.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf Binary files differindex 4c22b4e0865..5d77aa5aafb 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/engord.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/engord.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf Binary files differindex 0c9a3c37b32..949356e2a5f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/epstopdf.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf Binary files differindex 2a9870d819b..6afd797c761 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/etexcmds.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf Binary files differindex 00cf24303fc..627d5d6917a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/flags.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/flags.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf b/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf Binary files differindex e1b59c9ee78..9a693fbf0a0 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/grfext.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf Binary files differindex a219c58fe38..811ceb60056 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/grffile.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf Binary files differindex cf0c3c92b06..734d5ca0d6a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/holtxdoc.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf Binary files differindex 19785a2022a..6915b043130 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hycolor.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf Binary files differindex 19de3121a37..31dd33e6a0a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hypbmsec.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf Binary files differindex 9dec01f9b4c..decd151132b 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hypcap.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf Binary files differindex c563a4513a0..52aeaf37a81 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hypdestopt.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf Binary files differindex efe7d84afa1..06ccc648852 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hypdoc.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf b/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf Binary files differindex 5f0d5ee2d9c..203359ede69 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hypgotoe.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf b/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf Binary files differindex ed18566bec6..8e03963e512 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/hyphsubst.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf Binary files differindex 1c647076b34..ed6edd0bb1a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/ifdraft.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf Binary files differindex cedfe04da2f..d5538717164 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/iflang.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf Binary files differindex d7085361b70..2e868cc219e 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/ifluatex.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf Binary files differindex 6f9ad8d0f88..07668a2f793 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/ifpdf.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf Binary files differindex 10001e09ac9..35daa2b0d8a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/ifvtex.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf Binary files differindex 0198e94bafe..b696b32dfef 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/infwarerr.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf Binary files differindex ad10f5de778..e2038fab2f4 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/inputenx.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf Binary files differindex 1dad662e5fc..4f8fb9921dc 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/intcalc.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf Binary files differindex 510ab1fc293..5d34d1d68fa 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/kvoptions.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf Binary files differindex f61772666e3..d27e5bc40ba 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/kvsetkeys.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/letltxmacro-showcases.tex b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro-showcases.tex new file mode 100644 index 00000000000..92af130dc89 --- /dev/null +++ b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro-showcases.tex @@ -0,0 +1,86 @@ +%% +%% This is file `letltxmacro-showcases.tex', +%% generated with the docstrip utility. +%% +%% The original source files were: +%% +%% letltxmacro.dtx (with options: `showcases') +%% +%% This is a generated file. +%% +%% Copyright (C) 2008 by Heiko Oberdiek <oberdiek@uni-freiburg.de> +%% +%% 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 letltxmacro.dtx +%% and the derived files +%% letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, +%% letltxmacro-showcases.tex, letltxmacro-test1.tex, +%% letltxmacro-test2.tex. +%% +\NeedsTeXFormat{LaTeX2e} +\makeatletter +\newcommand*{\Line}[1]{% + \typeout{\@percentchar#1}% +} +\newcommand*{\ShowCmdName}[1]{% + \@ifundefined{#1}{}{% + \Line{% + \space\space(\expandafter\string\csname#1\endcsname) = % + (\expandafter\meaning\csname#1\endcsname)% + }% + }% +} +\newcommand*{\ShowCmds}[1]{% + \ShowCmdName{#1}% + \ShowCmdName{#1 }% + \ShowCmdName{\\#1}% + \ShowCmdName{\\#1 }% +} +\let\\\@backslashchar +\newcommand*{\ShowDef}[2]{% + \begingroup + \Line{}% + \newcommand*{\DefString}{#2}% + \@onelevel@sanitize\DefString + \Line{\DefString}% + #2% + \ShowCmds{#1}% + \endgroup +} +\typeout{} +\Line{* LaTeX definitions:} +\ShowDef{cmd}{% + \newcommand{\cmd}[2][default]{}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}{}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}[2][default]{}% +} +\typeout{} +\RequirePackage{etoolbox}\relax +\Line{} +\Line{* etoolbox's robust definitions:} +\ShowDef{cmd}{% + \newrobustcmd{\cmd}{}% +} +\ShowDef{cmd}{% + \newrobustcmd{\cmd}[2][default]{}% +} +\typeout{} +\@@end +\endinput +%% +%% End of file `letltxmacro-showcases.tex'. diff --git a/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf Binary files differindex fc4ea401fad..f6dd97d2523 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/letltxmacro.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf b/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf Binary files differindex 0d48fe48ae1..e9fa651112a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/listingsutf8.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf b/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf Binary files differindex b7ba5a41872..28c01478559 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/luacolor.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf b/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf Binary files differindex eb6172e09f4..dc672ad3f56 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/luatex.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf b/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf Binary files differindex a8d8df29f11..e79f651239f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/magicnum.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf Binary files differindex 813aaa52fba..c173ea12e46 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/makerobust.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf Binary files differindex 270aa9171eb..078219d29c7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/oberdiek.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf Binary files differindex b3eba59a1a1..208c25e639f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pagesel.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf Binary files differindex 585494db719..926331ad8f2 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcol.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf Binary files differindex 932abeef90f..f94d84cab96 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolfoot.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf Binary files differindex 26847c4a49d..12f148f7fa9 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolmk.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf Binary files differindex d04f4a87909..c5b6a9573c7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparallel.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf Binary files differindex 80b06bfeb9e..006e094b483 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcolparcolumns.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf Binary files differindex 818133a0511..c3d745dba4a 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfcrypt.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf Binary files differindex b63494e69a9..5dca0d34ce2 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdfescape.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf Binary files differindex 3b5ab76c749..43cb4659580 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdflscape.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf b/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf Binary files differindex aeccb4ac012..4740f04c83b 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pdftexcmds.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf Binary files differindex a779348f4ce..91d90957ff7 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/picture.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/picture.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf Binary files differindex 0670d623e3e..e57b1f9dbaa 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/pmboxdraw.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf Binary files differindex b3ccc955789..ec9f61991e5 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/refcount.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf Binary files differindex e1d6275e450..86e8e7df47c 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/selinput.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf Binary files differindex fce9fd772ca..72668a8d8d6 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/setouterhbox.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf Binary files differindex 14dc507957b..0aa39e7153f 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/settobox.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf Binary files differindex 1801df49607..212ae3a6562 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/soulutf8.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf Binary files differindex 6682b49fcb0..9f6f2b1df88 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/stackrel.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf Binary files differindex 58891f4b344..292fad8f3d6 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/stringenc.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf Binary files differindex 69773c3a21f..899ba4d15cf 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/tabularht.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf Binary files differindex b9518994c60..7c262dc727e 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/tabularkv.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf Binary files differindex 13dc0205029..89a487747c4 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/telprint.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test1.tex b/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test1.tex index 00b6e63317d..3f9e112d562 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test1.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test1.tex @@ -25,7 +25,8 @@ %% This work consists of the main source file letltxmacro.dtx %% and the derived files %% letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, -%% letltxmacro-test1.tex, letltxmacro-test2.tex. +%% letltxmacro-showcases.tex, letltxmacro-test1.tex, +%% letltxmacro-test2.tex. %% \NeedsTeXFormat{LaTeX2e} \documentclass{minimal} @@ -64,7 +65,7 @@ \catcode`\%=14 % \catcode`\ =10 % \catcode13=5 % - \RequirePackage{letltxmacro}[2008/06/09]\relax + \RequirePackage{letltxmacro}[2008/06/12]\relax \RestoreCatcodes } \Test diff --git a/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test2.tex b/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test2.tex index 435b40b9a70..b7e3f07570d 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test2.tex +++ b/Master/texmf-dist/doc/latex/oberdiek/test/letltxmacro-test2.tex @@ -25,13 +25,14 @@ %% This work consists of the main source file letltxmacro.dtx %% and the derived files %% letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, -%% letltxmacro-test1.tex, letltxmacro-test2.tex. +%% letltxmacro-showcases.tex, letltxmacro-test1.tex, +%% letltxmacro-test2.tex. %% \NeedsTeXFormat{LaTeX2e} \nofiles \documentclass{minimal} -\usepackage{letltxmacro}[2008/06/09] +\usepackage{letltxmacro}[2008/06/12] \usepackage{qstest} \IncludeTests{*} @@ -124,6 +125,21 @@ \Expect*{\meaning\empty}{macro:->}% \Expect*{\meaning\NewEmpty}{macro:->}% \end{qstest} +\usepackage{etoolbox} + +\begin{qstest}{newrobustcmd}{newrobustcmd} + \newrobustcmd{\TestA}[1][\default]{TestA}% + \SaveA + \LetLtxMacro\TestB\TestA + \TestDef{TestB}{\@testopt \\TestB {\default }}% + \protected\edef\TestC{% + \noexpand\@testopt + \expandafter\noexpand\csname\string\TestB\endcsname + {\noexpand\default}% + }% + \TestEquals{TestB}{TestC}% + \CheckA +\end{qstest} \csname @@end\endcsname \endinput %% diff --git a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf Binary files differindex 2a219cd17e6..6dc9dc70484 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/transparent.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf Binary files differindex d2de880bc43..ca6f74a8cb6 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/twoopt.pdf diff --git a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf Binary files differindex 83186b70e12..1a602af3c72 100644 --- a/Master/texmf-dist/doc/latex/oberdiek/zref.pdf +++ b/Master/texmf-dist/doc/latex/oberdiek/zref.pdf diff --git a/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx b/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx index 76f41e6f084..6a87fb4434a 100644 --- a/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx +++ b/Master/texmf-dist/source/latex/oberdiek/letltxmacro.dtx @@ -17,7 +17,8 @@ % This work consists of the main source file letltxmacro.dtx % and the derived files % letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, -% letltxmacro-test1.tex, letltxmacro-test2.tex. +% letltxmacro-showcases.tex, letltxmacro-test1.tex, +% letltxmacro-test2.tex. % % Distribution: % CTAN:macros/latex/contrib/oberdiek/letltxmacro.dtx @@ -52,6 +53,7 @@ % Installation: % TDS:tex/latex/oberdiek/letltxmacro.sty % TDS:doc/latex/oberdiek/letltxmacro.pdf +% TDS:doc/latex/oberdiek/letltxmacro-showcases.tex % TDS:doc/latex/oberdiek/test/letltxmacro-test1.tex % TDS:doc/latex/oberdiek/test/letltxmacro-test2.tex % TDS:source/latex/oberdiek/letltxmacro.dtx @@ -69,7 +71,7 @@ \input docstrip.tex \Msg{************************************************************************} \Msg{* Installation} -\Msg{* Package: letltxmacro 2008/06/09 v1.0 Let assignment for LaTeX macros (HO)} +\Msg{* Package: letltxmacro 2008/06/12 v1.1 Let assignment for LaTeX macros (HO)} \Msg{************************************************************************} \keepsilent @@ -97,7 +99,8 @@ This Current Maintainer of this work is Heiko Oberdiek. This work consists of the main source file letltxmacro.dtx and the derived files letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, - letltxmacro-test1.tex, letltxmacro-test2.tex. + letltxmacro-showcases.tex, letltxmacro-test1.tex, + letltxmacro-test2.tex. \endpreamble \let\MetaPrefix\DoubleperCent @@ -107,6 +110,8 @@ and the derived files \file{letltxmacro.drv}{\from{letltxmacro.dtx}{driver}}% \usedir{tex/latex/oberdiek}% \file{letltxmacro.sty}{\from{letltxmacro.dtx}{package}}% + \usedir{doc/latex/oberdiek}% + \file{letltxmacro-showcases.tex}{\from{letltxmacro.dtx}{showcases}}% \usedir{doc/latex/oberdiek/test}% \file{letltxmacro-test1.tex}{\from{letltxmacro.dtx}{test1}}% \file{letltxmacro-test2.tex}{\from{letltxmacro.dtx}{test2}}% @@ -139,7 +144,7 @@ and the derived files %<*driver> \NeedsTeXFormat{LaTeX2e} \ProvidesFile{letltxmacro.drv}% - [2008/06/09 v1.0 Let assignment for LaTeX macros (HO)]% + [2008/06/12 v1.1 Let assignment for LaTeX macros (HO)]% \documentclass{ltxdoc} \usepackage{holtxdoc}[2007/11/11] \begin{document} @@ -148,7 +153,7 @@ and the derived files %</driver> % \fi % -% \CheckSum{470} +% \CheckSum{646} % % \CharacterTable % {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z @@ -169,7 +174,7 @@ and the derived files % \GetFileInfo{letltxmacro.drv} % % \title{The \xpackage{letltxmacro} package} -% \date{2008/06/09 v1.0} +% \date{2008/06/12 v1.1} % \author{Heiko Oberdiek\\\xemail{oberdiek@uni-freiburg.de}} % % \maketitle @@ -221,16 +226,168 @@ and the derived files % that are derived from \cs{SavedMacro}'s macro name. Macro \cs{Macro} % can now be redefined without affecting \cs{SavedMacro}. % +% \subsection{Supported macro definition commands} +% +% \begin{quote} +% \begin{tabular}{@{}ll@{}} +% \cs{newcommand}, \cs{renewcommand} & latex/base\\ +% \cs{newenvironment}, \cs{renewenvironment} & latex/base\\ +% \cs{DeclareRobustCommand}& latex/base\\ +% \cs{newrobustcmd}, \cs{renewrobustcmd} & etoolbox\\ +% \end{tabular} +% \end{quote} +% % \StopEventually{ % } % % \section{Implementation} % +% \subsection{Show cases} +% +% \subsubsection{\xfile{letltxmacro-showcases.tex}} +% +% \begin{macrocode} +%<*showcases> +\NeedsTeXFormat{LaTeX2e} +\makeatletter +% \end{macrocode} +% \begin{macro}{\Line} +% The result is displayed by macro \cs{Line}. The percent symbol +% at line start allows easy grepping and inserting into the DTX +% file. +% \begin{macrocode} +\newcommand*{\Line}[1]{% + \typeout{\@percentchar#1}% +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\newcommand*{\ShowCmdName}[1]{% + \@ifundefined{#1}{}{% + \Line{% + \space\space(\expandafter\string\csname#1\endcsname) = % + (\expandafter\meaning\csname#1\endcsname)% + }% + }% +} +\newcommand*{\ShowCmds}[1]{% + \ShowCmdName{#1}% + \ShowCmdName{#1 }% + \ShowCmdName{\\#1}% + \ShowCmdName{\\#1 }% +} +\let\\\@backslashchar +% \end{macrocode} +% \begin{macro}{\ShowDef} +% \begin{macrocode} +\newcommand*{\ShowDef}[2]{% + \begingroup + \Line{}% + \newcommand*{\DefString}{#2}% + \@onelevel@sanitize\DefString + \Line{\DefString}% + #2% + \ShowCmds{#1}% + \endgroup +} +% \end{macrocode} +% \end{macro} +% \begin{macrocode} +\typeout{} +\Line{* LaTeX definitions:} +\ShowDef{cmd}{% + \newcommand{\cmd}[2][default]{}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}{}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}[2][default]{}% +} +\typeout{} +\RequirePackage{etoolbox}\relax +\Line{} +\Line{* etoolbox's robust definitions:} +\ShowDef{cmd}{% + \newrobustcmd{\cmd}{}% +} +\ShowDef{cmd}{% + \newrobustcmd{\cmd}[2][default]{}% +} +% \end{macrocode} +% \iffalse +% ^^A \robustify is still broken in etoolbox v1.5. +% \begin{macrocode} +%<*disabled> +\Line{} +\Line{* etoolbox's \string\robustify:} +\ShowDef{cmd}{% + \newcommand{\cmd}[2][default]{} % + \robustify{\cmd}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}{} % + \robustify{\cmd}% +} +\ShowDef{cmd}{% + \DeclareRobustCommand{\cmd}[2][default]{} % + \robustify{\cmd}% +} +%</disabled> +% \end{macrocode} +% \fi +% \begin{macrocode} +\typeout{} +% \end{macrocode} +% \begin{macrocode} +\@@end +%</showcases> +% \end{macrocode} +% +% \subsubsection{Result} +% +% \begingroup +% \makeatletter +% \let\org@verbatim\@verbatim +% \def\@verbatim{^^A +% \org@verbatim +% \catcode`\~=\active +% }^^A +% \let~\textvisiblespace +%\begin{verbatim} +%* LaTeX definitions: +% +%\newcommand {\cmd }[2][default]{} +% (\cmd) = (macro:->\@protected@testopt \cmd \\cmd {default}) +% (\\cmd) = (\long macro:[#1]#2->) +% +%\DeclareRobustCommand {\cmd }{} +% (\cmd) = (macro:->\protect \cmd~ ) +% (\cmd~) = (\long macro:->) +% +%\DeclareRobustCommand {\cmd }[2][default]{} +% (\cmd) = (macro:->\protect \cmd~ ) +% (\cmd~) = (macro:->\@protected@testopt \cmd~ \\cmd~ {default}) +% (\\cmd~) = (\long macro:[#1]#2->) +% +%* etoolbox's robust definitions: +% +%\newrobustcmd {\cmd }{} +% (\cmd) = (\protected\long macro:->) +% +%\newrobustcmd {\cmd }[2][default]{} +% (\cmd) = (\protected macro:->\@testopt \\cmd {default}) +% (\\cmd) = (\protected\long macro:[#1]#2->) +%\end{verbatim} +% \endgroup +% +% \subsection{Package} +% % \begin{macrocode} %<*package> % \end{macrocode} % -% \subsection{Catcodes and identification} +% \subsubsection{Catcodes and identification} % % \begin{macrocode} \begingroup @@ -265,16 +422,21 @@ and the derived files \TMP@EnsureCode{58}{12}% : \TMP@EnsureCode{61}{12}% = \TMP@EnsureCode{62}{12}% > +\edef\llm@AtEnd{% + \llm@AtEnd + \escapechar\the\escapechar\relax +} +\escapechar=92 % `\\ % \end{macrocode} % % Package identification. % \begin{macrocode} \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{letltxmacro}% - [2008/06/09 v1.0 Let assignment for LaTeX macros (HO)] + [2008/06/12 v1.1 Let assignment for LaTeX macros (HO)] % \end{macrocode} % -% \subsection{Package} +% \subsubsection{Main macros} % % \begin{macro}{\LetLtxMacro} % \begin{macrocode} @@ -305,18 +467,30 @@ and the derived files % \begin{macro}{\llm@LetLtxMacro} % \begin{macrocode} \def\llm@LetLtxMacro#1#2{% - \expandafter\llm@CheckParams\meaning#2{}{}{}{}{}{}{}{}\@nil{% + \expandafter\llm@CheckParams\meaning#2:->\@nil{% \begingroup - \edef\x{% - \noexpand\@protected@testopt - \noexpand#2% - \expandafter\noexpand\csname\string#2\endcsname - }% - \expandafter\expandafter\expandafter\def - \expandafter\expandafter\expandafter\y - \expandafter\expandafter\expandafter{% - \expandafter\llm@CarThree#2{}{}{}\llm@nil - }% + \ifx\llm@protected\@empty + \edef\x{% + \noexpand\@protected@testopt + \noexpand#2% + \expandafter\noexpand\csname\string#2\endcsname + }% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\y + \expandafter\expandafter\expandafter{% + \expandafter\llm@CarThree#2{}{}{}\llm@nil + }% + \else + \edef\x{% + \noexpand\@testopt + \expandafter\noexpand\csname\string#2\endcsname + }% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\y + \expandafter\expandafter\expandafter{% + \expandafter\llm@CarTwo#2{}{}\llm@nil + }% + \fi \expandafter\endgroup\ifx\x\y \begingroup \def\@protected@testopt##1##2##3{% @@ -328,6 +502,14 @@ and the derived files {\the\toks@}% }% }% + \def\@testopt##1##2{% + \toks@={##2}% + \protected\xdef\llm@GlobalTemp{% + \noexpand\@testopt + \expandafter\noexpand\csname\string#1\endcsname + {\the\toks@}% + }% + }% #2% \endgroup \let#1=\llm@GlobalTemp @@ -344,29 +526,48 @@ and the derived files % \end{macro} % \begin{macro}{\llm@CheckParams} % \begin{macrocode} -\def\llm@CheckParams#1#2#3#4#5#6#7#8#9\@nil{% +\def\llm@CheckParams#1:->#2\@nil{% \begingroup - \def\x{#1#2#3#4#5#6#7#8}% - \@onelevel@sanitize\x - \expandafter\endgroup\ifx\x\llm@macro + \def\x{#1}% + \ifx\x\llm@macro + \endgroup + \def\llm@protected{}% \expandafter\@firstoftwo \else - \expandafter\@secondoftwo + \ifx\x\llm@protectedmacro + \endgroup + \def\llm@protected{\protected}% + \expandafter\expandafter\expandafter\@firstoftwo + \else + \endgroup + \expandafter\expandafter\expandafter\@secondoftwo + \fi \fi } % \end{macrocode} % \end{macro} % \begin{macro}{\llm@macro} % \begin{macrocode} -\def\llm@macro{macro:->} +\def\llm@macro{macro} \@onelevel@sanitize\llm@macro % \end{macrocode} % \end{macro} +% \begin{macro}{\llm@protectedmacro} +% \begin{macrocode} +\def\llm@protectedmacro{\protected macro} +\@onelevel@sanitize\llm@protectedmacro +% \end{macrocode} +% \end{macro} % \begin{macro}{\llm@CarThree} % \begin{macrocode} \def\llm@CarThree#1#2#3#4\llm@nil{#1#2#3}% % \end{macrocode} % \end{macro} +% \begin{macro}{\llm@CarTwo} +% \begin{macrocode} +\def\llm@CarTwo#1#2#3\llm@nil{#1#2}% +% \end{macrocode} +% \end{macro} % % \begin{macrocode} \llm@AtEnd @@ -418,7 +619,7 @@ and the derived files \catcode`\%=14 % \catcode`\ =10 % \catcode13=5 % - \RequirePackage{letltxmacro}[2008/06/09]\relax + \RequirePackage{letltxmacro}[2008/06/12]\relax \RestoreCatcodes } \Test @@ -439,7 +640,7 @@ and the derived files \nofiles \documentclass{minimal} -\usepackage{letltxmacro}[2008/06/09] +\usepackage{letltxmacro}[2008/06/12] \usepackage{qstest} \IncludeTests{*} @@ -535,6 +736,24 @@ and the derived files % \end{macrocode} % % \begin{macrocode} +\usepackage{etoolbox} + +\begin{qstest}{newrobustcmd}{newrobustcmd} + \newrobustcmd{\TestA}[1][\default]{TestA}% + \SaveA + \LetLtxMacro\TestB\TestA + \TestDef{TestB}{\@testopt \\TestB {\default }}% + \protected\edef\TestC{% + \noexpand\@testopt + \expandafter\noexpand\csname\string\TestB\endcsname + {\noexpand\default}% + }% + \TestEquals{TestB}{TestC}% + \CheckA +\end{qstest} +% \end{macrocode} +% +% \begin{macrocode} \csname @@end\endcsname % \end{macrocode} % \begin{macrocode} @@ -602,6 +821,7 @@ and the derived files % \begin{tabular}{@{}>{\ttfamily}l@{ $\rightarrow$ }>{\ttfamily}l@{}} % letltxmacro.sty & tex/latex/oberdiek/letltxmacro.sty\\ % letltxmacro.pdf & doc/latex/oberdiek/letltxmacro.pdf\\ +% letltxmacro-showcases.tex & doc/latex/oberdiek/letltxmacro-showcases.tex\\ % test/letltxmacro-test1.tex & doc/latex/oberdiek/test/letltxmacro-test1.tex\\ % test/letltxmacro-test2.tex & doc/latex/oberdiek/test/letltxmacro-test2.tex\\ % letltxmacro.dtx & source/latex/oberdiek/letltxmacro.dtx\\ @@ -729,6 +949,10 @@ and the derived files % \item % First version. % \end{Version} +% \begin{Version}{2008/06/12 v1.1} +% \item +% Support for \xpackage{etoolbox}'s \cs{newrobustcmd} added. +% \end{Version} % \end{History} % % \PrintIndex diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins index 6b10f392d7d..21ff6a74aff 100644 --- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins +++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.ins @@ -1,5 +1,5 @@ % oberdiek.ins -% 2008/06/09 +% 2008/06/12 % % Copyright (C) 1999, 2001, 2006 by % Heiko Oberdiek <oberdiek@uni-freiburg.de> diff --git a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex index c50a2b59bc7..ef2d5c42e25 100644 --- a/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex +++ b/Master/texmf-dist/source/latex/oberdiek/oberdiek.tex @@ -6,7 +6,7 @@ \newcommand*{\Subject}{CTAN:\CTANdir} \newcommand*{\Author}{Heiko Oberdiek} \newcommand*{\Email}{oberdiek@uni-freiburg.de} -\newcommand*{\Date}{2008/06/09} +\newcommand*{\Date}{2008/06/12} % Copyright (C) 2006 by % Heiko Oberdiek <oberdiek@uni-freiburg.de> @@ -245,7 +245,7 @@ [\entrysep] \entry{kvsetkeys}{2007/09/29}{1.3}{Key value parser with default handler support}% [\entrysep] -\entry{letltxmacro}{2008/06/09}{1.0}{Let assignment for \LaTeX{} macros}% +\entry{letltxmacro}{2008/06/12}{1.1}{Let assignment for \LaTeX{} macros}% [\entrysep] \entry{listingsutf8}{2007/11/11}{1.1}{Adding support for UTF-8 to listings}% [\entrysep] diff --git a/Master/texmf-dist/tex/latex/oberdiek/letltxmacro.sty b/Master/texmf-dist/tex/latex/oberdiek/letltxmacro.sty index 380586612a8..f247981c1c2 100644 --- a/Master/texmf-dist/tex/latex/oberdiek/letltxmacro.sty +++ b/Master/texmf-dist/tex/latex/oberdiek/letltxmacro.sty @@ -25,7 +25,8 @@ %% This work consists of the main source file letltxmacro.dtx %% and the derived files %% letltxmacro.sty, letltxmacro.pdf, letltxmacro.ins, letltxmacro.drv, -%% letltxmacro-test1.tex, letltxmacro-test2.tex. +%% letltxmacro-showcases.tex, letltxmacro-test1.tex, +%% letltxmacro-test2.tex. %% \begingroup \catcode123 1 % { @@ -59,9 +60,14 @@ \TMP@EnsureCode{58}{12}% : \TMP@EnsureCode{61}{12}% = \TMP@EnsureCode{62}{12}% > +\edef\llm@AtEnd{% + \llm@AtEnd + \escapechar\the\escapechar\relax +} +\escapechar=92 % `\\ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{letltxmacro}% - [2008/06/09 v1.0 Let assignment for LaTeX macros (HO)] + [2008/06/12 v1.1 Let assignment for LaTeX macros (HO)] \newcommand*{\LetLtxMacro}[2]{% \edef\reserved@a{% \noexpand\protect @@ -85,18 +91,30 @@ \fi } \def\llm@LetLtxMacro#1#2{% - \expandafter\llm@CheckParams\meaning#2{}{}{}{}{}{}{}{}\@nil{% + \expandafter\llm@CheckParams\meaning#2:->\@nil{% \begingroup - \edef\x{% - \noexpand\@protected@testopt - \noexpand#2% - \expandafter\noexpand\csname\string#2\endcsname - }% - \expandafter\expandafter\expandafter\def - \expandafter\expandafter\expandafter\y - \expandafter\expandafter\expandafter{% - \expandafter\llm@CarThree#2{}{}{}\llm@nil - }% + \ifx\llm@protected\@empty + \edef\x{% + \noexpand\@protected@testopt + \noexpand#2% + \expandafter\noexpand\csname\string#2\endcsname + }% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\y + \expandafter\expandafter\expandafter{% + \expandafter\llm@CarThree#2{}{}{}\llm@nil + }% + \else + \edef\x{% + \noexpand\@testopt + \expandafter\noexpand\csname\string#2\endcsname + }% + \expandafter\expandafter\expandafter\def + \expandafter\expandafter\expandafter\y + \expandafter\expandafter\expandafter{% + \expandafter\llm@CarTwo#2{}{}\llm@nil + }% + \fi \expandafter\endgroup\ifx\x\y \begingroup \def\@protected@testopt##1##2##3{% @@ -108,6 +126,14 @@ {\the\toks@}% }% }% + \def\@testopt##1##2{% + \toks@={##2}% + \protected\xdef\llm@GlobalTemp{% + \noexpand\@testopt + \expandafter\noexpand\csname\string#1\endcsname + {\the\toks@}% + }% + }% #2% \endgroup \let#1=\llm@GlobalTemp @@ -120,19 +146,30 @@ \let#1=#2\relax }% } -\def\llm@CheckParams#1#2#3#4#5#6#7#8#9\@nil{% +\def\llm@CheckParams#1:->#2\@nil{% \begingroup - \def\x{#1#2#3#4#5#6#7#8}% - \@onelevel@sanitize\x - \expandafter\endgroup\ifx\x\llm@macro + \def\x{#1}% + \ifx\x\llm@macro + \endgroup + \def\llm@protected{}% \expandafter\@firstoftwo \else - \expandafter\@secondoftwo + \ifx\x\llm@protectedmacro + \endgroup + \def\llm@protected{\protected}% + \expandafter\expandafter\expandafter\@firstoftwo + \else + \endgroup + \expandafter\expandafter\expandafter\@secondoftwo + \fi \fi } -\def\llm@macro{macro:->} +\def\llm@macro{macro} \@onelevel@sanitize\llm@macro +\def\llm@protectedmacro{\protected macro} +\@onelevel@sanitize\llm@protectedmacro \def\llm@CarThree#1#2#3#4\llm@nil{#1#2#3}% +\def\llm@CarTwo#1#2#3\llm@nil{#1#2}% \llm@AtEnd \endinput %% |