CTAN Comprehensive TeX Archive Network

Directory macros/generic/dowith

               README for the `dowith' package

      Apply Command to Each Item in a List of Arguments 
               in TeX's Macro Expansion Buffer

                  (C) Uwe Lueck 2012/11/19

`dowith.sty' provides macros for applying a command to all items
in a list of macro arguments, and also for extending and reducing 
macros storing such lists. "Brace groups" are single items of 
such lists, as opposed to token lists. Iteration is implemented 
within TeX's expansion processor, so works within \write as with 
`blog.sty'. Loop and list macros in other packages are discussed 
in the documentation. There is no need for e-TeX to which some
of them refer. 

`domore.sty' extends `dowith.sty' in order to apply multi-
parameter macros to a list and to insert "separator material" 
between resulting items. One application has been generating 
inline lists of links that are separated by ` | '.

The packages are "generic", i.e., should also work with Plain TeX, 
relying on the `plainpkg' package for some minimal LaTeX-like 

KEYWORDS: programming structures; 
          macro programming, loops, list macros

RELATED PACKAGES: catoptions, etextools, etoolbox, forarray, 
forloop, loops, multido, moredefs, lmake, texapi, xfor, xspace


The package file `dowith.sty', `domore.sty' and the 
documentation files `dowith.pdf', `domore.pdf', `dowith.tex', 
and `domore.tex' can be redistributed and/or modified under the 
terms of the LaTeX Project Public License; either version 1.3c 
of the License, or any later version, see


We did our best to help you, but there is NO WARRANTY.

The `dowith' package is author-maintained in the sense of
this license.

The latest public version of the package is available at


A TDS version of the package is available as


The file `dowith.RLS' provides RELEASE info accessible by LaTeX 
FILE info packages, see 


Please report bugs, problems, and suggestions via


Download the contents of this package in one zip archive (1.2M).

dowith – Apply a command to a list of items

The package provides macros for applying a command to all elements of a list without separators, such as ‘\DoWithAllIn{<cmd>}{<list-macro>}’, and also for extending and reducing macros storing such lists. Applications in mind belonged to , but the package should work with other formats as well. Loop and list macros in other packages are discussed.

A further package, domore, is also provided, which enhances the functionality of dowith.

Versionr0.32 2015-11-14
LicensesThe Project Public License 1.3
MaintainerUwe Lück (deceased)
TDS archivedowith.tds.zip
Contained inTeX Live as dowith
MiKTeX as dowith
TopicsMacro support
Guest Book Sitemap Contact Contact Author