summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-12-26 22:24:22 +0000
committerKarl Berry <karl@freefriends.org>2016-12-26 22:24:22 +0000
commitff140747d3358efbf08d95de581c44189cdfb2e9 (patch)
tree1c096f9e73591a2d44ebec16897e83ea694f00d8
parent6a2618ff9e74e2551b6d705dcf4c9e79c2e6cb2e (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.md88
-rw-r--r--Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdfbin222295 -> 223387 bytes
-rw-r--r--Master/texmf-dist/doc/latex/etoolbox/etoolbox.tex27
-rw-r--r--Master/texmf-dist/tex/latex/etoolbox/etoolbox.def2
-rw-r--r--Master/texmf-dist/tex/latex/etoolbox/etoolbox.sty28
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
index 95ae840d655..3f76945663c 100644
--- a/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf
+++ b/Master/texmf-dist/doc/latex/etoolbox/etoolbox.pdf
Binary files differ
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]{%