summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/etoc
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2015-11-12 22:17:40 +0000
committerKarl Berry <karl@freefriends.org>2015-11-12 22:17:40 +0000
commit7afb014366b9e4980eba804bcdba1dd30d3a3e9e (patch)
tree257eb579d4181a49c26afddbe6611b50e1fd902d /Master/texmf-dist/source/latex/etoc
parent31d980cd523570aec67a173fcddcd6d8bcf7764b (diff)
etoc (12nov15)
git-svn-id: svn://tug.org/texlive/trunk@38831 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/etoc')
-rw-r--r--Master/texmf-dist/source/latex/etoc/etoc.dtx205
-rw-r--r--Master/texmf-dist/source/latex/etoc/etoc.ins4
2 files changed, 137 insertions, 72 deletions
diff --git a/Master/texmf-dist/source/latex/etoc/etoc.dtx b/Master/texmf-dist/source/latex/etoc/etoc.dtx
index 97e5ef0987d..eeecf1a0c0c 100644
--- a/Master/texmf-dist/source/latex/etoc/etoc.dtx
+++ b/Master/texmf-dist/source/latex/etoc/etoc.dtx
@@ -1,13 +1,13 @@
% -*- coding: utf-8; -*-
%<*none>
-{\def\doctimestamp {Time-stamp: <29-08-2015 12:09:59 CEST>}%
+{\def\doctimestamp {Time-stamp: <12-11-2015 15:44:31 CET>}%
\def\getdtxtimestamp #1 <#2 #3 #4>{#2 at #3 #4}%
\xdef\etocdtxtimestamp {\expandafter\getdtxtimestamp\doctimestamp }}%
%</none>
%<*!readme>
%%
%% Package: etoc
-%% Version: 1.08g (2015/08/29)
+%% Version: 1.08g (2015/08/29 -- doc 2015/11/12)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol
%% <jfbu at free dot fr>
@@ -18,16 +18,16 @@
%</!readme>
%<*insfile>
\def\etocpkgdate {2015/08/29}
-\def\etocdocdate {2015/08/29}
+\def\etocdocdate {2015/11/12}
\def\etocpkgversion {v1.08g}
\def\etocpkgdescription {Completely customisable TOCs (jfB)}
%</insfile>
%<*none>
% Now the date and version which are specific to the German translation.
% Replace \let by suitable \def's in case this lags behing English version.
-\let\etocDEpkgdate \etocpkgdate %
-\let\etocDEdocdate \etocdocdate %
-\let\etocDEpkgversion\etocpkgversion %
+\let\etocDEpkgdate \etocpkgdate
+\def\etocDEdocdate {2015/08/29}
+\let\etocDEpkgversion\etocpkgversion
% Definition of \etocLicense
% --------------------------
\begingroup
@@ -36,7 +36,7 @@
\catcode32=13\catcode`\\=12^^Brelax^^A
^^Bfirstofone{^^Bendgroup^^Bdef^^BetocLicense^^A
{% Package: etoc
-% Version: 1.08g (2015/08/29)
+% Version: 1.08g (2015/08/29 -- doc 2015/11/12)
% 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>
@@ -71,7 +71,7 @@
%<*readme>
<!-- -->
- Source: etoc.dtx (v1.08g 2015/08/29)
+ Source: etoc.dtx (v1.08g 2015/08/29 -- doc 2015/11/12)
Author: Jean-Francois Burnol
Author: Christine Roemer et al. (German tranlation)
Info: Completely customisable TOCs
@@ -681,6 +681,9 @@ Jena). My grateful thanks to all!
% et pourtant tailles sont ok, donc au moins cette information est
% maintenue je ne sais donc pas exactement ce qui se passe.
+% (2015/11/12: je soupçonne presque un bug de conception de NFSS mais je n'ai
+% jamais eu ni le temps ni l'envie de regarder de plus près)
+
\DeclareFontFamily{T1}{txtt}{\hyphenchar\font 45\relax}
\DeclareFontShape{T1}{txtt}{m}{n}{ %medium
<->s*[.96] t1xtt%
@@ -1299,8 +1302,12 @@ etoc-framed-mp-hook
nodes={concept},
concept color=orange!60,
root concept/.append style={font=\huge, text width = 6cm},
- % level 1/.append style={level distance=7cm, sibling angle=360/9},% 9 hard-coded mais je pourrais aussi le calculer
- level 1/.append style={level distance=6cm, sibling angle=360/9},% 9 hard-coded mais je pourrais aussi le calculer
+ % level 1/.append style={level distance=7cm, sibling
+ % angle=360/9},% 9 hard-coded mais je pourrais aussi le
+ % calculer
+% je passe de 6 à 7cm pour doc du 2015/12/11, mais je dois aussi écarter un
+% peu level2
+ level 1/.append style={level distance=7cm, sibling angle=360/9},% 9 hard-coded mais je pourrais aussi le calculer
level 1 concept/.append style={font=\Large, text width =
3cm},
% ancienne version circulaire
@@ -1308,7 +1315,7 @@ etoc-framed-mp-hook
% % distance par rapport au CENTRE ! (avec le code tel qu'en ce moment)
% 39 hard coded mais je pourrais aussi le calculer
% pour version rectangulaire, par tâtonnements:
- level 2/.append style={level width=20cm,level height=30cm, sibling distance=2.57cm},
+ level 2/.append style={level width=21cm,level height=30cm, sibling distance=2.57cm},
]
\the\treetok
\end{tikzpicture}}\endgroup }
@@ -4726,6 +4733,7 @@ mode before typesetting the TOC title and contents.
\label{etocbeforetitlehook}
\label{etocaftertitlehook}
\label{etocaftercontentshook}
+\label{etocaftertochook}
\label{etocmemoirtoctotocfmt}
The \toc, \localtoc, \csa{etocmulticol}, and all their cousins and
@@ -4764,9 +4772,10 @@ generally speaking a hook macro called
starred variants of the displaying commands. Except for the
|memoir| class, this hook is initially defined to do nothing.
-There is \csb{etocaftercontentshook}, similarly defined to do
-nothing. And \csb{etocbeforetitlehook} is also initially defined to do
-nothing. They can be used for some special effects.
+There are also (independently of the document class)
+\csb{etocaftercontentshook}, \csb{etocbeforetitlehook} and
+\csb{etocaftertochook} which are initially defined to do nothing and can be
+used for some special effects.
\section{Table of contents for this part}
@@ -5880,7 +5889,8 @@ Note: rather than |\toks| registers it would be easier here to use \eTeX{}
\part{\etoc and the outside world}
\section{Compatibility with other packages}
-\label{etocaftertochook}
+
+\subsection{Generalities}
The contents of the |.toc| file (if it already exists) are read into memory by
\etoc once, at the time of |\begin{document}|.\footnote{New with |1.07m|.
@@ -5888,33 +5898,94 @@ The contents of the |.toc| file (if it already exists) are read into memory by
\csa{usepackage\{etoc\}}. Thanks to Denis Bitouzé who signaled a Babel
related problem, which turned out to be caused by this.}
-\begin{framed}
- One should load \etoc \emph{after} \texttt{babel}. This is in order for
- |babel|'s shorthands to be active at the time when \etoc loads the |.toc|
- file.
-\end{framed}
-
The |.toc| file remains available
to other packages for read operations until the location of the first table
of contents at which time a write stream is opened by \etoc and from that
point the file is erased until its contents are again written to the disk by
\LaTeX{} at the end of the compilation.
-\etoc loads the package |multicol|.
+Don't use |\if<condition> stuff \tableofcontents\fi|, but:
+\centeredline{|\if<condition> stuff \expandafter\tableofcontents\fi|}
+Also a |\else| immediately following \csa{tableofcontents} or
+\csa{localtableofcontents} requires a previous \csa{expandafter}.
+
+
+\etoc can not really cohabit with packages modifying the \csa{tableofcontents}
+ command: some sort of truce can be achieved if \etoc is loaded last, hence is
+ the winner.
+
+\begin{framed}
+ Do not modify the |\tableofcontents| command like this:
+ \centeredline{|\let\oldtableofcontents\tableofcontents|}
+ \centeredline{|\renewcommand\tableofcontents{\oldtableofcontents foo}|}
+ as this will make the |\label/\ref| mechanism impossible.
+
+ Rather use \centeredline{|\renewcommand\etocaftertochook{foo}|} and there
+ is also \csb{etocaftercontentshook} which is executed a bit
+ earlier\footnotemark{} just before the closing part of the toc display
+ style (and thus still within a group.)
+
+ Prepending is less of a problem (and anyhow there is also
+ \csa{etocbeforetitlehook} available to the user).
+
+ Under certain circumstances \etoc imposes its views on
+ \csa{tableofcontents} at the time of |\begin{document}|. You may thus have
+ to use \csa{AtBeginDocument} to delay your (necessarily ugly and
+ non-recommendable) patches. Patching after |\begin{document}| is
+ naturally possible but I feel almost a rebel to mention this to \LaTeX{} users!
+\end{framed}
+\footnotetext{contrarily to \csa{etocaftertochook},
+ \csa{etocaftercontentshook} is not executed if the |tocdepth| did not
+ allow the printing of the TOC.}
+
+\etoc \textbf{requires} the |.toc| file to use the \csa{contentsline}
+ macro. It \textbf{can not} work if there is no |.toc| file or if the
+ |.toc| file does not contain the relevant data or if the |.toc| file does
+ not use the \csa{contentsline} macro or if the \csa{contentsline} macro
+ does not invoke the \csa{l@<divisionunit>} macros.
+
+\subsection{Compatibility with \texttt{beamer}}
+
+For the very reasons mentioned right before, \etoc is incompatible with the
+|beamer| class. However, if |beamer| is used in an article mode, i.e., with
+the article class in conjunction with the |beamerarticle| package, then \etoc
+should work.
+
+\subsection{Compatibility with \texttt{Babel}}
+
+\begin{framed}
+ One must load \etoc \emph{after} \texttt{babel}. This is in order for
+ |babel|'s shorthands to be active at the time when \etoc loads the |.toc|
+ file.
+\end{framed}
+
+\subsection{Compatibility with \texttt{hyperref}}
+
+Please inform the author in case of issues: \etoc was from the start designed
+to be |100%| compatible with package |hyperref|.
+
+The macros \csa{etocname}, \csa{etocnumber}, and \csa{etocpage} contain the
+|hyperref| links, if present (note that the \emph{linktoc=all} option of
+|hyperref| tells it to put a link also in the page number corresponding to a
+given toc entry). For example, the tables of contents of the present document
+are all fully linked. It doesn't matter whether \etoc or |hyperref| is loaded
+first.
+
+% \typeout{ICI}
+% \showhyphens{Compatibility}
+% [] \T1/txss/m/n/10.95 Com-pat-i-bil-ity
+
+% 2015/11/12
+% Pour une raison que j'ignore dans la TOC principale j'ai un problème avec
+% cette sous-section.
+
+\subsection{Com\-pat\-i\-bil\-ity with \texttt{multicol}}
-\etoc requires the |.toc| file to use the |\contentsline| macro (possibly
-patched by other packages). It is thus incompatible with the |beamer| class.
-However, if |beamer| is used in an article mode, i.e., with the article class
-in conjunction with the |beamerarticle| package, then \etoc should work.
+\etoc loads the package |multicol|.
-\etoc is |hyperref| aware and hopefully |hyperref| compatible: the macros
-\csa{etocname}, \csa{etocnumber}, and \csa{etocpage} contain the |hyperref|
-links, if present (note that the \emph{linktoc=all} option of |hyperref| tells
-it to put a link also in the page number corresponding to a given toc entry).
-For example, the tables of contents of the present document are all fully
-linked. It doesn't matter whether \etoc or |hyperref| is loaded first.
+\subsection{Compatibility with \texttt{tocloft}}
-Release |1.07k| adds compatibility with package
+Release |1.07k| added compatibility with package
|tocloft|:\footnote{\url{http://ctan.org/pkg/tocloft}} steps are
taken to prevent the redefinition of |\tableofcontents| done by
|tocloft| at |\begin{document}|.
@@ -5932,9 +6003,18 @@ not possible.
\begin{framed}
One should load \etoc \emph{after} \texttt{tocloft}. A warning is
- issued if otherwise.
+ issued if otherwise, because if \etoc is loaded before it will realize that at
+ the time of |\begin{document}| and trick \texttt{tocloft} into believing
+ having been loaded with the |titles| option.
\end{framed}
+It is possible to customize (using package |tocloft| for
+example) throughout the document the macros \csa{l@section},
+\csa{l@subsection} ... and the effect will be seen in the next
+table of contents typeset by \etoc in compatibility mode.
+
+\subsection{Compatibility with the \texttt{memoir} class}
+
Release |1.07l| has also improved the compatibility with the |memoir| class: its
|appendix| level has been made known to \etoc. It is at the same level as
|chapter|, thus the chapter line style should possibly do a test for some user
@@ -5942,25 +6022,7 @@ defined boolean whose activation may be added to the |.toc| file at the suitable
location via |\addtocontents{toc}{..}|, if one needs to distinguish the two
kinds of divisions.
-\etoc can not really cohabit with packages modifying the \csa{tableofcontents}
- command: some sort of truce can be achieved if \etoc is loaded last, hence is
- the winner.
-
- \begin{framed}
- Do not modify the |\tableofcontents| command like this:
- \centeredline{|\let\oldtableofcontents\tableofcontents|}
- \centeredline{|\renewcommand\tableofcontents{\oldtableofcontents\mystuff}|}
- as this will make the |\label/\ref| mechanism impossible. Rather you may do
- \centeredline{|\renewcommand\etocaftertochook{\mystuff}|} and there is
- also \csb{etocaftercontentshook} which is executed a bit
- earlier\footnotemark{}
- just before
- the
- closing part of the toc display style (and thus still within a group.)
- \end{framed}
-\footnotetext{contrarily to \csa{etocaftertochook},
- \csa{etocaftercontentshook} is not executed if the |tocdepth| did not
- allow the printing of the TOC.}
+\subsection{Compatibility with package \texttt{tocvsec2}}
\etoc used to be incompatible with package
|tocvsec2|\footnote{\url{http://ctan.org/pkg/tocvsec2}}; it now cohabits, sort
@@ -5970,15 +6032,7 @@ kinds of divisions.
the way, at least two latex runs are necessary for new uses of this command in
a document to have an effect in tables of contents.
-When a \localtoc is inserted by the user in the document, a
-line containing an \etoc inner command and an identification
-number is added to the |.toc| file. The correct local table of
-contents will be displayed only on the next |latex| run.
-
-It is possible to customize (using package |tocloft| for
-example) throughout the document the macros \csa{l@section},
-\csa{l@subsection} ... and the effect will be seen in the next
-table of contents typeset by \etoc in compatibility mode.
+\subsection{Compatibility with package \texttt{tableof}}
It is possible to use simultaneously \etoc and
{\color{niceone}|tableof|}\footnote{\url{http://ctan.org/pkg/tableof}}. Release
@@ -5994,6 +6048,11 @@ documentation they do not typeset a TOC title. They should \emph{not} be used
in case \csb{etocglobaldefs} was issued before, except if its scope has been
terminated since then, or \csb{etoclocaldefs} has cancelled its influence.
+\subsection{Compatibility with package \texttt{tocstyle}}
+
+Unknown. (not tested a.t.t.o.w).
+
+
\section{\TeX nical matters}
The \csb{etocname}, \csb{etocnumber}, \csb{etocpage} commands are protected
@@ -6012,6 +6071,11 @@ The commands such as \csb{etocsetstyle}, \csb{etocsetlevel},
\csb{etocruledstyle}, \csb{etocframedstyle} obey \LaTeX{}'s
groups. All TOCs are typeset inside groups.
+When a \localtoc is inserted by the user in the document, a
+line containing an \etoc inner command and an identification
+number is added to the |.toc| file. The correct local table of
+contents will be displayed only on the next |latex| run.
+
\section{Errors and catastrophes}
After using \csa{etocsetstyle} for one level, the remaining
@@ -6124,10 +6188,12 @@ version is \texttt{\etocpkgversion}, of \texttt{\etocpkgdate}.
nodes={concept},
concept color=orange!60,
root concept/.append style={font=\huge, text width = 6cm},
- level 1/.append style={level distance=6cm, sibling angle=360/9},
+% geändert 2015/11/12 6cm->7cm
+ level 1/.append style={level distance=7cm, sibling angle=360/9},
level 1 concept/.append style={font=\Large, text width =
3cm},
- level 2/.append style={level width=20cm,level height=30cm, sibling distance=2.57cm},
+% geändert 2015/11/12 20cm->21cm
+ level 2/.append style={level width=21cm,level height=30cm, sibling distance=2.57cm},
]
\the\treetok
\end{tikzpicture}}\endgroup }
@@ -6644,7 +6710,7 @@ Der Code:
\endgroup
\end{verbatim}
-\clearpage % ATTENTION 28 mars 2015
+% \clearpage % ATTENTION 28 mars 2015
\section{Verlinkte Liste der Hauptbefehle}
% 16 octobre
@@ -9497,6 +9563,7 @@ seinen Varianten zuerst ein |\par| erstellt.
\label{etocbeforetitlehook}
\label{etocaftertitlehook}
\label{etocaftercontentshook}
+\label{etocaftertochook}
\label{etocmemoirtoctotocfmt}
Die Befehle \toc, \localtoc, \csa{etocmulticol} und all ihre Cousins und
@@ -9533,10 +9600,9 @@ Hook"=Makro namens \csb{etocaftertitlehook}, welches man unterdrückt, indem man
die Stern"=Varianten der Darstellungsbefehle nutzt. Außer für die |memoir|-Klasse
ist dieser Hook dazu gedacht, überhaupt nichts zu tun.
-Außerdem gibt es noch \csb{etocaftercontentshook}, ähnlich definiert, um
-nichts zu tun. Es gibt auch \csb{etocbeforetitlehook}: es ist definiert
-um nichts zu tun. Beide können für einige spezielle Effekte genutzt
-werden.
+Außerdem gibt es auch \csb{etocaftercontentshook}, \csb{etocbeforetitlehook}
+und \csb{etocaftertochook} all drei ähnlich definiert um nichts zu tun und die
+für einige spezielle Effekte genutzt werden können.
\section{Das In\-halts\-ver\-zeic\-hnis von die\-sem Teil}
@@ -10655,7 +10721,6 @@ zum Beispiel \autoref{sec:mindmap}.
\part{\etoc und die Außenwelt}
\section{Kompatibilität mit anderen Paketen}
-\label{etocaftertochook}
% JFBU modifiziert Januar 23, 2015
Die Inhalte der |.toc|-Datei (falls bereits vorhanden) werden einmal in den
diff --git a/Master/texmf-dist/source/latex/etoc/etoc.ins b/Master/texmf-dist/source/latex/etoc/etoc.ins
index 7b14942b050..76a0130f5c3 100644
--- a/Master/texmf-dist/source/latex/etoc/etoc.ins
+++ b/Master/texmf-dist/source/latex/etoc/etoc.ins
@@ -1,6 +1,6 @@
%%
%% Package: etoc
-%% Version: 1.08g (2015/08/29)
+%% Version: 1.08g (2015/08/29 -- doc 2015/11/12)
%% License: LPPL 1.3c or later (see etoc.dtx)
%% Copyright (C) 2012-2015 Jean-Francois Burnol
%% <jfbu at free dot fr>
@@ -9,7 +9,7 @@
%% and collaborators for the translation into German of the documentation
%%
\def\etocpkgdate {2015/08/29}
-\def\etocdocdate {2015/08/29}
+\def\etocdocdate {2015/11/12}
\def\etocpkgversion {v1.08g}
\def\etocpkgdescription {Completely customisable TOCs (jfB)}
%% Run etex on this file to extract from etoc.dtx: