diff options
author | Karl Berry <karl@freefriends.org> | 2011-03-21 21:59:45 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2011-03-21 21:59:45 +0000 |
commit | 4f243e567cce42bca2f019edec58026baf5b6162 (patch) | |
tree | cdb5dd12a2a25edea2f45413f5a0610fae01a888 /Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex | |
parent | bd9ed7a519b6dce70bfb60a035fa991fe5861c17 (diff) |
ydoc (21mar11)
git-svn-id: svn://tug.org/texlive/trunk@21787 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex')
-rw-r--r-- | Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex b/Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex new file mode 100644 index 00000000000..25ec2c5e63f --- /dev/null +++ b/Master/texmf-dist/tex/latex/ydoc/ydocstrip.tex @@ -0,0 +1,70 @@ +%&pdflatex +\input docstrip + +\def\checkOption<#1{% + \ifcase + \ifx*#10\else \ifx/#11\else + \ifx+#12\else \ifx-#13\else + \ifx<#14\else + \ifx=#15\else + \ifx!#16\else + 10\fi\fi\fi\fi\fi\fi\fi\relax + \expandafter\starOption\or + \expandafter\slashOption\or + \expandafter\plusOption\or + \expandafter\minusOption\or + \expandafter\verbOption\or + \expandafter\varOption\or + \expandafter\valueOption\else + \expandafter\doOption\fi + #1} + +\def\varOption =#1#2>#3\endLine{{% + \ifx*#1\relax + \edef\varStop{\perCent<=/#2>}% + \global\expandafter\let\csname ydocstrip@var@#2\endcsname\empty% + \expandafter\def\csname ydocstrip@var@#2\endcsname##1{}% + \loop + \ifeof\inFile + \errmessage{Source file ended while reading a multi-line variable content!}% + \fi + \read\inFile to \inLine + \if 1\ifx\inLine\varStop 0\fi 1% if not inLine==varStop + \expandafter\xdef\csname ydocstrip@var@#2\endcsname{\csname ydocstrip@var@#2\endcsname^^J\inLine}% + \maybeMsg{.}% + \repeat + \else + \ifx/#1\relax + \errmessage{Error in expression: spurious '<=/#2>'}% + \else + \ifx+#1\relax + \expandafter\ifx\csname ydocstrip@var@#2\endcsname\relax + \expandafter\xdef\csname ydocstrip@var@#2\endcsname{#3}% + \else + \expandafter\xdef\csname ydocstrip@var@#2\endcsname{\csname ydocstrip@var@#2\endcsname^^J#3}% + \fi + \else + \expandafter\gdef\csname ydocstrip@var@#1#2\endcsname{#3}% + \fi + \fi + \fi +}} + + +\def\valueOption !#1>#2\endLine{% + \begingroup + \expandafter\let\expandafter\var\csname ydocstrip@var@#1\endcsname + \ifx\var\relax + \errmessage{Used variable '#1' was never defined!}% + \else + \ifx\var\empty\else + \def\do##1##2##3{% + \StreamPut##1{\csname ydocstrip@var@#1\endcsname}% + }% + \activefiles + \fi + \fi + \endgroup +} + + |