diff options
author | Karl Berry <karl@freefriends.org> | 2016-12-26 22:24:22 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2016-12-26 22:24:22 +0000 |
commit | ff140747d3358efbf08d95de581c44189cdfb2e9 (patch) | |
tree | 1c096f9e73591a2d44ebec16897e83ea694f00d8 | |
parent | 6a2618ff9e74e2551b6d705dcf4c9e79c2e6cb2e (diff) |
etoolbox (26dec16)
git-svn-id: svn://tug.org/texlive/trunk@42796 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r-- | Master/texmf-dist/doc/latex/etoolbox/README.md | 88 | ||||
-rw-r--r-- | Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf | bin | 222295 -> 223387 bytes | |||
-rw-r--r-- | Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex | 27 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/etoolbox/etoolbox.def | 2 | ||||
-rw-r--r-- | Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty | 28 |
5 files changed, 53 insertions, 92 deletions
diff --git a/Master/texmf-dist/doc/latex/etoolbox/README.md b/Master/texmf-dist/doc/latex/etoolbox/README.md index 48de76e1356..1b08bf6dcca 100644 --- a/Master/texmf-dist/doc/latex/etoolbox/README.md +++ b/Master/texmf-dist/doc/latex/etoolbox/README.md @@ -1,92 +1,8 @@ # `etoolbox`: e-TeX tools for LaTeX -## About - The `etoolbox` package is a toolbox of programming facilities geared primarily towards LaTeX class and package authors. It provides LaTeX -frontends to some of the new primitives provided by e-TeX as well as +frontends to some of the primitives provided by e-TeX as well as some generic tools which are not related to e-TeX but match the -profile of this package. The package is work in progress. Note that -previous versions of this package were released under the name -`elatex`. - -## License - -Copyright (c) 2007-2010 Philipp Lehman, 2015 Joseph Wright. -Permission is granted to copy, distribute and/or modify this -software under the terms of the LaTeX Project Public License (LPPL), -version 1.3c or any later version. This software is provided 'as -is', without warranty of any kind, either expressed or implied, -including, but not limited to, the implied warranties of -merchantability and fitness for a particular purpose. - -## Requirements - - - e-TeX - - `etex.sty` (for LaTeX kernel releases prior to 2015) - -## Automatic installation - -TeX Live: The `etoolbox` package is included in TeX Live. - Use the TeX Live package manager to install it. - -MiKTeX: The `etoolbox` package is included in MiKTeX. - Use the MiKTeX package manager to install it. - -#Semi-automatic installation - -1. Download the file - - http://mirror.ctan.org/install/macros/latex/contrib/etoolbox.tds.zip - -2. Unpack the archive in the root directory of the local TeX - installation tree, for example - - /usr/local/share/texmf/ - - or - - /usr/share/texmf-local/ - - or - - C:\Local TeX Files\ - -3. Update the file hash tables (also known as the file name - database). - - On teTeX and TeX Live systems, run `texhash` as root (`sudo - texhash`). On MiKTeX, run `initexmf --update-fndb` in a command - window or use the 'Refresh FNDB' button of the MiKTeX Options - window. - -## Manual installation - -1. Copy the files `etoolbox.sty` and `etoolbox.def` to - - <TEXMFLOCAL>/tex/latex/etoolbox/ - - where `<TEXMFLOCAL>` denotes the root of the local TeX installation - tree, for example - - /usr/local/share/texmf/ - - or - - /usr/share/texmf-local/ - - or - - C:\Local TeX Files\ - -2. The file `etoolbox.pdf` goes to - - <TEXMFLOCAL>/doc/latex/etoolbox/ - -3. Update the file hash tables (also known as the file name - database). +profile of this package. - On teTeX and TeX Live systems, run `texhash` as root (`sudo - texhash`). On MiKTeX, run `initexmf --update-fndb` in a command - window or use the 'Refresh FNDB' button of the MiKTeX Options - window. diff --git a/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf b/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf Binary files differindex 95ae840d655..3f76945663c 100644 --- a/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf +++ b/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf diff --git a/Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex b/Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex index 69809b26286..2f8c2ed4ef3 100644 --- a/Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex +++ b/Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex @@ -12,8 +12,8 @@ url={http://www.ctan.org/pkg/etoolbox/}, author={Philipp Lehman, Joseph Wright}, email={joseph.wright@morningstar2.co.uk}, - revision={v2.2b}, - date={2016/12/01}} + revision={v2.3}, + date={2016/12/26}} \hypersetup{% pdftitle={The etoolbox Package}, @@ -35,7 +35,7 @@ The \sty{etoolbox} package is a toolbox of programming tools geared primarily to \subsection{License} -Copyright \textcopyright\ 2007--2011 Philipp Lehman, 2015 Joseph Wright. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version 1.3c or later.\fnurl{http://www.latex-project.org/lppl/} +Copyright \textcopyright\ 2007--2011 Philipp Lehman, 2015,2016 Joseph Wright. Permission is granted to copy, distribute and\slash or modify this software under the terms of the \lppl, version 1.3c or later.\fnurl{http://www.latex-project.org/lppl/} \section{User Commands} \label{use} @@ -1183,6 +1183,22 @@ Similar to \cmd{listeadd} except that it takes a control sequence name as its fi Similar to \cmd{listcseadd} except that the assignment is global. +\cmditem{listdel}{listmacro}{item} + +This command removes an \prm{item} from a \prm{listmacro}. A blank \prm{item} is ignored. + +\cmditem{listgdel}{listmacro}{item} + +Similar to \cmd{listdel} except that the assignment is global. + +\cmditem{listcsdel}{listcsname}{item} + +Similar to \cmd{listdel} except that it takes a control sequence name as its first argument. + +\cmditem{listcsgdel}{listcsname}{item} + +Similar to \cmd{listcsdel} except that the assignment is global. + \cmditem{dolistloop}{listmacro} This command loops over all items in a \prm{listmacro} and executes the auxiliary command \cmd{do} for every item in the list, passing the item as an argument. The list loop itself is expandable. You may use \cmd{listbreak} at the end of the replacement text of \cmd{do} to stop processing and discard the remaining items in the list. Here is a usage example which prints an internal list called \cmd{mylist} as an \env{itemize} environment: @@ -1273,6 +1289,11 @@ This revision history is a list of changes relevant to users of this package. Ch \begin{changelog} +\begin{release}{2.3}{2016-12-26} +\item Added \cmd{listdel}\see{aut:lst:int} +\item Added \cmd{listgdel}\see{aut:lst:int} +\end{release} + \begin{release}{2.2b}{2016-12-01} \item Fixed \cmd{ifdefltxprotect} for some types of \latex robust commands \item Remove redundant macro after \cmd{robustify} processing diff --git a/Master/texmf-dist/tex/latex/etoolbox/etoolbox.def b/Master/texmf-dist/tex/latex/etoolbox/etoolbox.def index 75a01547a59..e99a704cfde 100644 --- a/Master/texmf-dist/tex/latex/etoolbox/etoolbox.def +++ b/Master/texmf-dist/tex/latex/etoolbox/etoolbox.def @@ -1,5 +1,5 @@ \ProvidesFile{etoolbox.def} - [2016/12/01 v2.2b etoolbox debug messages (JAW)] + [2016/12/26 v2.3 etoolbox debug messages (JAW)] \begingroup \makeatletter diff --git a/Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty b/Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty index da8327b8338..d2bfb6b12ad 100644 --- a/Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty +++ b/Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty @@ -1,5 +1,5 @@ % Copyright (c) 2007-2011 Philipp Lehman. -% (c) 2015 Joseph Wright +% (c) 2015,2016 Joseph Wright % % Permission is granted to copy, distribute and/or modify this % software under the terms of the LaTeX Project Public License @@ -12,7 +12,7 @@ \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{etoolbox} - [2016/12/01 v2.2b e-TeX tools for LaTeX (JAW)] + [2016/12/26 v2.3 e-TeX tools for LaTeX (JAW)] \begingroup \@ifundefined{eTeXversion} @@ -1570,6 +1570,30 @@ \newrobustcmd{\listcsxadd}[1]{% \expandafter\listxadd\csname#1\endcsname} +% {<listmacro>}{<string>} + +\newrobustcmd{\listdel}[2]{% + \etb@listdel{#1}{#2}\def} +\newrobustcmd{\listgdel}[2]{% + \etb@listdel{#1}{#2}\gdef} + +\protected\long\def\etb@listdel#1#2#3{% + \ifblank{#2} + {} + {\ifinlist{#2}{#1}{% + \begingroup + \def\etb@tempa##1|#2|##2&{\endgroup + \expandafter#3\expandafter#1\expandafter{\@gobble##1|##2}}% + \expandafter\etb@tempa\expandafter|#1&}{}}% +} + +% {<listcsname>}{<string>} + +\newrobustcmd{\listcsdel}[1]{% + \expandafter\listdel\csname#1\endcsname} +\newrobustcmd{\listcsgdel}[1]{% + \expandafter\listgdel\csname#1\endcsname} + % {<string>}{<listmacro>}{<true>}{<false>} \newrobustcmd{\ifinlist}[2]{% |