From 366cf31a771ded1f10860be3212058d48020398d Mon Sep 17 00:00:00 2001
From: Norbert Preining <norbert@preining.info>
Date: Wed, 11 Oct 2023 03:02:59 +0000
Subject: CTAN sync 202310110302

---
 macros/latex/contrib/indextools/indextools.dtx | 67 ++++++++++++++------------
 1 file changed, 36 insertions(+), 31 deletions(-)

(limited to 'macros/latex/contrib/indextools/indextools.dtx')

diff --git a/macros/latex/contrib/indextools/indextools.dtx b/macros/latex/contrib/indextools/indextools.dtx
index b88e96682e..3cc0260b0c 100644
--- a/macros/latex/contrib/indextools/indextools.dtx
+++ b/macros/latex/contrib/indextools/indextools.dtx
@@ -45,7 +45,7 @@ and the derived files indextools.sty and indextools.pdf.
 %<package>\NeedsTeXFormat{LaTeX2e}[2005/12/01]
 %<package>\ProvidesPackage{indextools}%
 %<*package>
-   [2015/11/22 v1.5.1 Package for typesetting indices in a synchronous mode]
+   [2023/10/10 v1.6.0 Package for typesetting indices in a synchronous mode]
 %</package>
 %<*driver>
 \documentclass{ltxdoc}
@@ -80,7 +80,7 @@ and the derived files indextools.sty and indextools.pdf.
 \end{document}
 %</driver>
 % \fi
-% \CheckSum{891}
+% \CheckSum{897}
 %
 % \changes{v1.0}{2010/07/10}{First public version}
 % \changes{v1.0a}{2010/07/12}{Small bug correction}
@@ -100,6 +100,7 @@ and the derived files indextools.sty and indextools.pdf.
 % \changes{v1.5}{2015/11/15}{New option `innote'}
 % \changes{v1.5}{2015/11/15}{New option `notenumber'}
 % \changes{v1.5.1}{2015/11/22}{Fix bug with options `notenumber' and `innote' when using \cs{index} without optional argument}
+% \changes{v1.6.0}{2023/10/10}{Add compatibility with upmendex sorting engine}
 %
 % \begin{abstract}
 % This package is a fork of the \pack{imakeidx} package. The original authors
@@ -121,7 +122,7 @@ and the derived files indextools.sty and indextools.pdf.
 %	\item this documentation.
 % \end{itemize}
 % This package replaces and extends the functionalities of \pack{imakeidx},
-% therefore  it MUST not be loaded at the same time as \pack{imakeidx}. Some 
+% therefore  it MUST not be loaded at the same time as \pack{imakeidx}. Some
 % controls are implemented to avoid these situations; if loading of
 % \pack{indextools} is required after \pack{imakeidx} is already loaded,
 % it does not get loaded; at the same time, if it gets loaded, it sets a
@@ -137,7 +138,7 @@ and the derived files indextools.sty and indextools.pdf.
 % impossible to start an index before all other pages have been
 % ejected.
 %
-% For support, please open issues on:\\[1ex] 
+% For support, please open issues on:\\[1ex]
 % \makebox[\linewidth]{\url{https://github.com/maieul/indextools}}
 % \end{abstract}
 %
@@ -146,7 +147,7 @@ and the derived files indextools.sty and indextools.pdf.
 % system is just \prog{pdftex}; the original Knuthian \prog{tex} is
 % still corrected by D.\,E.~Knuth himself, but is frozen, according to
 % his will; it is still distributed by every \TeX\ distribution, but
-% in practice \prog{pdftex}, \prog{xetex} or \prog{luatex} are the most used 
+% in practice \prog{pdftex}, \prog{xetex} or \prog{luatex} are the most used
 % interpreters  and typesetting engines of most macro packages.
 %
 % This program \prog{pdftex} was originally born with the facility of
@@ -156,7 +157,7 @@ and the derived files indextools.sty and indextools.pdf.
 % incorporates the extensions of \eTeX\ and has the ability to open a
 % shell so as to run system commands with their arguments. The same
 % is true for \prog{xetex} and \prog{luatex}.
-% 
+%
 % This facility, since the \TeX~Live 2010 distribution, is official,
 % but is sort of restricted, in the sense that the \TeX\ system
 % configuration file contains a list of ``safe'' system commands that
@@ -207,7 +208,7 @@ and the derived files indextools.sty and indextools.pdf.
 % \begin{description}\def\Item[#1]{\item[\normalfont\ttfamily#1]}
 % \Item[makeindex] in order to use the \prog{makeindex} sorting and
 % formatting engine; this option is the default and is mutually
-% exclusive with the next option.
+% exclusive with the two next options.
 % \Item[xindy] in order to use the \prog{xindy} sorting and formatting
 % engine; \texttt{texindy} is an alias for \texttt{xindy} and actually
 % it's the script \prog{texindy} which is called by this package.
@@ -216,6 +217,7 @@ and the derived files indextools.sty and indextools.pdf.
 % the command line specific settings, it is possible to specify the
 % option \texttt{truexindy}; the user is then responsible to set up
 % the \prog{xindy} engine with the suitable command line options.
+% \Item[upmendex] in order tu use the \prog{upmendex} sorting and formatting engine.
 % \Item[noautomatic] disables the automatic splitting of the raw
 % index files and running of the system programs; this option might
 % be used to save time when one knows for sure that the index files
@@ -234,13 +236,13 @@ and the derived files indextools.sty and indextools.pdf.
 % document class option \texttt{twocolumn} has been specified.
 % \Item[afterindex] allows to use \cs{index} command after \cs{printindex}.
 % If this case, the index will be printed only on the secund run.
-% \Item[innote] adds a mark for content indexed in note. The standard mark is an italic `n' added after the page number. You can redefine the \cs{innnote} command to modify the standard mark.
+% \Item[innote] adds a mark for content indexed in note. The standard mark is an italic `n' added after the page number. You can redefine the \cs{innote} command to modify the standard mark.
 % The default value is:\\
 % \begin{verbatim}
 % \providecommand{\innote}[1]{#1\textit{n}}
 % \end{verbatim}
 % \Item[notenumber] adds the note number for content indexed in note. The standard marks is a `n.' followed by the note number.
-% You can redefine \cs{innnotenumber} to modify the standard mark.
+% You can redefine \cs{innotenumber} to modify the standard mark.
 % The default value is:\\
 % \begin{verbatim}
 % \providecommand{\innotenumber}[2]{#2n.~#1}
@@ -302,8 +304,8 @@ and the derived files indextools.sty and indextools.pdf.
 % specific index; if not specified, the \cs{indexname} value is
 % used.\\* Example: \texttt{title=Index of names}.
 % \Item[program] is the name of the system program that is used to
-% sort and format an index; valid choices are \prog{makeindex},
-% \prog{xindy}, or \prog{texindy}, plus \prog{truexindy}. If not
+% sort and format an index; valid choices are \prog{makeindex} ;
+% \prog{xindy}, or \prog{texindy}, plus \prog{truexindy} ; \prog{upmendex}. If not
 % specified the program specified among the package options is used.
 % If no option is specified, \prog{makeindex} is used. In order to
 % use \prog{xindy}, it's necessary to call \prog{pdflatex} with
@@ -370,7 +372,7 @@ and the derived files indextools.sty and indextools.pdf.
 % \texttt{plain}. You might want to set it to \texttt{empty} or some
 % other page style defined by the class or by yourself. This keyword
 % is disabled when the package \pack{fancyhdr} is loaded; any definition
-% or choice of page styles must be done before typesetting the indices. 
+% or choice of page styles must be done before typesetting the indices.
 % ^^A
 % \Item[headers] which takes two values: the left and right marks. You
 % might want to use this for disabling automatic uppercasing, by
@@ -477,7 +479,7 @@ and the derived files indextools.sty and indextools.pdf.
 % \texttt{-\/-shell-escape} (which is \texttt{-\/-enable-write18} for
 % MiK\TeX) typesetting program  option or the \texttt{noautomatic}
 % option should be specified when loading \pack{indextools}.
-% 
+%
 % Let's look at a couple of examples. In both we suppose that the
 % document \texttt{mybook.tex} defines two indices through
 %\begin{verbatim}
@@ -616,7 +618,7 @@ and the derived files indextools.sty and indextools.pdf.
 % |\indexprologue| to write some text before the index proper gets typeset;
 % an optional space may be used in place of the default one-line spacing
 % between the index title, the prologue and the index body.
-% 
+%
 % This facility relies on a particular feature of the |multicols|
 % environment, that \pack{indextools} uses to instruct the typesetting
 % program to typeset the index with a specified number of balanced columns.
@@ -721,7 +723,7 @@ and the derived files indextools.sty and indextools.pdf.
 % an interaction between \pack{memoir} and \pack{showidx} that required
 % special attention. See below about using \pack{showidx}.
 %
-% \subsubsection{Package \pack{showidx}} 
+% \subsubsection{Package \pack{showidx}}
 %
 % Up to version 1.1 this package did not allow to use it together with
 % the \pack{showidx} package; now it is, provided that \pack{showidx}
@@ -729,7 +731,7 @@ and the derived files indextools.sty and indextools.pdf.
 % on using \pack{showidx}.
 %
 % \subsubsection{Package \pack{fancyhdr}}
-% 
+%
 % When using package \pack{fancyhdr} some inconveniences did show up;
 % now we believe we have detected the causes and we implemented the
 % necessary corrections\footnote{Thanks to Maïeul Rouquette who, before
@@ -850,7 +852,7 @@ and the derived files indextools.sty and indextools.pdf.
 %
 % Therefore if by chance you get double entries into the table of contents,
 % eliminate the \Kvalue{intoc} option from your calls; your class,
-% packages, and settings are already taking care of it. 
+% packages, and settings are already taking care of it.
 
 % The package \pack{tocbibind} should be loaded with the \Kvalue{noindex}
 % option, otherwise it would interfere with our redefinition of
@@ -1007,6 +1009,7 @@ and the derived files indextools.sty and indextools.pdf.
 \DeclareOption{texindy}{\def\indtl@progdefault{texindy}}
 \DeclareOption{truexindy}{\def\indtl@progdefault{truexindy}}
 \DeclareOption{makeindex}{\def\indtl@progdefault{makeindex}}
+\DeclareOption{upmendex}{\def\indtl@progdefault{upmendex}}
 \newif\ifindtl@disableautomatic
 \DeclareOption{noautomatic}{\indtl@disableautomatictrue}
 \newif\ifindtl@nonewpage
@@ -1021,13 +1024,13 @@ and the derived files indextools.sty and indextools.pdf.
   \let\indtl@finalmessage\@gobble
   \let\indtl@splitindexmessage\relax}}
 \newif\ifindtl@afterindex
-\DeclareOption{afterindex}{\indtl@afterindextrue} 
- 
+\DeclareOption{afterindex}{\indtl@afterindextrue}
+
 \newif\ifindtl@innote
-\DeclareOption{innote}{\indtl@innotetrue} 
+\DeclareOption{innote}{\indtl@innotetrue}
 
 \newif\ifindtl@notenumber
-\DeclareOption{notenumber}{\indtl@notenumbertrue} 
+\DeclareOption{notenumber}{\indtl@notenumbertrue}
 
 \ExecuteOptions{makeindex}
 \ProcessOptions\relax
@@ -1102,14 +1105,14 @@ and the derived files indextools.sty and indextools.pdf.
 \providecommand*\see[2]{\emph{\seename} #1}
 \providecommand*\seealso[2]{\emph{\alsoname} #1}
 \providecommand*\seename{see}
-\providecommand*\alsoname{see also}
+\providecommand*\alsoname{seeupmendex also}
 %    \end{macrocode}
 %
 % \subsection{\cs{makeindex}}
 %
 % From here on, some commands are duplicated; this depends on the
 % fact that the behavior must be different when using \prog{splitindex} or
-% not. The memory occupied by the useless commands will be cleared at the 
+% not. The memory occupied by the useless commands will be cleared at the
 % end of package.
 %    \begin{macrocode}
 \providecommand*\makeindex{} % to use \renewcommand safely
@@ -1143,7 +1146,7 @@ and the derived files indextools.sty and indextools.pdf.
 \define@key{indtl}{name}{\def\indtl@name{#1}}
 \define@key{indtl}{title}{\def\indtl@title{#1}}
 \define@choicekey{indtl}{program}[\indtl@val\indtl@nr]
-  {makeindex,xindy,texindy,truexindy}{%
+  {makeindex,xindy,texindy,truexindy,upmendex}{%
     \ifcase\indtl@nr\relax
       \def\indtl@program{makeindex}%
     \or
@@ -1152,6 +1155,8 @@ and the derived files indextools.sty and indextools.pdf.
       \def\indtl@program{texindy}%
     \or
       \def\indtl@program{xindy}%
+    \or
+      \def\indtl@program{upmendex}%
     \fi}
 \define@key{indtl}{options}{\def\indtl@options{ #1 }}
 \define@boolkey{indtl}{noautomatic}[true]{}
@@ -1240,7 +1245,7 @@ and the derived files indextools.sty and indextools.pdf.
  \fi}
 %    \end{macrocode}
 %
-% \subsection{\cs{index}} 
+% \subsection{\cs{index}}
 %
 % Provide a default definition for \cs{index}; when a \cs{makeindex}
 % command is given and \LaTeX\ is writing on auxiliary files,
@@ -1289,7 +1294,7 @@ and the derived files indextools.sty and indextools.pdf.
 % so as not redefining it; then we use it to let the \pack{showidx} true or
 % simulated macros do their job, but we also take care of resetting the switch
 % default value to false at begin document time if the \pack{memoir} class is
-% being used. 
+% being used.
 %
 %
 %    \begin{macrocode}
@@ -1529,7 +1534,7 @@ and the derived files indextools.sty and indextools.pdf.
       \@tempswafalse
     \fi}
 %    \end{macrocode}
-% We define a macro that close a specified index file and run in. 
+% We define a macro that close a specified index file and run in.
 %    \begin{macrocode}
 \newcommand{\indtl@closeandrundidxsplit}[1]{%
   \immediate\closeout\csname #1@idxfile\endcsname
@@ -1542,7 +1547,7 @@ and the derived files indextools.sty and indextools.pdf.
   \fi
 }
 %    \end{macrocode}
-% We define a macro that close the general  index file and run in. 
+% We define a macro that close the general  index file and run in.
 %    \begin{macrocode}
 \newcommand{\indtl@closeandrundidxunique}{%
   \immediate\closeout\@indexfile
@@ -1637,8 +1642,8 @@ and the derived files indextools.sty and indextools.pdf.
  }%
 }
 %    \end{macrocode}
-% \subsection{`innnote' and `notenumber' options}
-% 
+% \subsection{`innote' and `notenumber' options}
+%
 % If the `innote' option is enabled, we modify the standard index command when we are in a note, in order to insert the \verb+|innote+ in the \verb+.idx+ file.
 %    \begin{macrocode}
 
@@ -1648,7 +1653,7 @@ and the derived files indextools.sty and indextools.pdf.
       \LetLtxMacro\orig@@index\index
       \pretocmd{\@footnotetext}{\let\index\nindex}{}{}
       \apptocmd{\@footnotetext}{\let\index\orig@@index}{}{}
-      
+
     \fi%
 %    \end{macrocode}
 % The same is true if the `notnumber' option is enabled.
-- 
cgit v1.2.3

