texlive[52198] Master/texmf-dist: datatool (28sep19)
commits+karl at tug.org
commits+karl at tug.org
Sat Sep 28 23:32:49 CEST 2019
Revision: 52198
http://tug.org/svn/texlive?view=revision&revision=52198
Author: karl
Date: 2019-09-28 23:32:49 +0200 (Sat, 28 Sep 2019)
Log Message:
-----------
datatool (28sep19)
Modified Paths:
--------------
trunk/Master/texmf-dist/doc/latex/datatool/CHANGES
trunk/Master/texmf-dist/doc/latex/datatool/README
trunk/Master/texmf-dist/doc/latex/datatool/datatool-code.pdf
trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.pdf
trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.tex
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-autokeys.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-barchart.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-datatooltk.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-dict.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-europecv-bib.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-gidx.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-glossary.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.tex
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-mail-merge.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-piechart.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-sort.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-student-scores.pdf
trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-two-per-row.pdf
trunk/Master/texmf-dist/source/latex/datatool/datatool.dtx
trunk/Master/texmf-dist/source/latex/datatool/datatool.ins
trunk/Master/texmf-dist/tex/latex/datatool/databar.sty
trunk/Master/texmf-dist/tex/latex/datatool/databib.sty
trunk/Master/texmf-dist/tex/latex/datatool/datagidx.sty
trunk/Master/texmf-dist/tex/latex/datatool/datapie.sty
trunk/Master/texmf-dist/tex/latex/datatool/dataplot.sty
trunk/Master/texmf-dist/tex/latex/datatool/datatool-base.sty
trunk/Master/texmf-dist/tex/latex/datatool/datatool-fp.sty
trunk/Master/texmf-dist/tex/latex/datatool/datatool-pgfmath.sty
trunk/Master/texmf-dist/tex/latex/datatool/datatool.sty
trunk/Master/texmf-dist/tex/latex/datatool/person.sty
Modified: trunk/Master/texmf-dist/doc/latex/datatool/CHANGES
===================================================================
--- trunk/Master/texmf-dist/doc/latex/datatool/CHANGES 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/doc/latex/datatool/CHANGES 2019-09-28 21:32:49 UTC (rev 52198)
@@ -1,3 +1,26 @@
+v2.32 (2019-09-27):
+
+ * datagidx.sty:
+
+ - added check for new 2019/10/01 LaTeX kernel when defining
+ \datagidxstripaccents.
+
+ ** Pre version 2.32 accent stripping in \newterm won't work with new LaTeX kernel. **
+
+ * datatool-base.sty:
+
+ - added \ifdtlcompareskipcs
+ (see https://www.dickimaw-books.com/bugtracker.php?action=view&key=99)
+
+ - bug fix (\dtlcompare not finding word breaks)
+ (https://www.dickimaw-books.com/bugtracker.php?action=view&key=100)
+
+ - bug fix (error if first command in assignment list is equal to \relax)
+ (https://www.dickimaw-books.com/bugtracker.php?action=view&key=106)
+
+ - bug fix (removed \relax from definitions of \DTLiffirstrow and \DTLiflastrow)
+ (https://www.dickimaw-books.com/bugtracker.php?action=view&key=130)
+
v2.31 (2018-12-07):
* datatool-base.sty:
Modified: trunk/Master/texmf-dist/doc/latex/datatool/README
===================================================================
--- trunk/Master/texmf-dist/doc/latex/datatool/README 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/doc/latex/datatool/README 2019-09-28 21:32:49 UTC (rev 52198)
@@ -1,6 +1,6 @@
-LaTeX Bundle : datatool v2.31
+LaTeX Bundle : datatool v2.32
-Last Modified : 2018-12-07
+Last Modified : 2019-09-27
Author : Nicola Talbot
Modified: trunk/Master/texmf-dist/doc/latex/datatool/datatool-code.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.tex 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/doc/latex/datatool/datatool-user.tex 2019-09-28 21:32:49 UTC (rev 52198)
@@ -103,11 +103,11 @@
\MakeShortVerb{"}
- \title{User Manual for datatool bundle version~2.31}
+ \title{User Manual for datatool bundle version~2.32}
\author{Nicola L.C. Talbot\\
\url{http://www.dickimaw-books.com/}}
- \date{2018-12-07}
+ \date{2019-09-27}
\maketitle
\pagenumbering{roman}
@@ -122,7 +122,7 @@
\item[\url{datatool-code.pdf}]
Advanced users wishing to know more about the inner workings of
all the packages provided in the \styfmt{datatool} bundle should
- read \qt{Documented Code for datatool v2.31}
+ read \qt{Documented Code for datatool v2.32}
\item[INSTALL] Installation instructions.
@@ -130,6 +130,13 @@
\item[README] Package summary.
\end{description}
+Additional online resources:
+\begin{itemize}
+\item \styfmt{datatool} FAQ:
+\href{https://www.dickimaw-books.com/faqs/datatoolfaq.html}{dickimaw-books.com/faqs/datatoolfaq.html}
+\item Bug tracker: \href{https://www.dickimaw-books.com/bugtracker.php}{dickimaw-books.com/bugtracker.php}
+\item \styfmt{datatool} performance: \href{https://www.dickimaw-books.com/gallery/datatool-performance.shtml}{dickimaw-books.com/gallery/datatool-performance.shtml}
+\end{itemize}
\begin{important}
There's an old adage, ``use the right tool for the right job.''
@@ -2266,7 +2273,26 @@
\begin{definition}[\DescribeMacro\dtlicompare]
\cs{dtlicompare}\marg{register}\marg{A}\marg{B}
\end{definition}
-A case-insensitive comparison.
+A case-insensitive comparison. The two above commands work in much
+the same way except that the first compares character codes and the
+second compares the lowercase character codes. If control sequences
+are found then the comparison is determined by the conditional:
+\begin{definition}[\DescribeMacro\ifdtlcompareskipcs]
+\cs{ifdtlcompareskipcs}
+\end{definition}
+This is switched on with:
+\begin{definition}[\DescribeMacro\dtlcompareskipcstrue]
+\cs{dtlcompareskipcstrue}
+\end{definition}
+and switched off with:
+\begin{definition}[\DescribeMacro\dtlcompareskipcsfalse]
+\cs{dtlcompareskipcsfalse}
+\end{definition}
+The default setting is false (off). If true control sequences will
+be skipped. If false control sequences will considered as having the
+code 0.
+
+There are also two comparison commands designed for indexes:
\begin{definition}[\DescribeMacro\dtlwordindexcompare]
\cs{dtlwordindexcompare}\marg{register}\marg{A}\marg{B}
\end{definition}
@@ -2276,7 +2302,7 @@
\cs{dtlletterindexcompare}\marg{register}\marg{A}\marg{B}
\end{definition}
English letter-ordering comparison for indexes.
-Those last two commands are described in more detail in
+These last two commands are described in more detail in
\sectionref{sec:sort}.
For example:
@@ -6782,9 +6808,8 @@
name and text fields are set to \verb|mac\'edoine|.
\begin{important}
-The first letter must be grouped if it's an accent or ligature or a
-character outside the range \texttt{a}\ldots\texttt{z} or
-\texttt{A}\ldots\texttt{Z}.
+The first letter must be grouped if it's an accent or ligature
+command.
\end{important}
\item This example must have the sort and label fields set manually
@@ -6793,30 +6818,33 @@
\newterm[label=elite,sort=elite]{{\'e}lite}
\end{verbatim}
-\item The same applies if you are using the \sty{inputenc} package:
+\item This used to also apply when using the \sty{inputenc} package
+with older versions of \styfmt{datatool-base} and \styfmt{mfirstuc}.
+However now it's no longer necessary for accents:
\begin{verbatim}
-\newterm[label=elite,sort=elite]{{é}lite}
+\newterm{élite}
\end{verbatim}
+\item Commands such as \ics{oe} aren't dealt with, so you must
+manually set the label and sort key:
+\begin{verbatim}
+\newterm[label=manoeuvre,sort=manoeuvre]{man\oe uvre}
+\end{verbatim}
+
\item The same applies to plural terms set explicitly:
\begin{verbatim}
\newterm
[%
- plural={{œ}sophagi},%
+ plural={{\oe}sophagi},%
label={oesophagus},%
sort={oesophagus}%
]
- {{œ}sophagus}
+ {{\oe}sophagus}
\end{verbatim}
-\item Commands such as \ics{oe} aren't dealt with, so you must
-manually set the label and sort key:
+\item The same applies if you are using the \sty{inputenc} package
+to enter ligatures:
\begin{verbatim}
-\newterm[label=manoeuvre,sort=manoeuvre]{man\oe uvre}
-\end{verbatim}
-
-\item The same applies if you are using the \sty{inputenc} package:
-\begin{verbatim}
\newterm[label=manoeuvre,sort=manoeuvre]{manœuvre}
\end{verbatim}
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-autokeys.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-barchart.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-datatooltk.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-dict.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-europecv-bib.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-gidx.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-glossary.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.tex 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-index.tex 2019-09-28 21:32:49 UTC (rev 52198)
@@ -70,12 +70,10 @@
% other encodings.)
\newterm{macramé}
- % Take care if the first letter starts with an accent.
- % The initial accented letter must be grouped to ensure it works
- % with \makefirstuc, but this will make the default label '{e}lite'
- % rather than 'elite', so let's override the default:
+\newterm{élite}
-\newterm[label=elite]{{é}lite}
+ % Terms with ligatures need to have the label set explicitly:
+\newterm[label=manoeuvre]{manœuvre}
% Sometimes the default sort may not suit your requirements. In
% which case you can override it:
@@ -676,7 +674,8 @@
\gls{ma},
\gls{macabre},
\gls{macrame},
-\gls{macedoine}.
+\gls{macedoine},
+\gls{manoeuvre}.
\Gls{elite},
\gls{deem},
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-mail-merge.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-piechart.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-sort.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-student-scores.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/doc/latex/datatool/samples/sample-two-per-row.pdf
===================================================================
(Binary files differ)
Modified: trunk/Master/texmf-dist/source/latex/datatool/datatool.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/datatool/datatool.dtx 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/source/latex/datatool/datatool.dtx 2019-09-28 21:32:49 UTC (rev 52198)
@@ -1,9 +1,12 @@
%\iffalse
% datatool.dtx generated using makedtx version 1.2 (c) Nicola Talbot
% Command line args:
+% -author "Nicola Talbot"
+% -codetitle ""
% -macrocode "databib\.bst"
-% -codetitle ""
% -setambles "databib\.bst=>\nopreamble\nopostamble"
+% -doc "datatool-manual.tex"
+% -comment "databib\.bst"
% -src "datatool-base.sty\Z=>datatool-base.sty"
% -src "datatool-fp.sty\Z=>datatool-fp.sty"
% -src "datatool-pgfmath.sty\Z=>datatool-pgfmath.sty"
@@ -15,11 +18,8 @@
% -src "dataplot.sty\Z=>dataplot.sty"
% -src "person.sty\Z=>person.sty"
% -src "databib.bst\Z=>databib.bst"
-% -doc "datatool-manual.tex"
-% -author "Nicola Talbot"
-% -comment "databib\.bst"
% datatool
-% Created on 2018/12/7 15:44
+% Created on 2019/9/27 19:53
%\fi
%\iffalse
%<*package>
@@ -42,7 +42,7 @@
%\fi
% \iffalse
% Doc-Source file to use with LaTeX2e
-% Copyright (C) 2018 Nicola Talbot, all rights reserved.
+% Copyright (C) 2019 Nicola Talbot, all rights reserved.
% \fi
% \iffalse
%<*driver>
@@ -68,7 +68,7 @@
\doxitem{Counter}{counter}{counters}
\doxitem{Option}{option}{package options}
-\CheckSum{24081}
+\CheckSum{24235}
\RecordChanges
\PageIndex
@@ -81,11 +81,11 @@
%\fi
%\MakeShortVerb{"}
%
-%\title{Documented Code for datatool v2.31}
+%\title{Documented Code for datatool v2.32}
%\author{Nicola L. C. Talbot\\
%\url{http://www.dickimaw-books.com/}}
%
-%\date{2018-12-07}
+%\date{2019-09-27}
%\maketitle
%
%\pagenumbering{roman}
@@ -100,8 +100,6 @@
%\pagenumbering{arabic}
%
%\StopEventually{%
-% \clearpage\phantomsection
-% \addcontentsline{toc}{chapter}{Index}%
% \PrintIndex
% \clearpage\phantomsection
% \addcontentsline{toc}{chapter}{History}\PrintChanges
@@ -121,7 +119,7 @@
%
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-base}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-base}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -2626,8 +2624,7 @@
\dtl at split@str##2\@nil
}%
}%
- \def\dtl at split@str##1#2\@nil{%
- \def#4{##1}}%
+ \def\dtl at split@str##1#2\@nil{\def#4{##1}}%
\dtl at splitstr#1#2\@nil
}
% \end{macrocode}
@@ -3102,6 +3099,15 @@
% \end{macrocode}
%\end{macro}
%
+%\begin{macro}{\ifdtlcompareskipcs}
+%\changes{2.32}{2019-09-27}{new}
+%If true, \cs{dtlcompare} should skip control sequences.
+% \begin{macrocode}
+\newif\ifdtlcompareskipcs
+\dtlcompareskipcsfalse
+% \end{macrocode}
+%\end{macro}
+%
%\label{src:dtlcompare}
%\begin{macro}{\dtlcompare}
%\begin{definition}
@@ -3155,8 +3161,16 @@
%\dtlcompare{\mycount}{foo}{\uppercase{f}oo}\number\mycount, since
%the \cs{uppercase} command is ignored.
%
-%\item You can ``trick'' \cs{dtlcompare} using a command which doesn't
-%output any text. Suppose you have defined the following command:
+%\item A control sequence is treated as having the character code
+%value of 0. Pre version 2.32, \cs{dtlcompare} was advertised here
+%as skipping control sequences when actually it was treating a
+%control sequence as character 0. To avoid breaking
+%backward-compatibility where a control sequence is expected to have
+%this behaviour, we now have a switch to determine whether to treat
+%control sequences as 0 or to skip them.
+%
+%So you can now ``trick'' \cs{dtlcompare} using a command which doesn't
+%output any text if switch this conditional on. Suppose you have defined the following command:
%\begin{verbatim}
%\newcommand*{\noopsort}[1]{}
%\end{verbatim}
@@ -3234,8 +3248,15 @@
#1=1\relax
}%
{%
- \DTLsubstituteall{\@dtl at argA}{ }{\space }%
- \DTLsubstituteall{\@dtl at argB}{ }{\space }%
+% \end{macrocode}
+% Identify all word breaks.
+%\changes{2.32}{2019-09-27}{now using \cs{dtl at setwordbreaksnohyphens} to
+%deal with spaces}
+% \begin{macrocode}
+ \dtl at setwordbreaksnohyphens{\@dtl at argA}{\@dtl at wordbreak}%
+ \let\@dtl at argA\dtl at string
+ \dtl at setwordbreaksnohyphens{\@dtl at argB}{\@dtl at wordbreak}%
+ \let\@dtl at argB\dtl at string
\expandafter\dtl at getfirst\@dtl at argA\end at dtl@getfirst
\let\dtl at firstA=\dtl at first
\let\dtl at restA=\dtl at rest
@@ -3242,93 +3263,145 @@
\expandafter\dtl at getfirst\@dtl at argB\end at dtl@getfirst
\let\dtl at firstB=\dtl at first
\let\dtl at restB=\dtl at rest
- \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstA}{%
- \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstB}{%
- \expandafter\dtl at setcharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
- \expandafter\dtl at setcharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
- \ifnum\dtl at codeA=-1\relax
- \ifnum\dtl at codeB=-1\relax
+ \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstA}%
+ {%
+ \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstB}%
+ {%
+ \expandafter\dtl at setcharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
+ \expandafter\dtl at setcharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
% \end{macrocode}
+%\changes{2.32}{2019-09-27}{added check to determine if control sequences
+%should be skipped}
+% If control sequences should be skipped, check if either is a
+% control sequence (the character code will be 0).
+% \begin{macrocode}
+ \let\dtl at donextcompare\@firstofone
+ \ifdtlcompareskipcs
+ \ifnum\dtl at codeA=0\relax
+ \ifnum\dtl at codeB=0\relax
+% \end{macrocode}
+%Skip both.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \else
+% \end{macrocode}
+%Skip A.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\@dtl at argB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
+ \else
+ \ifnum\dtl at codeB=0\relax
+% \end{macrocode}
+%Skip B.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\@dtl at argA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
+ \fi
+ \fi
+ \dtl at donextcompare
+ {%
+ \ifnum\dtl at codeA=-1\relax
+ \ifnum\dtl at codeB=-1\relax
+% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
%\changes{2.25}{2016-01-18}{added \cs{expandonce}}
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
- \dtl at donext
- \else
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
- \fi
- \else
- \ifnum\dtl at codeB=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ \fi
+ \else
+ \ifnum\dtl at codeB=-1\relax
% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
- \else
- \ifnum\dtl at codeA<\dtl at codeB
- #1=-1\relax
- \else
- \ifnum\dtl at codeA>\dtl at codeB
- #1=1\relax
- \else
- \ifdefempty{\dtl at restA}%
- {%
- \ifdefempty{\dtl at restB}%
- {%
- #1=0\relax
- }%
- {%
- #1=-1\relax
- }%
- }%
- {%
- \ifdefempty{\restB}%
- {%
- #1=1\relax
- }%
- {%
- \protected at edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}{\dtl at restA}{\dtl at restB}}%
- \dtl at donext
- }%
- }%
- \fi
- \fi
- \fi
- \fi
- }{%
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \ifnum\dtl at codeA<\dtl at codeB
+ #1=-1\relax
+ \else
+ \ifnum\dtl at codeA>\dtl at codeB
+ #1=1\relax
+ \else
+ \ifdefempty{\dtl at restA}%
+ {%
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=0\relax
+ }%
+ {%
+ #1=-1\relax
+ }%
+ }%
+ {%
% \end{macrocode}
+%\changes{2.32}{2019-09-27}{corrected misspelt command}
+% \begin{macrocode}
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=1\relax
+ }%
+ {%
+ \protected at edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\dtl at restA}{\dtl at restB}}%
+ \dtl at donext
+ }%
+ }%
+ \fi
+ \fi
+ \fi
+ \fi
+ }%
+ }%
+ {%
+% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
- }}{%
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
+ {%
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
}%
}
@@ -3414,8 +3487,9 @@
%\begin{definition}
%\cs{dtl at setcharcode}\marg{c}\marg{count register}
%\end{definition}
-% Sets \meta{count register} to the character code of \meta{c}, or to
-% -1 if \meta{c} is a control sequence, unless \meta{c} is either
+% Sets \meta{count register} to the character code of \meta{c}, or
+% to $-1$ if \meta{c} is empty, or to
+% 0 if \meta{c} is a control sequence, unless \meta{c} is either
% \cs{space} or |~| in which case it sets \meta{count register}
% to the character code of the space character.
% \begin{macrocode}
@@ -3923,76 +3997,123 @@
% \begin{macrocode}
\expandafter\dtl at setlccharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
\expandafter\dtl at setlccharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
- \ifnum\dtl at codeA=-1\relax
- \ifnum\dtl at codeB=-1\relax
% \end{macrocode}
+%\changes{2.32}{2019-09-27}{added check to determine if control sequences
+%should be skipped}
+% If control sequences should be skipped, check if either is a
+% control sequence (the character code will be 0).
+% \begin{macrocode}
+ \let\dtl at donextcompare\@firstofone
+ \ifdtlcompareskipcs
+ \ifnum\dtl at codeA=0\relax
+ \ifnum\dtl at codeB=0\relax
+% \end{macrocode}
+%Skip both.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \else
+% \end{macrocode}
+%Skip A.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\@dtl at argB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
+ \else
+ \ifnum\dtl at codeB=0\relax
+% \end{macrocode}
+%Skip B.
+% \begin{macrocode}
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\@dtl at argA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
+ \fi
+ \fi
+ \dtl at donextcompare
+ {%
+ \ifnum\dtl at codeA=-1\relax
+ \ifnum\dtl at codeB=-1\relax
+% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
%\changes{2.25}{2016-01-18}{added \cs{expandonce}}
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlicompare{\noexpand#1}%
- {\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
- \dtl at donext
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare{\noexpand#1}%
+ {\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ \fi
\else
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
- \fi
- \else
- \ifnum\dtl at codeB=-1\relax
+ \ifnum\dtl at codeB=-1\relax
% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
- \else
- \ifnum\dtl at codeA<\dtl at codeB
- #1=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
\else
- \ifnum\dtl at codeA>\dtl at codeB
- #1=1\relax
+ \ifnum\dtl at codeA<\dtl at codeB
+ #1=-1\relax
\else
- \ifdefempty{\dtl at restA}%
- {%
- \ifdefempty{\dtl at restB}%
+ \ifnum\dtl at codeA>\dtl at codeB
+ #1=1\relax
+ \else
+ \ifdefempty{\dtl at restA}%
{%
- #1=0\relax
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=0\relax
+ }%
+ {%
+ #1=-1\relax
+ }%
}%
{%
- #1=-1\relax
- }%
- }%
- {%
- \ifdefempty{\restB}%
- {%
- #1=1\relax
- }%
- {%
% \end{macrocode}
+%\changes{2.32}{2019-09-27}{corrected misspelt command}
+% \begin{macrocode}
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=1\relax
+ }%
+ {%
+% \end{macrocode}
%v2.25: added \cs{expandonce} to prevent non-ASCII characters from being
%expanded.
% \begin{macrocode}
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
- }%
+ \fi
\fi
\fi
\fi
- \fi
+ }%
}%
{%
% \end{macrocode}
@@ -6138,7 +6259,7 @@
% Definitions of fixed-point commands that use the \sty{fp} package.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-fp}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-fp}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -6427,7 +6548,7 @@
% Definitions of fixed-point commands that use the \sty{pgfmath} package.
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-pgfmath}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-pgfmath}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -6768,7 +6889,7 @@
%\section{Package Declaration}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Load required packages:
% \begin{macrocode}
@@ -8267,7 +8388,7 @@
% \begin{macrocode}
{%
\dtlgetrow{#1}{#2}%
- \@dtl at assign{#3}{#1}%
+ \@dtl at assign{#3}{#1}%
}%
}%
{%
@@ -9878,11 +9999,12 @@
\DTLiffirstrow
% \end{macrocode}
% Define current \cs{DTLiffirstrow}
+%\changes{2.32}{2019-09-27}{removed \cs{relax}}
% \begin{macrocode}
\gdef\DTLiffirstrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =1\relax
+ =1 %space intended
##1%
\else
##2%
@@ -9896,11 +10018,12 @@
% \end{macrocode}
% Define current \cs{DTLiflastrow}
%\changes{2.12}{2012-11-30}{fixed bug in \cs{DTLiflastrow}}
+%\changes{2.32}{2019-09-27}{removed \cs{relax}}
% \begin{macrocode}
\gdef\DTLiflastrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =\csname dtlrows@#2\endcsname\relax
+ =\csname dtlrows@#2\endcsname
##1%
\else
##2%
@@ -9969,11 +10092,9 @@
= \dtlafterrow
% \end{macrocode}
% Assign commands to the required entries
+%\changes{2.32}{2019-09-27}{changed \cs{ifx} test to \cs{ifblank}}
% \begin{macrocode}
- \ifx\relax#3\relax
- \else
- \@dtl at assign{#3}{#2}%
- \fi
+ \ifblank{#3}{}{\@dtl at assign{#3}{#2}}%
% \end{macrocode}
% Do the main body of text if condition is satisfied
% \begin{macrocode}
@@ -10153,11 +10274,12 @@
\DTLiffirstrow
% \end{macrocode}
% Define current \cs{DTLiffirstrow}
+%\changes{2.32}{2019-09-27}{removed \cs{relax}}
% \begin{macrocode}
\gdef\DTLiffirstrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =1\relax
+ =1 % space intended
##1%
\else
##2%
@@ -10171,11 +10293,12 @@
% \end{macrocode}
% Define current \cs{DTLiflastrow}
%\changes{2.12}{2012-11-30}{fixed bug in \cs{DTLiflastrow}}
+%\changes{2.32}{2019-09-27}{removed \cs{relax}}
% \begin{macrocode}
\gdef\DTLiflastrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =\csname dtlrows@#2\endcsname\relax
+ =\csname dtlrows@#2\endcsname
##1%
\else
##2%
@@ -10225,15 +10348,16 @@
= \expandafter{\dtl at thisrow}%
% \end{macrocode}
% Assign commands to the required entries
+%\changes{2.32}{2019-09-27}{changed \cs{ifx} test to \cs{ifblank}}
% \begin{macrocode}
- \ifx\relax#3\relax
- \else
+ \ifblank{#3}{}
+ {%
% \end{macrocode}
% Need to set \cs{dtlcurrentrow} for \cs{@dtl at assign}
% \begin{macrocode}
\dtlcurrentrow=\expandafter{\dtl at thisrow}%
\@dtl at assign{#3}{#2}%
- \fi
+ }%
% \end{macrocode}
% Do the main body of text if condition is satisfied
% \begin{macrocode}
@@ -14363,7 +14487,7 @@
% Declare package:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datagidx}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datagidx}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Required packages:
% \begin{macrocode}
@@ -18332,24 +18456,50 @@
% need to redefine this if you want accented letters to be sorted
% differently from the unaccented version. This command should
% only be used within a scope.
+%\changes{2.32}{2019-09-27}{added test for kernel version}
+% Need to test kernel version. The new 2019/10/01 version has a
+% different definition of \cs{UTFviii at two@octets} which won't expand
+% UTF-8 characters to \cs{IeC} in the required context. (This is
+% really useful if you want extended characters in labels but not if
+% they need to be stripped.) If you don't want accents stripped then
+% redefine \cs{datagidxstripaccents} to do nothing.
% \begin{macrocode}
-\newcommand*{\datagidxstripaccents}{%
+\@ifl at t@r\fmtversion{2019/10/01}
+{%
+ \newcommand*{\datagidxstripaccents}{%
% \end{macrocode}
% These redefinitions will only work with \cs{edef} or \cs{xdef}:
% \begin{macrocode}
- \let\add at accent@\@secondoftwo
- \let\@text at composite@x\@secondoftwo
- \let\@tabacckludge\@secondoftwo
+ \let\add at accent@\@secondoftwo
+ \let\@text at composite@x\@secondoftwo
+ \let\@tabacckludge\@secondoftwo
% \end{macrocode}
% The following are need with \cs{protected at edef} or \cs{protected at xdef}:
% \begin{macrocode}
- \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
- \def\IeC##1{\@gobbletwo##1}%
+ \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
+ \def\IeC##1{\@gobbletwo##1}%
+ \let\UTFviii at two@octets\UTFviii at two@octets at combine
+ }%
}
+{%
% \end{macrocode}
+% Older kernels:
+% \begin{macrocode}
+ \newcommand*{\datagidxstripaccents}{%
+ \let\add at accent@\@secondoftwo
+ \let\@text at composite@x\@secondoftwo
+ \let\@tabacckludge\@secondoftwo
+ \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
+ \def\IeC##1{\@gobbletwo##1}%
+ }%
+}
+% \end{macrocode}
%\end{macro}
%
%\begin{macro}{\newterm}
@@ -20290,17 +20440,10 @@
% Current location was saved in the previous run. Has it changed?
%\changes{2.15}{2013-07-10}{expanded and sanitize locations before
%comparing them}%
+%This may cause a problem on page boundaries so this code block may
+%be removed in future versions.
% \begin{macrocode}
- \protected at edef\@prev at location{%
- \csname datagidx at prev@loc@\Label\endcsname}%
- \@onelevel at sanitize\@prev at location
- \protected at edef\@cur at location{\CurrentLocation}%
- \@onelevel at sanitize\@cur at location
- \ifdefequal{\@prev at location}{\@cur at location}%
- {}%
- {%
- \global\let\@datagidx at dorerun@warn\@data at rerun@warn
- }%
+ \dtlgidx at checklocationchange
}%
{%
% \end{macrocode}
@@ -20338,6 +20481,24 @@
% \end{macrocode}
%\end{macro}
%
+%\begin{macro}{\dtlgidx at checklocationchange}
+%\changes{2.32}{??}{new}
+% \begin{macrocode}
+\newcommand*{\dtlgidx at checklocationchange}{%
+ \protected at edef\@prev at location{%
+ \csname datagidx at prev@loc@\Label\endcsname}%
+ \@onelevel at sanitize\@prev at location
+ \protected at edef\@cur at location{\CurrentLocation}%
+ \@onelevel at sanitize\@cur at location
+ \ifdefequal{\@prev at location}{\@cur at location}%
+ {}%
+ {%
+ \global\let\@datagidx at dorerun@warn\@data at rerun@warn
+ }%
+}
+% \end{macrocode}
+%\end{macro}
+%
%\begin{macro}{\datagidx at doifdisplayed}
%\begin{definition}
%\cs{datagidx at doifdisplayed}\marg{body}
@@ -20413,7 +20574,7 @@
%\section{Package Declaration}
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{databib}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{databib}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Load required packages:
% \begin{macrocode}
@@ -23336,7 +23497,7 @@
% Declare package:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{databar}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{databar}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Require \sty{xkeyval} package
% \begin{macrocode}
@@ -24643,7 +24804,7 @@
% Declare package:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datapie}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datapie}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Require \sty{xkeyval} package
% \begin{macrocode}
@@ -25445,7 +25606,7 @@
% Declare package:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{dataplot}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{dataplot}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Required packages
% \begin{macrocode}
@@ -27067,7 +27228,7 @@
% Package identification:
% \begin{macrocode}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{person}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{person}[2019/09/27 v2.32 (NLCT)]
% \end{macrocode}
% Requires the \sty{ifthen} package.
% \begin{macrocode}
Modified: trunk/Master/texmf-dist/source/latex/datatool/datatool.ins
===================================================================
--- trunk/Master/texmf-dist/source/latex/datatool/datatool.ins 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/source/latex/datatool/datatool.ins 2019-09-28 21:32:49 UTC (rev 52198)
@@ -1,10 +1,10 @@
-% datatool.ins generated using makedtx version 1.2 2018/12/7 15:44
+% datatool.ins generated using makedtx version 1.2 2019/9/27 19:53
\input docstrip
\preamble
datatool.dtx
- Copyright 2018 Nicola Talbot
+ Copyright 2019 Nicola Talbot
This work may be distributed and/or modified under the
conditions of the LaTeX Project Public License, either version 1.3
Modified: trunk/Master/texmf-dist/tex/latex/datatool/databar.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/databar.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/databar.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `databar.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{databar}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{databar}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\RequirePackage{dataplot}
\newif\ifDTLcolorbarchart
Modified: trunk/Master/texmf-dist/tex/latex/datatool/databib.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/databib.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/databib.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `databib.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{databib}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{databib}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{datatool}
\newcommand*{\dtlbib at style}{plain}
\define at choicekey{databib.sty}{style}{plain,abbrv,alpha}{%
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datagidx.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datagidx.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datagidx.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datagidx.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datagidx}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datagidx}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{datatool}
\RequirePackage{etoolbox}
\RequirePackage{xkeyval}
@@ -2221,16 +2221,32 @@
\def\{{\expandafter\@gobble\string\{}%
\def\}{\expandafter\@gobble\string\}}%
}
-\newcommand*{\datagidxstripaccents}{%
- \let\add at accent@\@secondoftwo
- \let\@text at composite@x\@secondoftwo
- \let\@tabacckludge\@secondoftwo
- \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
- \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
- \def\IeC##1{\@gobbletwo##1}%
+\@ifl at t@r\fmtversion{2019/10/01}
+{%
+ \newcommand*{\datagidxstripaccents}{%
+ \let\add at accent@\@secondoftwo
+ \let\@text at composite@x\@secondoftwo
+ \let\@tabacckludge\@secondoftwo
+ \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
+ \def\IeC##1{\@gobbletwo##1}%
+ \let\UTFviii at two@octets\UTFviii at two@octets at combine
+ }%
}
+{%
+ \newcommand*{\datagidxstripaccents}{%
+ \let\add at accent@\@secondoftwo
+ \let\@text at composite@x\@secondoftwo
+ \let\@tabacckludge\@secondoftwo
+ \expandafter\def\csname \encodingdefault-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname OT1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname T1-cmd\endcsname##1##2##3{##3}%
+ \expandafter\def\csname PD1-cmd\endcsname##1##2##3{##3}%
+ \def\IeC##1{\@gobbletwo##1}%
+ }%
+}
\providecommand{\newterm}{\datagidx at newterm}
\@onlypreamble\newterm
\newcommand{\datagidx at setfieldvalues}[2]{%
@@ -3215,16 +3231,7 @@
{%
\ifcsdef{datagidx at prev@loc@\Label}%
{%
- \protected at edef\@prev at location{%
- \csname datagidx at prev@loc@\Label\endcsname}%
- \@onelevel at sanitize\@prev at location
- \protected at edef\@cur at location{\CurrentLocation}%
- \@onelevel at sanitize\@cur at location
- \ifdefequal{\@prev at location}{\@cur at location}%
- {}%
- {%
- \global\let\@datagidx at dorerun@warn\@data at rerun@warn
- }%
+ \dtlgidx at checklocationchange
}%
{%
\global\let\@datagidx at dorerun@warn\@data at rerun@warn
@@ -3248,6 +3255,18 @@
{}%
}%
}
+\newcommand*{\dtlgidx at checklocationchange}{%
+ \protected at edef\@prev at location{%
+ \csname datagidx at prev@loc@\Label\endcsname}%
+ \@onelevel at sanitize\@prev at location
+ \protected at edef\@cur at location{\CurrentLocation}%
+ \@onelevel at sanitize\@cur at location
+ \ifdefequal{\@prev at location}{\@cur at location}%
+ {}%
+ {%
+ \global\let\@datagidx at dorerun@warn\@data at rerun@warn
+ }%
+}
\newcommand{\datagidx at doifdisplayed}[1]{%
\DTLifnull{\Location}%
{%
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datapie.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datapie.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datapie.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datapie.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datapie}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datapie}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\newif\ifDTLcolorpiechart
\DTLcolorpiecharttrue
Modified: trunk/Master/texmf-dist/tex/latex/datatool/dataplot.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/dataplot.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/dataplot.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `dataplot.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{dataplot}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{dataplot}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\RequirePackage{tikz}
\RequirePackage{datatool}
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datatool-base.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datatool-base.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datatool-base.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datatool-base.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-base}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-base}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{etoolbox}
\RequirePackage{amsmath}
\RequirePackage{xkeyval}
@@ -1435,8 +1435,7 @@
\dtl at split@str##2\@nil
}%
}%
- \def\dtl at split@str##1#2\@nil{%
- \def#4{##1}}%
+ \def\dtl at split@str##1#2\@nil{\def#4{##1}}%
\dtl at splitstr#1#2\@nil
}
\newcommand{\DTLsubstituteall}[3]{%
@@ -1698,6 +1697,8 @@
#4%
}%
}
+\newif\ifdtlcompareskipcs
+\dtlcompareskipcsfalse
\newcommand*{\dtlcompare}[3]{%
\dtl at subnobrsp{#2}{\@dtl at argA}%
\dtl at subnobrsp{#3}{\@dtl at argB}%
@@ -1717,8 +1718,10 @@
#1=1\relax
}%
{%
- \DTLsubstituteall{\@dtl at argA}{ }{\space }%
- \DTLsubstituteall{\@dtl at argB}{ }{\space }%
+ \dtl at setwordbreaksnohyphens{\@dtl at argA}{\@dtl at wordbreak}%
+ \let\@dtl at argA\dtl at string
+ \dtl at setwordbreaksnohyphens{\@dtl at argB}{\@dtl at wordbreak}%
+ \let\@dtl at argB\dtl at string
\expandafter\dtl at getfirst\@dtl at argA\end at dtl@getfirst
\let\dtl at firstA=\dtl at first
\let\dtl at restA=\dtl at rest
@@ -1725,80 +1728,114 @@
\expandafter\dtl at getfirst\@dtl at argB\end at dtl@getfirst
\let\dtl at firstB=\dtl at first
\let\dtl at restB=\dtl at rest
- \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstA}{%
- \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstB}{%
- \expandafter\dtl at setcharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
- \expandafter\dtl at setcharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
- \ifnum\dtl at codeA=-1\relax
- \ifnum\dtl at codeB=-1\relax
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
- \dtl at donext
- \else
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
- \fi
- \else
- \ifnum\dtl at codeB=-1\relax
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
- \else
- \ifnum\dtl at codeA<\dtl at codeB
- #1=-1\relax
- \else
- \ifnum\dtl at codeA>\dtl at codeB
- #1=1\relax
+ \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstA}%
+ {%
+ \expandafter\dtl at ifsingleorUTFviii\expandafter{\dtl at firstB}%
+ {%
+ \expandafter\dtl at setcharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
+ \expandafter\dtl at setcharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
+ \let\dtl at donextcompare\@firstofone
+ \ifdtlcompareskipcs
+ \ifnum\dtl at codeA=0\relax
+ \ifnum\dtl at codeB=0\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\@dtl at argB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
\else
- \ifdefempty{\dtl at restA}%
- {%
- \ifdefempty{\dtl at restB}%
- {%
- #1=0\relax
- }%
- {%
- #1=-1\relax
- }%
- }%
- {%
- \ifdefempty{\restB}%
- {%
- #1=1\relax
- }%
- {%
- \protected at edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}{\dtl at restA}{\dtl at restB}}%
- \dtl at donext
- }%
- }%
+ \ifnum\dtl at codeB=0\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\@dtl at argA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
\fi
\fi
- \fi
- \fi
- }{%
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
- }}{%
- \edef\dtl at donext{%
- \noexpand\dtlcompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
+ \dtl at donextcompare
+ {%
+ \ifnum\dtl at codeA=-1\relax
+ \ifnum\dtl at codeB=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ \fi
+ \else
+ \ifnum\dtl at codeB=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \ifnum\dtl at codeA<\dtl at codeB
+ #1=-1\relax
+ \else
+ \ifnum\dtl at codeA>\dtl at codeB
+ #1=1\relax
+ \else
+ \ifdefempty{\dtl at restA}%
+ {%
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=0\relax
+ }%
+ {%
+ #1=-1\relax
+ }%
+ }%
+ {%
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=1\relax
+ }%
+ {%
+ \protected at edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}{\dtl at restA}{\dtl at restB}}%
+ \dtl at donext
+ }%
+ }%
+ \fi
+ \fi
+ \fi
+ \fi
+ }%
+ }%
+ {%
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
+ {%
+ \edef\dtl at donext{%
+ \noexpand\dtlcompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
}%
}
@@ -2216,63 +2253,92 @@
{%
\expandafter\dtl at setlccharcode\expandafter{\dtl at firstA}{\dtl at codeA}%
\expandafter\dtl at setlccharcode\expandafter{\dtl at firstB}{\dtl at codeB}%
- \ifnum\dtl at codeA=-1\relax
- \ifnum\dtl at codeB=-1\relax
- \edef\dtl at donext{%
- \noexpand\dtlicompare{\noexpand#1}%
- {\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
- \dtl at donext
+ \let\dtl at donextcompare\@firstofone
+ \ifdtlcompareskipcs
+ \ifnum\dtl at codeA=0\relax
+ \ifnum\dtl at codeB=0\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\dtl at restA}{\expandonce\@dtl at argB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
\else
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
- \dtl at donext
+ \ifnum\dtl at codeB=0\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}{\expandonce\@dtl at argA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \let\dtl at donextcompare\@gobble
+ \fi
\fi
- \else
- \ifnum\dtl at codeB=-1\relax
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at firstA\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
+ \fi
+ \dtl at donextcompare
+ {%
+ \ifnum\dtl at codeA=-1\relax
+ \ifnum\dtl at codeB=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare{\noexpand#1}%
+ {\expandonce\dtl at restA}{\expandonce\dtl at restB}}%
+ \dtl at donext
+ \else
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at firstB\expandonce\dtl at restB}}%
+ \dtl at donext
+ \fi
\else
- \ifnum\dtl at codeA<\dtl at codeB
- #1=-1\relax
+ \ifnum\dtl at codeB=-1\relax
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at firstA\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
\else
- \ifnum\dtl at codeA>\dtl at codeB
- #1=1\relax
+ \ifnum\dtl at codeA<\dtl at codeB
+ #1=-1\relax
\else
- \ifdefempty{\dtl at restA}%
- {%
- \ifdefempty{\dtl at restB}%
+ \ifnum\dtl at codeA>\dtl at codeB
+ #1=1\relax
+ \else
+ \ifdefempty{\dtl at restA}%
{%
- #1=0\relax
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=0\relax
+ }%
+ {%
+ #1=-1\relax
+ }%
}%
{%
- #1=-1\relax
+ \ifdefempty{\dtl at restB}%
+ {%
+ #1=1\relax
+ }%
+ {%
+ \edef\dtl at donext{%
+ \noexpand\dtlicompare
+ {\noexpand#1}%
+ {\expandonce\dtl at restA}%
+ {\expandonce\dtl at restB}}%
+ \dtl at donext
+ }%
}%
- }%
- {%
- \ifdefempty{\restB}%
- {%
- #1=1\relax
- }%
- {%
- \edef\dtl at donext{%
- \noexpand\dtlicompare
- {\noexpand#1}%
- {\expandonce\dtl at restA}%
- {\expandonce\dtl at restB}}%
- \dtl at donext
- }%
- }%
+ \fi
\fi
\fi
\fi
- \fi
+ }%
}%
{%
\edef\dtl at donext{%
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datatool-fp.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datatool-fp.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datatool-fp.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datatool-fp.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-fp}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-fp}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\RequirePackage{fp}
\RequirePackage{datatool-base}
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datatool-pgfmath.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datatool-pgfmath.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datatool-pgfmath.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datatool-pgfmath.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool-pgfmath}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool-pgfmath}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\RequirePackage{pgfrcs,pgfkeys,pgfmath}
\ProcessOptionsX
Modified: trunk/Master/texmf-dist/tex/latex/datatool/datatool.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/datatool.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/datatool.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `datatool.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{datatool}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{datatool}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{xkeyval}
\RequirePackage{ifthen}
\RequirePackage{xfor}
@@ -637,7 +637,7 @@
{%
{%
\dtlgetrow{#1}{#2}%
- \@dtl at assign{#3}{#1}%
+ \@dtl at assign{#3}{#1}%
}%
}%
{%
@@ -1330,7 +1330,7 @@
\gdef\DTLiffirstrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =1\relax
+ =1 %space intended
##1%
\else
##2%
@@ -1341,7 +1341,7 @@
\gdef\DTLiflastrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =\csname dtlrows@#2\endcsname\relax
+ =\csname dtlrows@#2\endcsname
##1%
\else
##2%
@@ -1380,10 +1380,7 @@
\expandafter\global
\csname @dtl at next\romannumeral\dtlforeachlevel\endcsname
= \dtlafterrow
- \ifx\relax#3\relax
- \else
- \@dtl at assign{#3}{#2}%
- \fi
+ \ifblank{#3}{}{\@dtl at assign{#3}{#2}}%
\ifthenelse{#1}%
{%
\refstepcounter{DTLrow\romannumeral\dtlforeachlevel}%
@@ -1484,7 +1481,7 @@
\gdef\DTLiffirstrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =1\relax
+ =1 % space intended
##1%
\else
##2%
@@ -1495,7 +1492,7 @@
\gdef\DTLiflastrow##1##2{%
\expandafter\ifnum
\csname c at DTLrow\romannumeral\dtlforeachlevel\endcsname
- =\csname dtlrows@#2\endcsname\relax
+ =\csname dtlrows@#2\endcsname
##1%
\else
##2%
@@ -1522,11 +1519,11 @@
\expandafter\global
\csname @dtl at cur\romannumeral\dtlforeachlevel\endcsname
= \expandafter{\dtl at thisrow}%
- \ifx\relax#3\relax
- \else
+ \ifblank{#3}{}
+ {%
\dtlcurrentrow=\expandafter{\dtl at thisrow}%
\@dtl at assign{#3}{#2}%
- \fi
+ }%
\ifthenelse{#1}%
{%
\refstepcounter{DTLrow\romannumeral\dtlforeachlevel}%
Modified: trunk/Master/texmf-dist/tex/latex/datatool/person.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/datatool/person.sty 2019-09-27 23:53:52 UTC (rev 52197)
+++ trunk/Master/texmf-dist/tex/latex/datatool/person.sty 2019-09-28 21:32:49 UTC (rev 52198)
@@ -7,7 +7,7 @@
%% datatool.dtx (with options: `person.sty,package')
%%
%% datatool.dtx
-%% Copyright 2018 Nicola Talbot
+%% Copyright 2019 Nicola Talbot
%%
%% This work may be distributed and/or modified under the
%% conditions of the LaTeX Project Public License, either version 1.3
@@ -39,7 +39,7 @@
%% Grave accent \` Left brace \{ Vertical bar \|
%% Right brace \} Tilde \~}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{person}[2018/12/07 v2.31 (NLCT)]
+\ProvidesPackage{person}[2019/09/27 v2.32 (NLCT)]
\RequirePackage{ifthen}
\RequirePackage{datatool}
\newcounter{people}
More information about the tex-live-commits
mailing list