summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/source/latex/tocdata
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2019-01-12 22:55:13 +0000
committerKarl Berry <karl@freefriends.org>2019-01-12 22:55:13 +0000
commit7d06555d716ec0133a2db80ab371fefcc09e0292 (patch)
treee9cb987dfae70853947798ab8a5503673314380b /Master/texmf-dist/source/latex/tocdata
parent7e6b6b413fa3a6c64ca752632bdbb55835b37e00 (diff)
tocdata (12jan19)
git-svn-id: svn://tug.org/texlive/trunk@49678 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/source/latex/tocdata')
-rw-r--r--Master/texmf-dist/source/latex/tocdata/tocdata.dtx463
-rw-r--r--Master/texmf-dist/source/latex/tocdata/tocdata.ins5
2 files changed, 211 insertions, 257 deletions
diff --git a/Master/texmf-dist/source/latex/tocdata/tocdata.dtx b/Master/texmf-dist/source/latex/tocdata/tocdata.dtx
index 9093086e20d..1033a28608c 100644
--- a/Master/texmf-dist/source/latex/tocdata/tocdata.dtx
+++ b/Master/texmf-dist/source/latex/tocdata/tocdata.dtx
@@ -1,6 +1,6 @@
% \iffalse meta-comment
%
-% Copyright 2016 Brian Dunn
+% Copyright 2016--2019 Brian Dunn
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
@@ -15,7 +15,7 @@
% \iffalse
%<package>\NeedsTeXFormat{LaTeX2e}[1999/12/01]
%<package>\ProvidesPackage{tocdata}
-%<package> [2016/12/02 v0.12 Adds author/artist to TOC entries.]
+%<package> [2019/01/12 v1.00 Adds author/artist to TOC entries.]
%
%<*driver>
\documentclass{ltxdoc}
@@ -25,15 +25,19 @@
\newcommand{\quicksummary}{%
Optionally prints author, artist, or other data on a line
-of the \acro{TOC}/\acro{LOF}.
+of the \acro{TOC}\Slash\acro{LOF}.
}
-\usepackage{lmodern}
+% \usepackage{lmodern}
+\usepackage{erewhon}
+\usepackage{roboto}
+\usepackage{inconsolata}
% \usepackage{libertine}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{textcomp} % provides \degree, \textquotesingle, \textmu
+\usepackage{textgreek}
\usepackage{newunicodechar}
\newunicodechar{ff}{ff}
@@ -56,11 +60,24 @@ of the \acro{TOC}/\acro{LOF}.
% \newunicodechar{†}{\dag}
\newunicodechar{‡}{\ddag}
+\usepackage{metalogo}
+\makeatletter
+\@ifpackageloaded{erewhon}{
+\setlogokern{Te}{-.08em}
+\setlogokern{eX}{-0.04em}
+\setlogokern{La}{-.25em}
+\setlogokern{aT}{-.08em}
+\setlogokern{Xe}{-.04em}
+\setlogokern{eL}{-.06em}
+\setlogodrop{0.27ex}
+}{}
+\makeatother
+
\usepackage{microtype}
-\usepackage[log-declarations=false]{xparse}
+\usepackage{etoolbox}
-\usepackage{xifthen}
+\usepackage[log-declarations=false]{xparse}
\usepackage[svgnames]{xcolor}
\definecolor{myurlcolor}{rgb}{0,0,.7}
@@ -68,12 +85,11 @@ of the \acro{TOC}/\acro{LOF}.
\definecolor{codecolor}{rgb}{0,.4,.2}
\definecolor{overviewcolor}{rgb}{0,.2,.4}
+\usepackage{dtxdescribe}
\usepackage{graphicx}
\graphicspath{{images/}}
-\usepackage{multicol}
-
\usepackage{enumitem}
\usepackage{array}
@@ -129,96 +145,20 @@ Keywords={LaTeX, tocdata, contents}%
\usepackage{cleveref}
-
-\newcommand{\lmacro}[1]{\textbackslash#1}
-\newcommand{\cmds}[1]{\texttt{#1}}
-\newcommand{\env}[1]{\texttt{#1}}
-\newcommand{\pkg}[1]{\textsf{\textbf{#1}}}
-\newcommand{\acro}[1]{\textsc{\lowercase{#1}}}
-
-
-
-% Indexing improvements:
-\makeatletter
-
-\newcommand*{\Desc@Type}[1]{\raggedleft{\scriptsize#1}\quad}
-
-% \Describe@Usage{name}{margin tag}{index tag}
-\newcommand*{\Describe@Usage}[3]{%
-% \@bsphack%
-\leavevmode\marginpar{\Desc@Type{#2}\texttt{#1}}%
-\index{#1\actualchar{\protect\ttfamily#1} (#3)\encapchar usage}%
-\index{#3s:\levelchar#1\actualchar{\protect\ttfamily#1}\encapchar usage}%
-% \@esphack%
-\ignorespaces%
-}
-
-% \Describe@CmdUsage{name}{margin tag}{index tag}
-% where name is a \macro
-\newcommand*{\Describe@CmdUsage}[3]{%
-% \@bsphack%
-\leavevmode\marginpar{\Desc@Type{#2}\cmd{#1}}%
-\SpecialIndex@{#1}{ (#3)\encapchar usage}%
-\index{#3s:\levelchar\cmd{#1}\encapchar usage}\ignorespaces%
-% \@esphack%
-\ignorespaces%
-}
-
-\newcommand*{\DescribeCommand}[1]{\Describe@Usage{#1}{Cmd}{command}}
-\newcommand*{\DescribeFile}[1]{\Describe@Usage{#1}{File}{file}}
-\newcommand*{\DescribePackage}[1]{\Describe@Usage{#1}{Pkg}{package}}
-\newcommand*{\DescribeOption}[1]{\Describe@Usage{#1}{Opt}{option}}
-\newcommand*{\DescribeArgument}[1]{\Describe@Usage{#1}{Arg}{argument}}
-\newcommand*{\DescribeBoolean}[1]{\Describe@Usage{#1}{Bool}{boolean}}
-\newcommand*{\DescribeLength}[1]{\Describe@CmdUsage{#1}{Len}{length}}
-\newcommand*{\DescribeCounter}[1]{\Describe@Usage{#1}{Ctr}{counter}}
-\newcommand*{\DescribeSimple}[1]{\leavevmode\marginpar{\raggedleft\texttt{#1}}\index{#1=\texttt{#1}}\ignorespaces}
-\renewcommand{\PrintEnvName}[1]{\strut \MacroFont {\scriptsize{}Env\quad}#1\ }
-\renewcommand{\PrintDescribeEnv}[1]{\strut \MacroFont {\scriptsize{}Env\quad}#1\ }
-
-\newcommand*{\DescribeKey}[1]{%
-\Describe@Usage{#1}{Key}{key}%
-}
-
-\makeatother
-
-
-\newcommand{\tikz}{Ti\textit{k}z}
-\newcommand{\htmlfive}{\acro{HTML}\oldstylenums{5}}
-\newcommand{\cssthree}{\acro{CSS}\oldstylenums{3}}
-
-\newcommand{\goesto}{$\Rightarrow$}
-
-\newenvironment{docsidebar}[1][]
-{\par\addvspace{1.5ex}%
-\hfill\minipage{.9\linewidth}
-\raggedright#1
-%\smallskip\hrule\medskip
-}
-{
-% \smallskip\hrule
-\endminipage\hspace*{\fill}\par\addvspace{1.5ex}}
-
-\makeatletter
-\newcommand{\watchout}[1][]{%
-\@bsphack%
-\marginpar{\hspace*{\fill}\includegraphics[height=3ex]{symbol_warning.pdf}
-\textcolor{DarkRed}{#1}}%
-\@esphack%
-}
-\makeatother
-
+% from dtxdescribe:
+\setlength{\marginparsep}{1em}
+\setlength{\marginparpush}{.7ex}
-\setlength{\marginparsep}{1em}
-\setlength{\marginparpush}{.7ex}
\setlength{\parindent}{0em}
\setlength{\parskip}{2ex}
\setlength{\IndexMin}{40ex}
+
\usepackage{\mypackagename}
+
\setcounter{IndexColumns}{2}
\setcounter{GlossaryColumns}{1}
@@ -253,6 +193,8 @@ Keywords={LaTeX, tocdata, contents}%
% \changes{v0.11}{2016/07/11}{\ 2016/07/11}
% \changes{v0.11}{2016/07/11}{Minor docs improvements in spelling, grammar, formatting.}
% \changes{v0.12}{2016/12/02}{\ 2016/12/02}
+% \changes{v1.00}{2019/01/12}{\ 2019/01/12}
+% \changes{v1.00}{2019/01/08}{Improved source formatting.}
@@ -269,13 +211,13 @@ Keywords={LaTeX, tocdata, contents}%
% \vfill
% ^^A \includegraphics[width=.3\linewidth]{\mypackagename_logo.pdf}
% \vfill
-% {\Huge The \textbf{\mypackagename} package}
+% {\Huge The \pkg{\mypackagename} package}
%
% \fileversion{} --- \filedate
%
% \bigskip
%
-% {\small\copyright{} 2016} Brian Dunn\\ \small \texttt{bd@BDTechConcepts.com}
+% {\small\textcopyright{} 2016--2019} Brian Dunn\\ \small \texttt{bd@BDTechConcepts.com}
%
% \vspace{.5in}
%
@@ -286,12 +228,13 @@ Keywords={LaTeX, tocdata, contents}%
% \vfill
%
% \begin{abstract}
-% Describes a method for adding information such as an author or artist to
-% each line of a table of contents or list of figures entry,
-% after the title and just before page number.
-% This is commonly done in the table of contents of an anthology, for example.
+% \noindent
+% The \pkg{tocdata} package adds information such as an author or artist to
+% an entry in the table of contents or list of figures,
+% on a single line along with the caption and page number.
+% This is commonly done in collections of literature, poetry, or art work.
%
-% Support is provided for the \pkg{titletoc} and \pkg{tocloft} packages.
+% Either the \pkg{titletoc} or \pkg{tocloft} package must be loaded before \pkg{tocdata}.
% \end{abstract}
%
% \vspace*{\fill}
@@ -399,7 +342,7 @@ Keywords={LaTeX, tocdata, contents}%
% into the table of contents, along with hooks for the \pkg{titletoc} and \pkg{tocloft} packages.
% \item The intermediate-level macro is \cs{tocdata}, which may be used to manually
% add a piece of data to a \cs{chapter}, \cs{section}, or \cs{caption}.
-% \cs{tocdatafont} is also provided to control the appearance of this data in the \acro{TOC}/\acro{LOF}.
+% \cs{tocdatafont} is also provided to control the appearance of this data in the \acro{TOC}\Slash\acro{LOF}.
% \item At the highest level is a sample implementation of user-level macros which provides
% an easy way to create chapters, sections, and figures with associated authors and artists,
% along with supplemental information for figures, and automatic index entries.
@@ -415,70 +358,60 @@ Keywords={LaTeX, tocdata, contents}%
% \pkg{tocdata} requires the use of either the \pkg{tocloft} or \pkg{titletoc} package.
%
% In the preamble, use:
-%
-%
-% \begin{docsidebar}
-% |\usepackage{tocloft}|
-%
-% |\usepackage{tocdata}|
-% \end{docsidebar}
-%
+% \begin{sourceverb}
+% \usepackage{tocloft}
+% \usepackage{tocdata}
+% \end{sourceverb}
% -\textit{or}-
-%
-% \begin{docsidebar}
-% |\usepackage{titletoc}|
-%
-% |\usepackage{tocdata}|
-% \end{docsidebar}
-%
-%
+% \begin{sourceverb}
+% \usepackage{titletoc}
+% \usepackage{tocdata}
+% \end{sourceverb}
%
% \begin{docsidebar}
% If using \pkg{titletoc}:
+% \watchout[\cs{dottedcontents}]
% Note that the user should not use the \cs{dottedcontents} macro, as this
% is not patched for use with \pkg{tocdata}. Use \cs{titlecontents} instead,
% inserting the \cs{TD@usetocdata} macro as shown below.
% \end{docsidebar}
-% \vspace{-6ex}\watchout[\cs{dottedcontents}]\vspace{6ex}
%
-% \subsubsection{Font control in the TOC/LOF}
+% \subsubsection{Font control in the \acro{TOC}\Slash\acro{LOF}}
%
% To control the font used for the author on the table-of-contents line,
% the default is:
-%
-% \begin{docsidebar}
-% |\newcommand{\tocdatafont}[1]{{\normalfont\textit{\small#1}}}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \newcommand{\tocdatafont}[1]{{\normalfont\textit{\small#1}}}
+% \end{sourceverb}
%
% You may change to other font options, such as:
-%
-% \begin{docsidebar}
-% |\renewcommand{\tocdatafont}[1]{\normalfont\textsc{\footnotesize#1}}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \renewcommand{\tocdatafont}[1]{\normalfont\textsc{\footnotesize#1}}
+% \end{sourceverb}
%
%
% \subsection{Mid-level applications}
%
-% Should the user only wish to add a bit of text into the \acro{TOC}/\acro{LOF},
+% Should the user only wish to add a bit of text into the \acro{TOC}\Slash\acro{LOF},
% the \cs{tocdata} macro may be used just before the sectioning or caption command,
% as shown next.
%
-% \subsubsection{Adding TOC data per section}
+% \subsubsection{Adding \acro{TOC} data per section}
% Before each \cs{chapter} or \cs{section} which is to have an author or other data:
%
-% \begin{docsidebar}
-% |\tocdata{toc}{Author's Name}| \\
-% |\chapter{Chapter Title}| \quad -\textit{or}- \quad |\section{Section Title}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \tocdata{toc}{Author's Name}
+% \chapter{Chapter Title} -or- \section{Section Title}
+% \end{sourceverb}
%
%
-% \subsubsection{Adding LOF data per figure}
+% \subsubsection{Adding \acro{LOF} data per figure}
% Before each \cs{caption} which is to have an artist:
%
-% \begin{docsidebar}
-% |\tocdata{lof}{Artist's Name}| \\
-% |\caption{Figure Title}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \tocdata{lof}{Artist's Name}
+% \caption{Figure Title}
+% \end{sourceverb}
%
% You may wish to print the artist's name in the figure as well.
%
@@ -493,7 +426,7 @@ Keywords={LaTeX, tocdata, contents}%
% and also add the names to the index.
% An optional prefix and suffix may be attached to the names (as in Figure \ref{fig:astronometer}),
% and these will be printed at the section heading or caption, but not
-% in the \acro{TOC}/\acro{LOF} or in the index.
+% in the \acro{TOC}\Slash\acro{LOF} or in the index.
%
% These macros may be ignored or modified as needed.
%
@@ -503,37 +436,34 @@ Keywords={LaTeX, tocdata, contents}%
% To use these macros, do not use \cs{tocdata} as shown above, but instead use,
% in the place of \cs{chapter}:
%
-% \begin{docsidebar}
-% |\chapterauthor[TOC entry]{Title}[Prefix]{First}{Last}[Suffix]|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \chapterauthor[\TOC\ entry]{Title}[Prefix]{First}{Last}[Suffix]
+% \end{sourceverb}
%
% \DescribeMacro{\sectionauthor}
% or, in the place of \cs{section}:
%
-% \begin{docsidebar}
-% |\sectionauthor[TOC entry]{Title}[Prefix]{First}{Last}[Suffix]|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \sectionauthor[\TOC\ entry]{Title}[Prefix]{First}{Last}[Suffix]
+% \end{sourceverb}
%
% \subsubsection{Figure captions with artist names and add'l text}
%
% \DescribeMacro{\captionartist}
% For figures, in the place of \cs{caption}:
%
-% \begin{docsidebar}
-% |\captionartist[LOF entry]{Title}[Text][Prefix]{First}{Last}[Suffix]|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \captionartist[\LOF\ entry]{Title}[Text][Prefix]{First}{Last}[Suffix]
+% \end{sourceverb}
%
% If you are using the optional prefix, the optional text must also be given, even if it
% is empty. For example, use:
% \watchout[Optional arguments]
-% \begin{docsidebar}
-% |\captionartist{Title}|\textcolor{red}{|[]|}|[Sir]{Isaac}{Newton}|
-%
-% \medskip
-%
-% \footnotesize (If only one optional argument is given before the first name, it will be
-% interpreted as the optional text, not as the optional prefix.)
-% \end{docsidebar}
+% \begin{sourceverb}
+% \captionartist{Title}|\textcolor{red}{|[]|}|[Sir]{Isaac}{Newton}
+% \end{sourceverb}
+% If only one optional argument is given before the first name, it will be
+% interpreted as the optional text, not as the optional prefix.
%
% \DescribeMacro{\captionartist*}
% If you are using the \pkg{caption} package or another package which
@@ -553,7 +483,8 @@ Keywords={LaTeX, tocdata, contents}%
% \DescribeMacro{\tocdatasecprint}
% To change the formatting of the author names printed after
% each chapter or section, or to remove them entirely, use
-% these macros, as described in section \ref{sec:usermacros} on page \pageref{sec:usermacros}:
+% these macros, as described in section~\ref{sec:usermacros}
+% on page~\pageref{sec:usermacros}.
%
%
% \DescribeMacro{\tocdatafigprint}
@@ -589,7 +520,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{figure}[hbp]
% \centering
% \setlength{\fboxsep}{2ex}
-% {\fontsize{100}{120}\selectfont$\Omega$}
+% {\fontsize{35}{50}\selectfont\textOmega}
% \captionartist{Omega --- The End}{Greek}{Alphabet}
% \end{figure}
%}
@@ -629,14 +560,35 @@ Keywords={LaTeX, tocdata, contents}%
% \subsection{Requirements}
%
% \changes{v0.12}{2016/12/02}{Added requirement for \pkg{xifthen}.}
+% \changes{v1.00}{2019/01/08}{Remove \pkg{xifthen} dependency.}
%
% \begin{macrocode}
\RequirePackage{xparse}
\RequirePackage{etoolbox}
-\RequirePackage{xifthen}
+% \end{macrocode}
+
+% Test for either \pkg{titletoc} or \pkg{tocloft}.
+% \changes{v1.00}{2019/01/09}{Test for \pkg{titletoc} or \pkg{tocloft}.}
+% \begin{macrocode}
+\@ifpackageloaded{titletoc}{
+ \@ifpackageloaded{tocloft}{
+ \PackageError{tocdata}
+ {Both titletoc and tocloft are being used. Load only one}
+ {The tocdata package requires either one of titletoc or tocloft.}
+ }{}
+}{% Not titletoc.
+ \@ifpackageloaded{tocloft}{}{
+ \PackageError{tocdata}
+ {
+ The tocdata package requires either the tocloft or titletoc package%
+ }
+ {Load either, then load tocdata next.}
+ }
+}
% \end{macrocode}
+
% \subsection{\pkg{tocdata} code}
% \begin{macro}{\TD@thistocdata}
% Storage for the data to be added to the end of the \acro{TOC} entry:
@@ -657,7 +609,7 @@ Keywords={LaTeX, tocdata, contents}%
% To be called by a higher-level macro to assign data to a |.toc| or |.lof| file:
% \begin{macrocode}
\newcommand{\tocdata}[2]{%
-\@bsphack\addtocontents{#1}{\protect\settocdata{#2}}\@esphack%
+ \@bsphack\addtocontents{#1}{\protect\settocdata{#2}}\@esphack%
}
% \end{macrocode}
% \end{macro}
@@ -684,8 +636,8 @@ Keywords={LaTeX, tocdata, contents}%
% Prints the data, then clears the storage so it is not printed again.
% \begin{macrocode}
\newcommand{\TD@usetocdata}{%
-\tocdatafont{\TD@thistocdata}%
-\global\def\TD@thistocdata{}%
+ \tocdatafont{\TD@thistocdata}%
+ \global\def\TD@thistocdata{}%
}
% \end{macrocode}
% \end{macro}
@@ -832,9 +784,9 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macrocode}
\newcommand{\TD@optionalname}[1]
{%
-\ifthenelse{\equal{#1}{}}%
-{}%
-{#1~}%
+ \ifblank{#1}%
+ {}%
+ {#1~}%
}
% \end{macrocode}
% \end{macro}
@@ -852,15 +804,15 @@ Keywords={LaTeX, tocdata, contents}%
{% only of chapters exists in this documentclass:
\newcommand{\tocdatachapprint}[4]
{%
-\newline\noindent{\normalfont\normalsize\textit{\hspace*{2em}--- %
-\TD@optionalname{#1}\TD@optionalname{#2}#3#4}}%
+ \newline\noindent{\normalfont\normalsize\textit{\hspace*{2em}--- %
+ \TD@optionalname{#1}\TD@optionalname{#2}#3#4}}%
}
}% end of chapters-only
% \end{macrocode}
% To remove the author's name, redefine this as a null function taking four arguments:
-% \begin{docsidebar}
-% |\renewcommand{\tocdatachapprint}[4]{}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \renewcommand{\tocdatachapprint}[4]{}
+% \end{sourceverb}
% \end{macro}
%
% \begin{macro}{\tocdatasecprint} \marg{prefix} \marg{first} \marg{last} \marg{suffix}
@@ -872,15 +824,15 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macrocode}
\newcommand{\tocdatasecprint}[4]
{%
-\newline\noindent{\normalfont\normalsize\textit{\hspace*{2em}--- %
-\TD@optionalname{#1}\TD@optionalname{#2}#3#4}%
+ \newline\noindent{\normalfont\normalsize\textit{\hspace*{2em}--- %
+ \TD@optionalname{#1}\TD@optionalname{#2}#3#4}%
}%
}
% \end{macrocode}
% To remove the author's name, redefine this as a null function taking four arguments:
-% \begin{docsidebar}
-% |\renewcommand{\tocdatasecprint}[4]{}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \renewcommand{\tocdatasecprint}[4]{}
+% \end{sourceverb}
% \end{macro}
%
%
@@ -894,21 +846,19 @@ Keywords={LaTeX, tocdata, contents}%
%
% \begin{macrocode}
\newcommand{\tocdatafigprint}[4]{%
-\addvspace{2ex}%
-% \addvspace{\medskipamount}%
-\begin{minipage}{\linewidth}%
-\TD@namealign%
-\footnotesize\textsc{{\TD@optionalname{#1}\TD@optionalname{#2}#3#4}}%
-\end{minipage}%
-\par%
-\addvspace{2ex}%
-% \addvspace{\medskipamount}%
+ \addvspace{2ex}%
+ \begin{minipage}{\linewidth}%
+ \TD@namealign%
+ \footnotesize\textsc{{\TD@optionalname{#1}\TD@optionalname{#2}#3#4}}%
+ \end{minipage}%
+ \par%
+ \addvspace{2ex}%
}
% \end{macrocode}
% To remove the artist's name, redefine this as a null function taking four arguments:
-% \begin{docsidebar}
-% |\renewcommand{\tocdatafigprint}[4]{}|
-% \end{docsidebar}
+% \begin{sourceverb}
+% \renewcommand{\tocdatafigprint}[4]{}
+% \end{sourceverb}
% \end{macro}
%
%
@@ -922,17 +872,16 @@ Keywords={LaTeX, tocdata, contents}%
%
% \begin{macrocode}
\newcommand{\tocdatafigtextprint}[1]{%
-\addvspace{2ex}%
-\begin{minipage}{\linewidth}%
-\TD@textalign%
-\footnotesize%
-\setlength{\parskip}{1.5ex}%
-\setlength{\parindent}{0em}%
-#1%
-\end{minipage}%
-\par%
-\addvspace{2ex}%
-% \addvspace{\medskipamount}%
+ \addvspace{2ex}%
+ \begin{minipage}{\linewidth}%
+ \TD@textalign%
+ \footnotesize%
+ \setlength{\parskip}{1.5ex}%
+ \setlength{\parindent}{0em}%
+ #1%
+ \end{minipage}%
+ \par%
+ \addvspace{2ex}%
}
% \end{macrocode}
% \end{macro}
@@ -941,8 +890,8 @@ Keywords={LaTeX, tocdata, contents}%
%
% \subsubsection{Chapters and sections}
%
-% \begin{macro}{\chapterauthor} * \oarg{2:TOC entry} \marg{3:title}
-% \oarg{4:prefix} \marg{5:first} \marg{6:last} \oarg{7:suffix}
+% \begin{macro}{\chapterauthor} * \oarg{2: \TOC\ entry} \marg{3: title}
+% \oarg{4: prefix} \marg{5: first} \marg{6: last} \oarg{7: suffix}
%
% \changes{v0.12}{2016/11/28}{Expands first name before index check.}
% \begin{macrocode}
@@ -954,34 +903,36 @@ Keywords={LaTeX, tocdata, contents}%
% The starred version does not create a \acro{TOC} entry,
% so it is used as-is:
% \begin{macrocode}
-\IfBooleanTF{#1}% star:
-{\chapter*{#3\tocdatachapprint{#4}{#5}{#6}{#7}}}%
+ \IfBooleanTF{#1}%
+ {% star:
+ \chapter*{#3\tocdatachapprint{#4}{#5}{#6}{#7}}%
+ }%
% \end{macrocode}
% The un-starred version appears in the \acro{TOC}, so add the author's name:
% \begin{macrocode}
-{% no star:
-\tocdata{toc}{#5 #6}%
+ {% no star:
+ \tocdata{toc}{#5 #6}%
% \end{macrocode}
% Create the chapter depending on the optional name:
% \begin{macrocode}
-\IfValueTF{#2}%
-{\chapter[#2]{#3\tocdatachapprint{#4}{#5}{#6}{#7}}}%
-{\chapter[#3]{#3\tocdatachapprint{#4}{#5}{#6}{#7}}}%
-}%
+ \IfValueTF{#2}%
+ {\chapter[#2]{#3\tocdatachapprint{#4}{#5}{#6}{#7}}}%
+ {\chapter[#3]{#3\tocdatachapprint{#4}{#5}{#6}{#7}}}%
+ }%
% \end{macrocode}
% Create an index entry depending on whether there is a first name:
% \begin{macrocode}
-\ifthenelse{\equal{#5}{}}%
-{\index{#6}}%
-{\index{#6, #5}}%
+ \ifblank{#5}%
+ {\index{#6}}%
+ {\index{#6, #5}}%
}% end of \chapterauthor
}% end of \@ifundefined{chapter}
% \end{macrocode}
% \end{macro}
-% \begin{macro}{\sectionauthor} * \oarg{2:TOC entry} \marg{3:title}
-% \oarg{4:prefix} \marg{5:first} \marg{6:last} \oarg{7:suffix}
+% \begin{macro}{\sectionauthor} * \oarg{2: \TOC\ entry} \marg{3: title}
+% \oarg{4: prefix} \marg{5: first} \marg{6: last} \oarg{7: suffix}
%
% \changes{v0.12}{2016/11/28}{Expands first name before index check.}
% \begin{macrocode}
@@ -990,26 +941,28 @@ Keywords={LaTeX, tocdata, contents}%
% The starred version does not create a \acro{TOC} entry,
% so it is simply used as-is:
% \begin{macrocode}
-\IfBooleanTF{#1}% star:
-{\section*{#3\tocdatasecprint{#4}{#5}{#6}{#7}}}%
+ \IfBooleanTF{#1}%
+ {% star:
+ \section*{#3\tocdatasecprint{#4}{#5}{#6}{#7}}%
+ }%
% \end{macrocode}
% The un-starred version appears in the \acro{TOC}, so add the author's name:
% \begin{macrocode}
-{% no star:
-\tocdata{toc}{#5 #6}%
+ {% no star:
+ \tocdata{toc}{#5 #6}%
% \end{macrocode}
% Create the section depending on the optional name:
% \begin{macrocode}
-\IfValueTF{#2}%
-{\section[#2]{#3\tocdatasecprint{#4}{#5}{#6}{#7}}}%
-{\section[#3]{#3\tocdatasecprint{#4}{#5}{#6}{#7}}}%
-}% no star
+ \IfValueTF{#2}%
+ {\section[#2]{#3\tocdatasecprint{#4}{#5}{#6}{#7}}}%
+ {\section[#3]{#3\tocdatasecprint{#4}{#5}{#6}{#7}}}%
+ }% no star
% \end{macrocode}
% Create an index entry depending on whether there is a first name:
% \begin{macrocode}
-\ifthenelse{\equal{#5}{}}%
-{\index{#6}}%
-{\index{#6, #5}}%
+ \ifblank{#5}%
+ {\index{#6}}%
+ {\index{#6, #5}}%
}
% \end{macrocode}
% \end{macro}
@@ -1028,7 +981,7 @@ Keywords={LaTeX, tocdata, contents}%
% \changes{v0.12}{2016/11/30}{etc. Added name alignment.}
% \begin{macrocode}
\newcommand{\tdnamejustify}{%
-\renewcommand{\TD@namealign}{}%
+ \renewcommand{\TD@namealign}{}%
}
% \end{macrocode}
% \end{macro}
@@ -1036,7 +989,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdnamecenter} Sets centered text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdnamecenter}{%
-\renewcommand{\TD@namealign}{\centering}%
+ \renewcommand{\TD@namealign}{\centering}%
}
% \end{macrocode}
% \end{macro}
@@ -1044,7 +997,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdnameleft} Sets left text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdnameleft}{%
-\renewcommand{\TD@namealign}{\raggedright}%
+ \renewcommand{\TD@namealign}{\raggedright}%
}
% \end{macrocode}
% \end{macro}
@@ -1052,7 +1005,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdnameright} Sets right text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdnameright}{%
-\renewcommand{\TD@namealign}{\raggedleft}%
+ \renewcommand{\TD@namealign}{\raggedleft}%
}
% \end{macrocode}
% \end{macro}
@@ -1070,7 +1023,7 @@ Keywords={LaTeX, tocdata, contents}%
% \changes{v0.12}{2016/11/30}{etc. Added text alignment.}
% \begin{macrocode}
\newcommand{\tdtextjustify}{%
-\renewcommand{\TD@textalign}{}%
+ \renewcommand{\TD@textalign}{}%
}
% \end{macrocode}
% \end{macro}
@@ -1078,7 +1031,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdtextcenter} Sets centered text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdtextcenter}{%
-\renewcommand{\TD@textalign}{\centering}%
+ \renewcommand{\TD@textalign}{\centering}%
}
% \end{macrocode}
% \end{macro}
@@ -1086,7 +1039,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdtextleft} Sets left text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdtextleft}{%
-\renewcommand{\TD@textalign}{\raggedright}%
+ \renewcommand{\TD@textalign}{\raggedright}%
}
% \end{macrocode}
% \end{macro}
@@ -1094,7 +1047,7 @@ Keywords={LaTeX, tocdata, contents}%
% \begin{macro}{tdtextright} Sets right text alignment in the optional text.
% \begin{macrocode}
\newcommand{\tdtextright}{%
-\renewcommand{\TD@textalign}{\raggedleft}%
+ \renewcommand{\TD@textalign}{\raggedleft}%
}
% \end{macrocode}
% \end{macro}
@@ -1103,9 +1056,10 @@ Keywords={LaTeX, tocdata, contents}%
%
% \subsubsection{Figures}
%
-% \begin{macro}{\captionartist} * \oarg{2:LOF entry} \marg{3:title}
-% \oarg{4:supplemental text}
-% \oarg{5: prefix} \marg{6:first} \marg{7:last} \oarg{8:suffix}
+% \begin{macro}{\captionartist} * \oarg{2: \LOF\ entry} \marg{3: title}
+% \oarg{4: supplemental text}
+% \oarg{5: prefix} \marg{6: first} \\
+% \marg{7: last} \oarg{8: suffix}
%
% \changes{v0.12}{2016/11/28}{Allows paragraphs in add'l text.}
% \changes{v0.12}{2016/11/28}{Expands first name before index check.}
@@ -1117,53 +1071,52 @@ Keywords={LaTeX, tocdata, contents}%
% If using the optional prefix, the optional text must also be given, even if it
% \watchout[Optional arguments]
% is empty. For example, use:
-% \begin{docsidebar}
-% |\captionartist{Title}|\textcolor{red}{|[]|}|[Sir]{Isaac}{Newton}|
-%
-% \medskip
-%
-% \footnotesize (If only one optional argument is given before the first name, it will be
-% interpreted as the optional text, not as the optional prefix.)
-% \end{docsidebar}
+% \begin{sourceverb}
+% \captionartist{Title}|\textcolor{red}{|[]|}|[Sir]{Isaac}{Newton}
+% \end{sourceverb}
+% If only one optional argument is given before the first name, it will be
+% interpreted as the optional text, not as the optional prefix.
% \begin{macrocode}
\NewDocumentCommand{\captionartist}{s o m +O{} O{} m m O{}}{%
% \end{macrocode}
% Print the artist's name next to the figure:
% \begin{macrocode}
-\par\addvspace{\medskipamount}%
-\tocdatafigprint{#5}{#6}{#7}{#8}%
+ \par\addvspace{\medskipamount}%
+ \tocdatafigprint{#5}{#6}{#7}{#8}%
% \end{macrocode}
% If supplemental text is provided, print it below the author:
% \begin{macrocode}
-\ifthenelse{\equal{#4}{}}{}{\par\tocdatafigtextprint{#4}}%
+ \ifblank{#4}%
+ {}%
+ {\par\tocdatafigtextprint{#4}}%
% \end{macrocode}
% Remove any existing vertical space and only use \cs{caption}'s built-in spacing:
% \begin{macrocode}
-\unskip%
+ \unskip%
% \end{macrocode}
% If starred, there should be no \acro{TOC} entry, so do not add tocdata.
% Use \cs{caption*} from the \pkg{caption} or similar packages.
% \begin{macrocode}
-\IfBooleanTF{#1}%
-{% starred
-\IfValueTF{#2}{\caption*[#2]{#3}}{\caption*{#3}}%
-}% starred
-{% not starred
+ \IfBooleanTF{#1}%
+ {% starred
+ \IfValueTF{#2}{\caption*[#2]{#3}}{\caption*{#3}}%
+ }% starred
+ {% not starred
% \end{macrocode}
% No starred, so remember the artist's name for inclusion in the \acro{LOF}:
% \begin{macrocode}
-\tocdata{lof}{#6 #7}%
+ \tocdata{lof}{#6 #7}%
% \end{macrocode}
% Create the caption depending on the optional name:
% \begin{macrocode}
-\IfValueTF{#2}{\caption[#2]{#3}}{\caption{#3}}%
-}% not starred
+ \IfValueTF{#2}{\caption[#2]{#3}}{\caption{#3}}%
+ }% not starred
% \end{macrocode}
% Create an index entry depending on whether there is a first name:
% \begin{macrocode}
-\ifthenelse{\equal{#6}{}}%
-{\index{#7}}%
-{\index{#7, #6}}%
+ \ifblank{#6}%
+ {\index{#7}}%
+ {\index{#7, #6}}%
}
% \end{macrocode}
% \end{macro}
@@ -1183,7 +1136,7 @@ Keywords={LaTeX, tocdata, contents}%
% \clearpage
% ^^A \pagestyle{plain}
% \phantomsection
-% \tocdata{toc}{Automated}
+% \tocdata{toc}{\prog{makeindex}}
% \addcontentsline{toc}{section}{Change History and \indexname}
%
% \pagestyle{plain}
diff --git a/Master/texmf-dist/source/latex/tocdata/tocdata.ins b/Master/texmf-dist/source/latex/tocdata/tocdata.ins
index 85a47ccc63e..22df61952b6 100644
--- a/Master/texmf-dist/source/latex/tocdata/tocdata.ins
+++ b/Master/texmf-dist/source/latex/tocdata/tocdata.ins
@@ -13,8 +13,8 @@
%%
%% The Current Maintainer of this work is Brian Dunn.
%%
-%% This work consists of the files lwarp.dtx and lwarp.ins
-%% and the derived file lwarp.sty.
+%% This work consists of the files tocdata.dtx and tocdata.ins
+%% and the derived file tocdata.sty.
\input docstrip.tex
\keepsilent
\usedir{tex/latex/ package }
@@ -30,6 +30,7 @@ The latest version of this license is in
and version 1.3 or later is part of all distributions of LaTeX
version 2005/12/01 or later.
\endpreamble
+\askforoverwritefalse
\generate{\file{tocdata.sty}{\from{tocdata.dtx}{package}}}
\Msg{*********************************************************}
\Msg{*}