summaryrefslogtreecommitdiff
path: root/Master
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-03-05 23:24:10 +0000
committerKarl Berry <karl@freefriends.org>2015-03-05 23:24:10 +0000
commit94c804f3e14cfc7bc3db28eeda8ea83737497a11 (patch)
tree9a164e019b7d82510570e043c21ec4ae0d798191 /Master
parente7fc2a9ed400064a361a84a4ec4c81d6e0ad0ba7 (diff)
etoc (5mar15)
git-svn-id: svn://tug.org/texlive/trunk@36442 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master')
-rw-r--r--Master/texmf-dist/doc/latex/etoc/README38
-rw-r--r--Master/texmf-dist/doc/latex/etoc/etoc-DE.pdfbin319222 -> 319641 bytes
-rw-r--r--Master/texmf-dist/doc/latex/etoc/etoc-DE.tex2
-rw-r--r--Master/texmf-dist/doc/latex/etoc/etoc.pdfbin335475 -> 338156 bytes
-rw-r--r--Master/texmf-dist/doc/latex/etoc/etoc.tex2
-rw-r--r--Master/texmf-dist/source/latex/etoc/etoc.dtx315
-rw-r--r--Master/texmf-dist/source/latex/etoc/etoc.ins8
-rw-r--r--Master/texmf-dist/tex/latex/etoc/etoc.sty34
8 files changed, 238 insertions, 161 deletions
diff --git a/Master/texmf-dist/doc/latex/etoc/README b/Master/texmf-dist/doc/latex/etoc/README
index bbf44b08452..b89b7e05e7a 100644
--- a/Master/texmf-dist/doc/latex/etoc/README
+++ b/Master/texmf-dist/doc/latex/etoc/README
@@ -1,6 +1,6 @@
%
% Package: etoc
-% Version: 1.07m (2015/01/23)
+% Version: 1.07n (2015/03/05)
% Description: Completely customisable TOCs (jfB)
%
% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
@@ -9,7 +9,7 @@
% License: LPPL 1.3c or later
-% this README: *Abstract*, *Installation*, *License*.
+% this README: *Abstract*, *Installation*, *License*, *Recent changes*.
ABSTRACT
========
@@ -114,3 +114,37 @@ LICENSE
files etoc.sty, etoc.ins, etoc.tex, etoc-DE.tex, etoc.pdf, etoc-DE.pdf,
etoc.dvi, etoc-DE.dvi.
+RECENT CHANGES
+==============
+
+v1.07n [2015/03/05]
+
+ No more use of \toks@ when etoc constructs \etocthelinkedname etc... Thus
+ \toks@ can be put in the line styles in order to accumulate information.
+ Only useful if it is certain nothing else will change \toks@ either.
+
+ In the documentation: list of main commands now in alphabetic order.
+
+v1.07m [2015/01/23]
+
+ Reading of .toc file is delayed to \begin{document} to account for
+ possible Babel active characters used therein. Thanks to Denis
+ Bitouzé who reported a Babel related problem.
+
+ Improved global toc display emulation under KOMA-script classes.
+
+ New command \etocbeforetitlehook. New command \etocdisplay.
+
+v1.07l [doc of 2014/04/29]
+
+ Added to the documentation an example of use of \etocthelinkedname together
+ with an enumitem inline itemize* environment; moved main TOC to immediately
+ after the title, and license to the first pages.
+
+ Incorporation of the translation into German done on the initiative of
+ Christine Römer by Felix Baral-Weber, Jenny Rothkrämer-Vogt, Daniel
+ Büttner, Claudia Dahl, Christian Otto and Christine Römer (FSU Jena). My
+ grateful thanks to all!
+
+
+
diff --git a/Master/texmf-dist/doc/latex/etoc/etoc-DE.pdf b/Master/texmf-dist/doc/latex/etoc/etoc-DE.pdf
index bcff41cfefe..f3ca3f22935 100644
--- a/Master/texmf-dist/doc/latex/etoc/etoc-DE.pdf
+++ b/Master/texmf-dist/doc/latex/etoc/etoc-DE.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/etoc/etoc-DE.tex b/Master/texmf-dist/doc/latex/etoc/etoc-DE.tex
index dd5b1593464..ca3b686bb08 100644
--- a/Master/texmf-dist/doc/latex/etoc/etoc-DE.tex
+++ b/Master/texmf-dist/doc/latex/etoc/etoc-DE.tex
@@ -1,6 +1,6 @@
%%
%% Package: etoc
-%% Version: 1.07m (2015/01/23)
+%% Version: 1.07n (2015/03/05)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
%% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
diff --git a/Master/texmf-dist/doc/latex/etoc/etoc.pdf b/Master/texmf-dist/doc/latex/etoc/etoc.pdf
index 7336d6a8744..fa84c20409c 100644
--- a/Master/texmf-dist/doc/latex/etoc/etoc.pdf
+++ b/Master/texmf-dist/doc/latex/etoc/etoc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/etoc/etoc.tex b/Master/texmf-dist/doc/latex/etoc/etoc.tex
index c6dbf0c6bdb..3a23520fca9 100644
--- a/Master/texmf-dist/doc/latex/etoc/etoc.tex
+++ b/Master/texmf-dist/doc/latex/etoc/etoc.tex
@@ -1,6 +1,6 @@
%%
%% Package: etoc
-%% Version: 1.07m (2015/01/23)
+%% Version: 1.07n (2015/03/05)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
%% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
diff --git a/Master/texmf-dist/source/latex/etoc/etoc.dtx b/Master/texmf-dist/source/latex/etoc/etoc.dtx
index 104e468b4fe..67ad7d51c67 100644
--- a/Master/texmf-dist/source/latex/etoc/etoc.dtx
+++ b/Master/texmf-dist/source/latex/etoc/etoc.dtx
@@ -1,21 +1,21 @@
% -*- coding: utf-8; -*-
%<*none>
-{\def\doctimestamp {Time-stamp: <23-01-2015 23:01:14 CET>}%
+{\def\doctimestamp {Time-stamp: <05-03-2015 12:32:16 CET>}%
\def\getdtxtimestamp #1 <#2 #3 #4>{#2 at #3 #4}%
\xdef\etocdtxtimestamp {\expandafter\getdtxtimestamp\doctimestamp }}%
%</none>
%%
%% Package: etoc
-%% Version: 1.07m (2015/01/23)
+%% Version: 1.07n (2015/03/05)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
%% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
%% and collaborators for the translation into German of the documentation
%%
%<*insfile>
-\def\etocpkgdate {2015/01/23}
-\def\etocdocdate {2015/01/23}
-\def\etocpkgversion {v1.07m}
+\def\etocpkgdate {2015/03/05}
+\def\etocdocdate {2015/03/05}
+\def\etocpkgversion {v1.07n}
\def\etocpkgdescription {Completely customisable TOCs (jfB)}
%</insfile>
%<*none>
@@ -32,7 +32,7 @@
\catcode32=13\catcode`\\=12^^Brelax^^A
^^Bfirstofone{^^Bendgroup^^Bdef^^BetocLicense^^A
{% Package: etoc
-% Version: 1.07m (2015/01/23)
+% Version: 1.07n (2015/03/05)
% License: LPPL 1.3c or later
% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
@@ -1361,58 +1361,56 @@ The code:
\begingroup\raggedcolumns
\advance\linewidth18pt
\begin{multicols}{3}\parindent0pt\relax
-\csb{etocstandardlines}\par
-\csb{etocdefaultlines}\par
- \csb{etoctoclines}\par
- \csb{etocsetstyle}\par
-\csb{etocname}\par
-\csb{etocpage}\par
-\csb{etocskipfirstprefix}\par
+ \csb{etocaftercontentshook}\par
+ \csb{etocaftertitlehook}\par
+ \csb{etocaftertochook}\par
+ \csb{etocbeforetitlehook}\par
+ \csb{etocdefaultlines}\par
+ \csb{etocdepthtag.toc}\par
+ \csb{etocdisplay}\par
+ \csb{etocframedstyle}\par
+ \csb{etocframed}\par
+ \csb{etocifnumbered}\par
+ \csb{etocignoredepthtags}\par
+ \csb{etocignoretoctocdepth}\par
+ \csb{etocinline}\par
+ \csb{etoclink}\par
+ \csb{etoclocalframed}\par
+ \csb{etoclocalmulticol}\par
+ \csb{etoclocalruled}\par
+ \csb{etocmulticolstyle}\par
+ \csb{etocmulticol}\par
+ \csb{etocname}\par
\csb{etocnumber}\par
-\csb{etocifnumbered}\par
-\csb{etocthename}\par
-\csb{etocthenumber}\par
- \csb{etocthepage}\par
-\csb{etoclink}\par
-\csb{etocthelinkedname}\par
- \csb{etocthelinkednumber}\par
-\csb{etocthelinkedpage}\par
-\csb{etocthelink}\par
+ \csb{etocobeydepthtags}\par
+ \csb{etocobeytoctocdepth}\par
+ \csb{etocpage}\par
+ \csb{etocruledstyle}\par
+ \csb{etocruled}\par
\csb{etocsetlevel}\par
-\csb{etocsettocdepth}\par
-\csb{etocsetnexttocdepth}\par
+ \csb{etocsetnexttocdepth}\par
+ \csb{etocsetstyle}\par
+ \csb{etocsettagdepth}\par
\csb{etocsettocdepth.toc}\par
-\csb{etocobeytoctocdepth}\par
- \csb{etocignoretoctocdepth}\par
-\csb{etocdepthtag.toc}\par
-\csb{etocsettagdepth}\par
- \csb{etocobeydepthtags}\par
-\csb{etocignoredepthtags}\par
+ \csb{etocsettocdepth}\par
+ \csb{etocsettocstyle}\par
+ \csb{etocskipfirstprefix}\par
\csb{etocstandarddisplaystyle}\par
-\csb{etocsettocstyle}\par
-\csb{etocmulticolstyle}\par
- \csb{etocmulticol}\par
-\csb{etoclocalmulticol}\par
-% \csb{etoctocstyle}\par
-% \csb{etoctocstylewithmarks}\par
-% \csb{etoctocstylewithmarksnouc}\par
- \csb{etocruledstyle}\par
-\csb{etocruled}\par
-\csb{etoclocalruled}\par
- \csb{etocframedstyle}\par
-\csb{etocframed}\par
-\csb{etoclocalframed}\par
-\csb{etocinline}\par
- \csb{etocaftertitlehook}\par
-\csb{etocaftercontentshook}\par
-\csb{etocaftertochook}\par
-\csb{etoctoccontentsline}\par
+ \csb{etocstandardlines}\par
+ \csb{etocthelinkedname}\par
+ \csb{etocthelinkednumber}\par
+ \csb{etocthelinkedpage}\par
+ \csb{etocthelink}\par
+ \csb{etocthename}\par
+ \csb{etocthenumber}\par
+ \csb{etocthepage}\par
+ \csb{etoctoccontentsline}\par
+ \csb{etoctoclines}\par
%\vspace{5\baselineskip}\hrule height 0pt
\end{multicols}
\endgroup
-
% 15 octobre, je teste les tags
\etocdepthtag.toc {arbitrarily}
@@ -5525,58 +5523,55 @@ Der Code:
\begingroup\raggedcolumns
\advance\linewidth18pt
\begin{multicols}{3}\parindent0pt\relax
-\csb{etocstandardlines}\par
-\csb{etocdefaultlines}\par
- \csb{etoctoclines}\par
- \csb{etocsetstyle}\par
-\csb{etocname}\par
-\csb{etocpage}\par
-\csb{etocskipfirstprefix}\par
+ \csb{etocaftercontentshook}\par
+ \csb{etocaftertitlehook}\par
+ \csb{etocaftertochook}\par
+ \csb{etocbeforetitlehook}\par
+ \csb{etocdefaultlines}\par
+ \csb{etocdepthtag.toc}\par
+ \csb{etocdisplay}\par
+ \csb{etocframedstyle}\par
+ \csb{etocframed}\par
+ \csb{etocifnumbered}\par
+ \csb{etocignoredepthtags}\par
+ \csb{etocignoretoctocdepth}\par
+ \csb{etocinline}\par
+ \csb{etoclink}\par
+ \csb{etoclocalframed}\par
+ \csb{etoclocalmulticol}\par
+ \csb{etoclocalruled}\par
+ \csb{etocmulticolstyle}\par
+ \csb{etocmulticol}\par
+ \csb{etocname}\par
\csb{etocnumber}\par
-\csb{etocifnumbered}\par
-\csb{etocthename}\par
-\csb{etocthenumber}\par
- \csb{etocthepage}\par
-\csb{etoclink}\par
-\csb{etocthelinkedname}\par
- \csb{etocthelinkednumber}\par
-\csb{etocthelinkedpage}\par
-\csb{etocthelink}\par
+ \csb{etocobeydepthtags}\par
+ \csb{etocobeytoctocdepth}\par
+ \csb{etocpage}\par
+ \csb{etocruledstyle}\par
+ \csb{etocruled}\par
\csb{etocsetlevel}\par
-\csb{etocsettocdepth}\par
-\csb{etocsetnexttocdepth}\par
+ \csb{etocsetnexttocdepth}\par
+ \csb{etocsetstyle}\par
+ \csb{etocsettagdepth}\par
\csb{etocsettocdepth.toc}\par
-\csb{etocobeytoctocdepth}\par
- \csb{etocignoretoctocdepth}\par
-\csb{etocdepthtag.toc}\par
-\csb{etocsettagdepth}\par
- \csb{etocobeydepthtags}\par
-\csb{etocignoredepthtags}\par
+ \csb{etocsettocdepth}\par
+ \csb{etocsettocstyle}\par
+ \csb{etocskipfirstprefix}\par
\csb{etocstandarddisplaystyle}\par
-\csb{etocsettocstyle}\par
-\csb{etocmulticolstyle}\par
- \csb{etocmulticol}\par
-\csb{etoclocalmulticol}\par
-% \csb{etoctocstyle}\par
-% \csb{etoctocstylewithmarks}\par
-% \csb{etoctocstylewithmarksnouc}\par
- \csb{etocruledstyle}\par
-\csb{etocruled}\par
-\csb{etoclocalruled}\par
- \csb{etocframedstyle}\par
-\csb{etocframed}\par
-\csb{etoclocalframed}\par
-\csb{etocinline}\par
- \csb{etocaftertitlehook}\par
-\csb{etocaftercontentshook}\par
-\csb{etocaftertochook}\par
-\csb{etoctoccontentsline}\par
+ \csb{etocstandardlines}\par
+ \csb{etocthelinkedname}\par
+ \csb{etocthelinkednumber}\par
+ \csb{etocthelinkedpage}\par
+ \csb{etocthelink}\par
+ \csb{etocthename}\par
+ \csb{etocthenumber}\par
+ \csb{etocthepage}\par
+ \csb{etoctoccontentsline}\par
+ \csb{etoctoclines}\par
%\vspace{5\baselineskip}\hrule height 0pt
\end{multicols}
\endgroup
-
-
% 15 octobre, je teste les tags
\etocdepthtag.toc {arbitrarily}
@@ -9135,7 +9130,16 @@ Paketversion ist \texttt{\etocDEpkgversion} von \texttt{\etocDEpkgdate}.
\begin{multicols}{2}
\begin{jfverbatim}
-v1.07m [2015/05/23]>
+v1.07n [2015/03/05]>
+
+ No more use of \toks@ when etoc constructs \etocthelinkedname etc... Thus
+ \toks@ can be put in the line styles in order to accumulate information.
+ Only useful if it is certain nothing else will change \toks@ either.
+
+ In the documentation: list of main commands now in alphabetic order.
+
+
+v1.07m [2015/01/23]>
Reading of .toc file is delayed to \begin{document} to account for
possible Babel active characters used therein. Thanks to Denis
@@ -9143,72 +9147,79 @@ v1.07m [2015/05/23]>
Improved global toc display emulation under KOMA-script classes.
- New hook \etocbeforetitlehook.
+ New command \etocbeforetitlehook. New command \etocdisplay.
+
v1.07l [doc of 2014/04/29]>
- added to the documentation an example of use of \etocthelinkedname together
+ Added to the documentation an example of use of \etocthelinkedname together
with an enumitem inline itemize* environment; moved main TOC to immediately
after the title, and license to the first pages.
- incorporation of the translation into German done on the initiative of
+ Incorporation of the translation into German done on the initiative of
+[Christine Römer] by +[Felix Baral-Weber, Jenny Rothkrämer-Vogt, Daniel
Büttner, Claudia Dahl, Christian Otto and Christine Römer (FSU Jena).] My
grateful thanks to all!
+
v1.07l [2014/04/22]>
- fixes a bug with the 1.07k compatibility layer with tocloft which had broken
+ Fixes a bug with the 1.07k compatibility layer with tocloft which had broken
the 1.07k (sic) compatibility with memoir (yes, memoir class 1.07k testing
had been done before adding the tocloft thing to the source code . . . ).
Also, etoc when detecting tocvsec2 now checks if this is under the memoir
class, as then nothing special needs to be done to rescue \tableofcontents,
contrarily to the situation with the native tocvsec2.
+
v1.07k [2014/03/06]>
- compatibility with package tocloft; and improved compatibility with
+ Compatibility with package tocloft; and improved compatibility with
class memoir. Novel TOC example in Overview.
+
v1.07j [2013/12/03]>
- some issues with the documentation formatting (now two-sided) have been
+ Some issues with the documentation formatting (now two-sided) have been
addressed, and a novel documentation section ``Typesetting the TOC as a
table'' has been added. Very minor code change (\Etoc@readtoc).
+
v1.07i [2013/10/21]>
- changes to the \etocmulticolstyle and \etocruledstyle codes
+ Changes to the \etocmulticolstyle and \etocruledstyle codes
to lessen the risk of a page break after the title (in the one-column case).
+
v1.07h [2013/10/16]>
- new commands \etocdepthtag.toc, \etocsettagdepth, \etocobeydepthtags,
+ New commands \etocdepthtag.toc, \etocsettagdepth, \etocobeydepthtags,
\etocignoredepthtags.
+
v1.07g [2013/10/13]>
- new commands \etocsettocdepth, \etocsettocdepth.toc,
+ New commands \etocsettocdepth, \etocsettocdepth.toc,
\etocobeytoctocdepth, \etoc~-ignoretoctocdepth which
emulate part of tocvsec2 functionality ; measures to
make tocvsec2 partially compatible with etoc.
- new commands \etocsetnexttocdepth, \invisibletableofcontents,
+ New commands \etocsetnexttocdepth, \invisibletableofcontents,
\invisiblelocaltableofcontents.
- switched from tikz-qtree to forest for the first `toc as
+ Switched from tikz-qtree to forest for the first `toc as
tree' example.
- command names are linked to their descriptions, and many
+ Command names are linked to their descriptions, and many
other changes in the documentation.
- removed printing of temporary message when the local toc
+ Removed printing of temporary message when the local toc
id is not yet stabilized; indeed \localtableofcontents
can have many uses, such as filling up some token list
register and one may wish to not have anything typeset,
even in an intermediate run.
- all of tex etoc.dtx, etex etoc.dtx, xetex etoc.dtx, latex
+ All of tex etoc.dtx, etex etoc.dtx, xetex etoc.dtx, latex
etoc.dtx, pdflatex etoc.dtx are now possible, and the
extracted file etoc.tex allows easy customization of
compilation options for the documentation (default is via
@@ -9217,37 +9228,38 @@ v1.07g [2013/10/13]>
v1.07f [2013/03/07]>
- new macros \etocthelinkedname, \etocthelinkednumber,
+ New macros \etocthelinkedname, \etocthelinkednumber,
\etocthelinkedpage, and \etocthelink.
v1.07e [2013/03/01]>
- improvements in the package own line styles with
+ Improvements in the package own line styles with
regards to penalties and vertical spaces.
- addition to the documentation of an example of
+ Addition to the documentation of an example of
a tree-like table of contents (uses tikz).
- more such examples added 2013/03/03.
+ More such examples added 2013/03/03.
+
v1.07d [2013/02/24]>
- minor code improvements and new documentation
+ Minor code improvements and new documentation
section ``Another compatibility mode''.
v1.07b [2013/02/02]>
- removal of the \xspace from the macros \etocname,
+ Removal of the \xspace from the macros \etocname,
\etocnumber, \etocpage.
- additional examples in the documentation.
+ Additional examples in the documentation.
v1.07 [2013/01/29]>
- new commands:
+ New commands:
\etocthename, \etocthenumber, \etocthe~-page, \etoclink,
@@ -9255,16 +9267,16 @@ v1.07 [2013/01/29]>
\etocnopar, \etocaftercontentshook
- modified command: \etocmulticolstyle
+ Modified command: \etocmulticolstyle
- new documentation section ``Surprising uses of etoc'' which
+ New documentation section ``Surprising uses of etoc'' which
explains how to do ``Lists of arbitrary things'', in
addition to the tables of contents.
v1.06 [2012/12/07]>
- the standard macros \l@section etc... are modified only
+ The standard macros \l@section etc... are modified only
during the calls to \tableofcontents; they can thus be
customized as will by the user (with the help of a
package like tocloft) and this will be taken into account
@@ -9276,13 +9288,13 @@ v1.05 [2012/12/01]>
\localtableofcontents replaces \tableofcontents~lowast (for
compatibility with the memoir class).
- compatibility with KOMA-script and memoir document
+ Compatibility with KOMA-script and memoir document
classes.
v1.04 [2012/11/24]>
- a (possibly local) table of contents can be labeled:
+ A (possibly local) table of contents can be labeled:
\tableofcontents \label{toc:1}
@@ -9294,7 +9306,7 @@ v1.04 [2012/11/24]>
v1.02 [2012/11/18]>
- initial version.
+ Initial version.
\end{jfverbatim}
\end{multicols}
@@ -9591,7 +9603,18 @@ v1.02 [2012/11/18]>
\long\def\Etoc@gobblesixorfive#1#2#3#4#5{}}%
}
% \end{macrocode}
-% placeholder for comments
+% Heart of \etoc hack into execution of |.toc| file. It MUST be the case that
+% the file contains |\contentsline {<unit>}...| instructions, with the
+% standard meaning of executing |\l@unit| (perhaps \etoc should not rely on
+% the fact that the |\contentsline| things have their standard meaning). It is
+% the various |\l@unit|'s which are (locally) |\let| to |\Etoc@lxyz| and it is
+% |\Etoc@lxyz| which does the parsing of the arguments in order to extract
+% name, number and page number. Once they are obtained, via the execution of
+% this indirectly hacked |\contentsline|, the code executes the |\Etoc@prefix|
+% and |\Etoc@contents| corresponding to that unit level, according to the user
+% |\etocsetstyle| declarations. Before that the begin part is executed when
+% first encountering that level and the end part will be executed when hitting
+% a more important level.
% \begin{macrocode}
\def\Etoc@swa#1{%
\Etoc@et@hop
@@ -9603,7 +9626,10 @@ v1.02 [2012/11/18]>
{\Etoc@contents}}
\let\etocskipfirstprefix\@thirdofthree
% \end{macrocode}
-% placeholder for comments
+% The |\Etoc@next| at the end does the "begin" part of the corresponding
+% style. The temporary macro |\Etoc@tmp| is used here, it can safely be used
+% also in |\Etoc@lxyz| as it is executed only later, during expansion of
+% |\contentsline|.
% \begin{macrocode}
\def\Etoc@etoccontentsline#1{%
\global\expandafter\let\expandafter\Etoc@tmp\csname Etoc@#1@@\endcsname
@@ -9764,13 +9790,19 @@ v1.02 [2012/11/18]>
% |1.07k| corrects a bug here with an extra space before |##1| in
% |\@namedef{etoclink } ##1|. In 99.99\% of use cases however, the
% macro gets redefined at a later stage, thus the bug did not show.
+%
+% |1.07n| replaces use of |\toks@| by macro |\Etoc@tmp|. Thus, the user has
+% the (not so recommended) possibility to use |\toks@| in the styles, even to
+% store information whose scope extends beyond the execution of each
+% |\contentsline|.
% \begin{macrocode}
\def\Etoc@getthepage@hyp #1#2#3#4#5\etoc@ {%
\@namedef{etoclink }##1{\leavevmode #1{#2}{#3}{##1}#5}%
\edef\etocthelink ##1{\noexpand\hyperlink {#3}{##1}}%
\def\etocthepage {#4}%
- \toks@ {#4}%
- \edef\etocthelinkedpage {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedpage\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{#4}}%
}
%
\def\Etoc@getnb #1{%
@@ -9811,21 +9843,23 @@ v1.02 [2012/11/18]>
\fi
}
% \end{macrocode}
-% placeholder for comments
+% |1.07n| replaces use of |\toks@| by macro |\Etoc@tmp|.
% \begin{macrocode}
\def\Etoc@getnb@hyp #1#2#3#4#5#6\etoc@ {%
\def\Etoc@getname ##1\relax\relax\etoc@ {%
\@namedef {etocname }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthename {##1}%
- \toks@ {##1}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
}%
\def\Etoc@getnbr ##1##2##3\etoc@ {%
\ifx ##1\numberline
\@namedef {etocnumber }{\leavevmode #1{#2}{#3}{##2}#5}%
\def\etocthenumber {##2}%
- \toks@ {##2}%
- \edef\etocthelinkednumber {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkednumber\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##2}}%
\Etoc@numbertrue
\Etoc@getname ##3\etoc@
\else
@@ -9834,8 +9868,9 @@ v1.02 [2012/11/18]>
\let\etocthelinkednumber \@empty
\Etoc@numberfalse
\def\etocthename {#4}%
- \toks@ {#4}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{#4}}%
\fi
}%
\@namedef {etoclink }##1{\leavevmode #1{#2}{#3}{##1}#5}%
@@ -9860,21 +9895,23 @@ v1.02 [2012/11/18]>
\fi
}
% \end{macrocode}
-% placeholder for comments
+% |1.07n| replaces use of |\toks@| by macro |\Etoc@tmp|.
% \begin{macrocode}
\def\Etoc@getit@hyp #1#2#3#4#5#6\etoc@ {%
\def\Etoc@getname ##1\hspace\relax\etoc@ {%
\@namedef {etocname }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthename {##1}%
- \toks@ {##1}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
}%
\def\Etoc@getnbr ##1\hspace##2##3\etoc@ {%
\ifx\relax##2\else
\@namedef {etocnumber }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthenumber {##1}%
- \toks@ {##1}%
- \edef\etocthelinkednumber {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkednumber\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
\Etoc@numbertrue
\Etoc@getname ##3\etoc@
\fi
@@ -10943,7 +10980,7 @@ v1.02 [2012/11/18]>
Grave accent \` Left brace \{ Vertical bar \|
Right brace \} Tilde \~}
-\CheckSum{2979}
+\CheckSum{2997}
\csname check@checksum\endcsname
\Finale
diff --git a/Master/texmf-dist/source/latex/etoc/etoc.ins b/Master/texmf-dist/source/latex/etoc/etoc.ins
index facd9d885b1..96ed9f4aaf4 100644
--- a/Master/texmf-dist/source/latex/etoc/etoc.ins
+++ b/Master/texmf-dist/source/latex/etoc/etoc.ins
@@ -1,14 +1,14 @@
%%
%% Package: etoc
-%% Version: 1.07m (2015/01/23)
+%% Version: 1.07n (2015/03/05)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
%% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
%% and collaborators for the translation into German of the documentation
%%
-\def\etocpkgdate {2015/01/23}
-\def\etocdocdate {2015/01/23}
-\def\etocpkgversion {v1.07m}
+\def\etocpkgdate {2015/03/05}
+\def\etocdocdate {2015/03/05}
+\def\etocpkgversion {v1.07n}
\def\etocpkgdescription {Completely customisable TOCs (jfB)}
%% Run tex on this file to extract from etoc.dtx:
%% etoc.sty, etoc.tex, etoc-DE.tex
diff --git a/Master/texmf-dist/tex/latex/etoc/etoc.sty b/Master/texmf-dist/tex/latex/etoc/etoc.sty
index ee4347bfd00..22acc4278c8 100644
--- a/Master/texmf-dist/tex/latex/etoc/etoc.sty
+++ b/Master/texmf-dist/tex/latex/etoc/etoc.sty
@@ -23,10 +23,10 @@
%%
\NeedsTeXFormat{LaTeX2e}
\ProvidesPackage{etoc}
- [2015/01/23 v1.07m Completely customisable TOCs (jfB)]
+ [2015/03/05 v1.07n Completely customisable TOCs (jfB)]
%%
%% Package: etoc
-%% Version: 1.07m (2015/01/23)
+%% Version: 1.07n (2015/03/05)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol <jfbu at free dot fr>
%% Copyright (C) 2014-2015 Christine Roemer <Christine_Roemer at t-online dot de>
@@ -329,8 +329,9 @@
\@namedef{etoclink }##1{\leavevmode #1{#2}{#3}{##1}#5}%
\edef\etocthelink ##1{\noexpand\hyperlink {#3}{##1}}%
\def\etocthepage {#4}%
- \toks@ {#4}%
- \edef\etocthelinkedpage {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedpage\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{#4}}%
}
\def\Etoc@getnb #1{%
\let\Etoc@next\Etoc@getnb@nohyp
@@ -369,15 +370,17 @@
\def\Etoc@getname ##1\relax\relax\etoc@ {%
\@namedef {etocname }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthename {##1}%
- \toks@ {##1}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
}%
\def\Etoc@getnbr ##1##2##3\etoc@ {%
\ifx ##1\numberline
\@namedef {etocnumber }{\leavevmode #1{#2}{#3}{##2}#5}%
\def\etocthenumber {##2}%
- \toks@ {##2}%
- \edef\etocthelinkednumber {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkednumber\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##2}}%
\Etoc@numbertrue
\Etoc@getname ##3\etoc@
\else
@@ -386,8 +389,9 @@
\let\etocthelinkednumber \@empty
\Etoc@numberfalse
\def\etocthename {#4}%
- \toks@ {#4}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{#4}}%
\fi
}%
\@namedef {etoclink }##1{\leavevmode #1{#2}{#3}{##1}#5}%
@@ -412,15 +416,17 @@
\def\Etoc@getname ##1\hspace\relax\etoc@ {%
\@namedef {etocname }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthename {##1}%
- \toks@ {##1}%
- \edef\etocthelinkedname {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkedname\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
}%
\def\Etoc@getnbr ##1\hspace##2##3\etoc@ {%
\ifx\relax##2\else
\@namedef {etocnumber }{\leavevmode #1{#2}{#3}{##1}#5}%
\def\etocthenumber {##1}%
- \toks@ {##1}%
- \edef\etocthelinkednumber {\noexpand\hyperlink {#3}{\the\toks@}}%
+ \edef\Etoc@tmp {{#3}}%
+ \expandafter\def\expandafter\etocthelinkednumber\expandafter
+ {\expandafter\hyperlink \Etoc@tmp{##1}}%
\Etoc@numbertrue
\Etoc@getname ##3\etoc@
\fi