From b29717c1df1269ae871047d6ccab7b69f95b7fd1 Mon Sep 17 00:00:00 2001
From: Karl Berry <karl@freefriends.org>
Date: Tue, 19 Sep 2006 17:44:40 +0000
Subject: newpackage forloop (18sep06)

git-svn-id: svn://tug.org/texlive/trunk@2159 c570f23f-e606-0410-a88d-b1316a301751
---
 Master/texmf-dist/source/latex/forloop/forloop.dtx | 144 +++++++++++++++++++++
 1 file changed, 144 insertions(+)
 create mode 100644 Master/texmf-dist/source/latex/forloop/forloop.dtx

(limited to 'Master/texmf-dist/source/latex/forloop/forloop.dtx')

diff --git a/Master/texmf-dist/source/latex/forloop/forloop.dtx b/Master/texmf-dist/source/latex/forloop/forloop.dtx
new file mode 100644
index 00000000000..35d6843124f
--- /dev/null
+++ b/Master/texmf-dist/source/latex/forloop/forloop.dtx
@@ -0,0 +1,144 @@
+% \iffalse
+%
+%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
+%<package>\ProvidesPackage{forloop}
+%<package> [2006/09/17 v1.0 For Loops for LaTeX]
+%<package>\RequirePackage{ifthen}
+%
+%
+%<*driver>
+\documentclass{ltxdoc}
+\usepackage{forloop}
+\EnableCrossrefs
+\CodelineIndex
+\RecordChanges
+\begin{document}
+\DocInput{forloop.dtx}
+\end{document}
+%</driver>
+% \fi
+%
+% \iffalse meta-comment
+% remove this comment to get a checksum
+% \CheckSum{0}
+% \fi
+%
+%% \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
+%%   Lower-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
+%%   Digits        \0\1\2\3\4\5\6\7\8\9
+%%   Exclamation   \!     Double quote  \"     Hash (number) \#
+%%   Dollar        \$     Percent       \%     Ampersand     \&
+%%   Acute accent  \'     Left paren    \(     Right paren   \)
+%%   Asterisk      \*     Plus          \+     Comma         \,
+%%   Minus         \-     Point         \.     Solidus       \/
+%%   Colon         \:     Semicolon     \;     Less than     \<
+%%   Equals        \=     Greater than  \>     Question mark \?
+%%   Commercial at \@     Left bracket  \[     Backslash     \\
+%%   Right bracket \]     Circumflex    \^     Underscore    \_
+%%   Grave accent  \`     Left brace    \{     Vertical bar  \|
+%%   Right brace   \}     Tilde         \~}
+%
+% \changes{v1.0}{2006/09/17}{Initial Release}
+%
+% \GetFileInfo{forloop.sty}
+%
+% \DoNotIndex{\#,\$,\%,\&,\@,\\,\{,\},\^,\_,\~,\ ,\!,\(,\),\,}
+% \DoNotIndex{\@ne,\expandafter}
+% \DoNotIndex{\advance,\begingroup,\catcode,\closein}
+% \DoNotIndex{\newcommand,\renewcommand,\providecommand}
+% \DoNotIndex{\closeout,\day,\def,\edef,\gdef,\let,\empty,\endgroup}
+% \DoNotIndex{\newcounter,\providecounter,\addtocounter,\setcounter,\stepcounter,\value,\arabic}
+% \DoNotIndex{\if,\fi,\ifthenelse,\else,\setboolean,\boolean,\newboolean,\provideboolean,\equal,\AND,\OR,\NOT,\whiledo}
+% \DoNotIndex{\ifcase,\ifcat,\or,\else}
+% \DoNotIndex{\par,\parbox,\mbox,\hbox,\begin,\end,\nabla,\partial}
+% \DoNotIndex{\overline,\bar,\small,\tiny,\mathchoice,\scriptsize,\textrm,\texttt}
+% \DoNotIndex{\alpha,\beta,\gamma,\epsilon,\varepsilon,\delta,\zeta,\eta,\theta,\vartheta,\iota,\kappa,\lambda,\mu,\nu}
+% \DoNotIndex{\xi,\omicron,\pi,\varpi,\rho,\varrho,\sigma,\tau,\upsilon,\phi,\varphi,\chi,\psi,\omega}
+% \DoNotIndex{\Delta,\Gamma,\Theta,\Lambda,\Xi,\Pi,\Sigma,\Phi,\Psi,\Omega}
+% \DoNotIndex{\digamma,\lceil,\rceil,\lfloor,\rfloor,\left,\right,\inp,\inb,\inbr,\inap,\nop}
+% \DoNotIndex{\sum,\prod,\int,\log,\ln,\exp,\sin,\cos,\tan,\csc,\sec,\cot,\arcsin,\arccos,\arctan,\det}
+% \DoNotIndex{\sinh,\cosh,\tanh,\csch,\sech,\coth,\arcsinh,\arccosh,\arctanh}
+% \DoNotIndex{\mod,\max,\min,\gcd,\lcm,\wp,\arg,\dots,\infty,}
+% \DoNotIndex{\frac,\binom,\braket,\@@atop}
+% \DoNotIndex{\cdot,\ldots,\tilde,\times,\dagger,\relax}
+% \DoNotIndex{\mathbb,\roman,\bf,\mathord,\cal,\DeclareMathOperator,\PackageError,\PackageWarning}
+% \DoNotIndex{\csname,\endcsname,\ifx,\ifnum}
+% \DoNotIndex{\mod,\bmod,\pmod,\pod,\operatorname}
+%
+% \title{The \textsf{forloop} package\thanks{This document
+% corresponds to \textsf{forloop}~\fileversion,
+% dated~\filedate.}}
+% \author{nsetzer}
+%
+% \maketitle
+%
+% \setcounter{IndexColumns}{2}
+% \StopEventually{\PrintChanges\PrintIndex}
+%
+% The \textsf{forloop} package defines two commands |\forloop| (preferred usage) and |\forLoop| (deprecated).
+%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\section{Implementation}
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+% \begin{macro}{\forloop}
+% |\forloop|\oarg{step}|{|\meta{counter}|=|\meta{value}|}|\marg{condition}\marg{code}.
+%
+% In action: |\forloop{testct=1}{\value{testct} < 3}{\arabic{testct}}|
+% \newcounter{testct} \forloop{testct=1}{\value{testct} < 3}{\arabic{testct}}
+% 
+%    \begin{macrocode}
+\newcommand{\forloop}[4][1]%
+{%
+\forloop@split#2\%%
+\setcounter{\forloop@ct@name}{\forloop@ct@initialvalue}%
+\whiledo{ #3 }%
+	{%
+	#4%
+	\addtocounter{\forloop@ct@name}{#1}%
+	}%
+}%
+%    \end{macrocode}
+% \end{macro}
+%
+%
+%    \begin{macrocode}
+\def\forloop@split#1=#2\%{%
+\gdef\forloop@ct@name{#1}%
+\gdef\forloop@ct@initialvalue{#2}%
+}%
+%    \end{macrocode}
+%
+% \begin{macro}{\forLoop}
+% |\forLoop|\oarg{step}\marg{start}\marg{stop}\marg{counter name}\marg{code}
+%    \begin{macrocode}
+\newcommand{\forLoop}[5][1]
+{%
+\setcounter{#4}{#2}%
+\ifthenelse{ \value{#4}<#3 }%
+	{%
+	#5%
+	\addtocounter{#4}{#1}%
+	\forLoop[#1]{\value{#4}}{#3}{#4}{#5}%
+	}%
+% Else
+	{%
+	\ifthenelse{\value{#4}=#3}%
+		{%
+		#5%
+		}%
+	% Else
+		{}%
+	}%
+}
+%    \end{macrocode}
+% \end{macro}
+%
+%
+%
+%
+% \Finale
+\endinput
\ No newline at end of file
-- 
cgit v1.2.3

