summaryrefslogtreecommitdiff
path: root/Master/texmf-dist
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2016-05-10 21:32:09 +0000
committerKarl Berry <karl@freefriends.org>2016-05-10 21:32:09 +0000
commita042eaf934daca8ec58804d0c8cf20be9a4e66d4 (patch)
tree77606a7f750907424cb35f5bfd4c1ffe7e12254a /Master/texmf-dist
parent4bedf8053067f3211ee912a487ee5d03c1f43971 (diff)
xassoccnt (10may16)
git-svn-id: svn://tug.org/texlive/trunk@41014 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist')
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/README6
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.pdfbin94195 -> 94256 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.tex2
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdfbin397246 -> 417841 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex204
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.pdfbin80771 -> 80724 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdfbin68837 -> 68837 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex2
-rw-r--r--Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty81
10 files changed, 266 insertions, 33 deletions
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/README b/Master/texmf-dist/doc/latex/xassoccnt/README
index a1213737d88..b73bb24eda1 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/README
+++ b/Master/texmf-dist/doc/latex/xassoccnt/README
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% README file for xassoccnt.sty
%%
%%
@@ -26,7 +26,7 @@ the associated counters as well. This package can be regarded as a supplement
to the totcount package by Vasileios Koutavas (http://www.ctan.org/pkg/totcount), but
can be used without it too.
-As of 2016/03/05 xassoccnt does not supersede the package assoccnt by the same author, however,
-the older package isn't declared obsolete as of 2016/03/05
+As of 2016/05/10 xassoccnt does not supersede the package assoccnt by the same author, however,
+the older package isn't declared obsolete as of 2016/05/10
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.pdf
index 57b5862500d..17476450b1c 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.tex
index 7eb1543dc21..b015aabf611 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters.tex
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% Coupled counters examples file for xassoccnt.sty
%%
%%
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf
index 7c0a5aab2cb..8b173192452 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex
index 4be0f8154df..c0ff88c6290 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% Documentation file for xassoccnt.sty
%%
%%
@@ -19,7 +19,7 @@
%%
%%
-\documentclass[12pt,a4]{article}
+\documentclass[12pt,a4paper]{article}
@@ -46,7 +46,6 @@
\usepackage{microtype}
\usepackage{caption}
\usepackage[T1]{fontenc}
-%\usepackage{lucidabr}
\usepackage[scaled=0.92]{helvet}
\newlist{codeoptionsenum}{enumerate}{1}
@@ -275,6 +274,8 @@
\NewTotalDocumentCounter{foototal}%
+\RegisterTotalDocumentCounter{section}%
+
\hypersetup{breaklinks=true,
pdftitle={\jobname.pdf -- version \packageversion},
pdfauthor={PACKAGEAUTHOR},
@@ -283,10 +284,11 @@
pdfcreator={LaTeX}
}
-\newcommand{\versionzerofourdate}{2016-01-26}
-\newcommand{\versionzerofivedate}{2016-02-27}
-\newcommand{\currentversiondate}{2016-03-05}
-\newcommand{\versionzerosixdate}{\currentversiondate}
+\newcommand{\versionzerofourdate}{v0.4 2016-01-26}
+\newcommand{\versionzerofivedate}{v0.5 2016-02-27}
+\newcommand{\versionzerosixdate}{v0.6 2016-03-05}
+\newcommand{\currentversiondate}{2016-05-10}
+\newcommand{\versionzerosevendate}{v0.7 \currentversiondate}
\begin{document}
\mmddyyyydate
@@ -339,7 +341,7 @@ This package defines some macros to handle associated counters. The only interce
Internally, the associated counters are stored in one list per counter -- it is not recommended to operate on those lists directly.
-Please note, that this package does not provide means for simultaneous stepping of counters defined by plain \TeX{} \cs{newcount} command.\marginnote{\bcbombe}
+Please note that this package does not provide means for simultaneous stepping of counters defined by plain \TeX{} \cs{newcount} command.\marginnote{\bcbombe}
@@ -350,7 +352,7 @@ Please note, that this package does not provide means for simultaneous stepping
\subsection{Required packages and \TeX\ engine}
-The package does not require features from Xe\LaTeX\ or Lua\LaTeX\ but can be run with those features as well as with \LaTeX\ or pdf\LaTeX. The compilation documentation requires however pdf\LaTeX as of version \packageversion.
+The package does not require features from Xe\LaTeX\ or Lua\LaTeX\ but can be run with those features as well as with \LaTeX\ or pdf\LaTeX. The compilation documentation requires however pdf\LaTeX\ as of version \packageversion.
\begin{itemize}
\item \CHDocPackage{xcolor}
@@ -393,6 +395,13 @@ For potential problems see \cref{subsection:incompatibilities}
\tcbdocmarginnote{\bcbombe\tcbdocupdated{2015-11-10}}
As of version \packageversion\ \CHDocPackage{\PackageDocName} will abort compilation if \CHDocPackage{calc} is loaded after this package, but will issue a warning only if \CHDocPackage{calc} is loaded first.
\end{marker}
+
+
+\begin{marker}
+\tcbdocmarginnote{\tcbdocupdated{\versionzerosevendate}}
+Of course any package other that loads \CHDocPackage{calc} must be loaded before \PackageDocName, i.e. \CHDocPackage{mathtools}.
+\end{marker}
+
\item \CHDocPackage{\PackageDocName} and \CHDocPackage{perpage} are not compatible completely. As of version \packageversion\ it is not possible to use the command \cs{AddAbsoluteCounter} from \CHDocPackage{perpage} -- this feature is provided already by this package.
\tcbdocmarginnote{\tcbdocnew{2015-11-10}}
@@ -844,7 +853,7 @@ This command has no arguments and expands to the name of the counter which was u
\end{docCommand}%
\begin{marker}
- Please note that |LastAddedToCounter| might fail!
+ Please note that \refCom{LastAddedToCounter} might fail!
\end{marker}
@@ -1138,7 +1147,7 @@ This document synchronizes the driver counter value to the associated values. It
\end{docCommand}%
-\begin{dispExample}{breakable=true}
+\begin{dispExample}%[breakable=true]
\SetDocumentCounter{foocntr}{17}
\SetDocumentCounter{foobarcntr}{20}
@@ -1167,6 +1176,135 @@ This document synchronizes the driver counter value to the associated values. It
\end{itemize}
\end{dispExample}
+\section[Loops on multiple counter]{Performing the same action for many counters} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+Sometimes it might be necessary to set the values of many counters at once. This can be done with consecutive \cs{setcounter} statements, for example. This poses no problem, but might become tedious if there are more than three counters or if this task occurs more than once. \CHDocPackage{\PackageDocName} provides some macros that can do the usual operations like stepping, refstepping, adding to, resetting or setting counter values.
+
+
+All macros concerning this feature use the first macro argument having a comma-separated list of counters. Whether there's a second argument depends on the specific nature of the operation that should be performed.
+
+\begin{marker}
+\begin{itemize}
+\item As of version \packageversion\ \PackageDocName\ does not check whether the names given in the first argument refer to counters.
+\item All macros use the extended counter macros, i.e. are aware of associated counters and step them too if their driver counter is given in the argument list. If an associated counter itself is given in the list, this one is stepped or operated on too!
+\end{itemize}
+\end{marker}
+
+
+\begin{docCommand}{LoopAddtoCounters}{\marg{counter1, counter2,\dots}\marg{counter increment/decrement}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+\begin{docCommandArgs}{LoopAddToCounters}%
+The 2nd argument value is added (or subtracted) to the counters given in the list of the 1st argument using the \cs{addtocounter}.
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \item \marg{counter increment/decrement}
+ Specifies the value to be added or subtracted
+
+ No check is performed whether \textbf{is} or \textbf{expands} to an integer value.
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+\begin{docCommand}{LoopResetCounters}{\marg{counter1, counter2,\dots}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+
+\begin{docCommandArgs}{LoopResetCounters}%
+All counters given in the first argument are set to zero using the regular \cs{setcounter}. This is a shorthand version of \refCom{LoopSetCounters} for this specific case.
+
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+\begin{docCommand}{LoopRefstepCounters}{\marg{counter1, counter2,\dots}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+\begin{docCommandArgs}{LoopStepCounters}%
+All counters given in the first argument are stepped using the regular \cs{refstepcounter} to allow labels -- however, only the last counter will have the correct label reference.
+
+\begin{marker}
+ This macro is meant only to complete the number of \cs{Loop...Counters} but is not regarded as being really useful.
+\end{marker}
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+
+\begin{docCommand}{LoopSetCounters}{\marg{counter1, counter2,\dots}\marg{new counter value}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+\begin{docCommandArgs}{LoopAddToCounters}%
+The 2nd argument value is used as new counter value added (or subtracted) to the counters given in the list of the 1st argument using the \cs{addtocounter}.
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \item \marg{new counter value}
+ Specifies the value to be set.
+
+ No check is performed whether \textbf{is} or \textbf{expands} to an integer value.
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+\begin{docCommand}{LoopStepCounters}{\marg{counter1, counter2,\dots}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+\begin{docCommandArgs}{LoopStepCounters}%
+All counters given in the first argument are stepped using the regular \cs{stepcounter}.
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+A more general command for doing "arbitrary" operations with counters (and more setup, for example) is
+
+\begin{docCommand}{LoopCountersFunction}{\marg{counter1, counter2,\dots}\marg{counter operation macro}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+\begin{docCommandArgs}{LoopAddToCounters}%
+The 2nd argument value should hold a macro with any number of arguments, but the last mandatory argument of this macro is reserved for counter name.
+
+\begin{codeoptionsenum}
+ \item \marg{counter1, counter2,\dots}
+ Holds the comma separated list of counter names
+ \item A macro name that is to be called and that operates on a counter.
+ \end{codeoptionsenum}
+\end{docCommandArgs}
+
+\end{docCommand}
+
+
+\begin{dispExample}
+ % We assume we have the counters foocntr and foobarcntr
+ \newcommand{\showcountervalues}[2]{%
+ \textcolor{#1}{\csname the#2\endcsname}% Now, an extra empty line to show the values in rows
+
+ }
+ % Note that the 2nd argument is not given here -- it's added by the \LoopCountersFunction macro
+ \LoopCountersFunction{foocntr,foobarcntr}{\showcountervalues{blue}}
+\end{dispExample}
+
+
+
\section{Coupled counters}\label{sec::coupledcounters}\tcbdocmarginnote{\tcbdocnew{\versionzerofivedate}}
\begin{marker}
@@ -1301,7 +1439,7 @@ The declaration of a total counter is a preamble - only event and \refCom{NewTot
\begin{docKey}{supertotal}{=\meta{true,false}}{false}
Set this key to switch the super total counter on or off.
\end{docKey}
- \item \marg{total counter name}: The name of the total counter. This must be the same like the name of an already existing counter. Internally another counter is defined which has a prefix to prevent name clashes with counter names defined by the package \CHDocPackage{totalcount}. If the counter name does not exist, the compilation exists with an error message.
+ \item \marg{total counter name}: The name of the total counter. This must be the same like the name of an already existing counter. Internally another counter is defined which has a prefix to prevent name clashes with counter names defined by the package \CHDocPackage{totalcount}. If the counter name does not exist, the compilation exits with an error message.
\end{codeoptionsenum}
@@ -1525,6 +1663,38 @@ Principally backing up counter values and restoring them later on is not really
However, there is a solution to this problem: The hypertarget anchors are built up from the specifications of a macro \cs{theH...} where the ellipses stands for the counter name. If for example \cs{theHchapter} is changed after a counter was reset the hypertargets will again be correct, since this will provide a different target name. \cs{BackupCounterValues} does this resetting automatically in an unique way and \cs{RestoreCounterValues} restores as well the old \cs{theH...} macros of all counters that are in the backup list. It tracks the number of calls to \cs{BackupCounterValues} and changes the relevant \cs{theH...} macro definitions to use unique anchor names then -- this way multiple \cs{BackupCounterValues} calls are possible without destroying the hyperlink facicilities with \packagename{hyperref}.
+\section{Counter output} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+Once in a while it might be necessary to provide counter output not only as integer numbers, letters or Roman figures but also using binary, octal or hexdecimal number output. The \CHDocPackage{fmtcount} package has support for this already -- here are some alternatives
+
+\begin{marker}
+None of the commands checks whether the argument refers to counter name.
+\end{marker}
+
+\begin{docCommand}{BinaryValue}{\marg{counter name}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+This command will print the value of the counter using binary digits.
+
+\end{docCommand}
+
+\begin{docCommand}{hexValue}{\marg{counter name}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+This command will print the value of the counter using lowercase hexadecimal digits.
+
+\end{docCommand}
+
+\begin{docCommand}{HexValue}{\marg{counter name}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+This command will print the value of the counter using uppercase hexadecimal digits.
+
+\end{docCommand}
+
+\begin{docCommand}{OctalValue}{\marg{counter name}} \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+
+This command will print the value of the counter using uppercase hexadecimal digits.
+
+\end{docCommand}
+
\clearpage
\section{To - Do list}
@@ -1581,11 +1751,21 @@ write this documentation.
\begin{itemize}
\item
+Version 0.7
+
+\begin{itemize}[label={$\checkmark$}]
+\item Fixed a small bug in the \CHDocPackage{\PackageDocName} version of \cs{stepcounter}
+\item Added some macros that support the output of binary, octal or hexadecimal (both lower/uppercase) values of counters. \tcbdocmarginnote{\tcbdocnew{\versionzerosevendate}}
+ \item Added the \cs{Loop...Counters} macros that performs an action in loop on all given counter names. \tcbdocmarginnote{\tcbdocnew{\versionzerosixdate}}
+\end{itemize}
+
+\item
Version 0.6
\begin{itemize}[label={$\checkmark$}]
\item The coupled counters allow to specify a counter group to which all relevant counters belong, this allows several coupled counter groups then \tcbdocmarginnote{\tcbdocnew{\versionzerosixdate}}
\item Fixed a small bug within backup counter support -- the resetting was not done any more \tcbdocmarginnote{\tcbdocnew{\versionzerosixdate}}
+ \item Added the \CHDocKey{nonumberofruns}\ package option.
\end{itemize}
\item
Version 0.5
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.pdf
index c9bb11db998..5e6876b0467 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.tex
index 148681b603e..d79e6bbe5f4 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver.tex
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% Driver file for xassoccnt.sty
%%
%%
@@ -165,7 +165,7 @@ Value of counterother: \thecounterother
\item Values: \thesection\ \total{totalsections}\ \theothersections\ \fbox{\color{blue}{\total{totaltables}}}\ \thecounterother.
\end{itemize}
-Total value: \TotalValue{equations} and \TotalValue{chapter}
+Total value of equations: \TotalValue{equations}
Internal name: \TotalCounterInternalName{equations}
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf
index ebb70557f4a..1eb68c663cc 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex
index 9d403336eb3..431621c5d22 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% Example file for xassoccnt.sty
%%
%%
diff --git a/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty b/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
index 1c6809697a7..dae0afc37ab 100644
--- a/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
+++ b/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
@@ -1,4 +1,4 @@
-%% LaTeX package xassoccnt - version 0.6 (2016/03/05 -- 14/44/15)
+%% LaTeX package xassoccnt - version 0.7 (2016/05/10 -- 00/41/54)
%% Source file for xassoccnt.sty
%%
%%
@@ -19,10 +19,10 @@
%%
%%
-\def\xassoccntpackageversion{0.6}
+\def\xassoccntpackageversion{0.7}
\NeedsTeXFormat{LaTeX2e}
-\ProvidesPackage{xassoccnt}[2016/03/05 - v\xassoccntpackageversion]
+\ProvidesPackage{xassoccnt}[2016/05/10 - v\xassoccntpackageversion]
\RequirePackage{xcolor}
\RequirePackage{xparse}
@@ -103,7 +103,7 @@
initial .code:n={ \int_set:Nn \l__xassoccnt_initialcountervalue_int {#1}},
sloppy .bool_set:N=\l__xassoccnt_sloppy_newcounter,
autodefinecounters .bool_set:N=\g__xassoccnt_autodefine_counters,
- nonumberofruns .code:n={\typeout{Disabling numberofruns}\bool_gset_true:N \g__xassoccnt_nonumberofruns_bool},
+ nonumberofruns .code:n={\bool_gset_true:N \g__xassoccnt_nonumberofruns_bool},
nonumberofruns .value_forbidden:n = true,
% Choice keys
autodefine .choice:,
@@ -163,7 +163,7 @@
resetbackup .bool_set:N={\l__xassoccnt_resetbackupcounters_bool }
}
-%\keys_set:nn{xassoccnt}{nonumberofruns=false}
+\keys_set:nn{xassoccnt}{nonumberofruns}
\ProcessKeysOptions{xassoccnt}
@@ -760,6 +760,7 @@
\seq_if_exist:cT { \__xassoccnt_drivercontainer:n{#1} }
{ \seq_map_inline:cn {\__xassoccnt_drivercontainer:n{#1} }
{
+% \typeout{Stepping~the~associated~counter(#1):##1}%
\xassoccnt_addtocounter{##1}{\c_one}
}
}
@@ -1274,7 +1275,6 @@
%%%% Redefinition of standard counter macros
-
\RenewDocumentCommand{\stepcounter}{m}{%
\__xassoccnt_translate_countername:cn {l_tmpa_tl} {#1}%
\xassoccnt_is_suspendedcounter:nF{#1}{%
@@ -1293,8 +1293,12 @@
% This is the replacement of \csname cl@#1\endcsname
\xassoccnt_standardaddtocounter{\l_tmpa_tl}{\c_one}
\seq_map_inline:Nn \l__xassoccnt_counterreset_seq {%
- \csname c@##1\endcsname\c_minus_one
- \xassoccnt_standardstepcounter{##1}%
+ \xassoccnt_is_drivercounter:nTF{##1}{%
+ \csname c@##1\endcsname\c_zero % Reset but do not increase
+ }{%
+ \csname c@##1\endcsname\c_minus_one
+ \xassoccnt_standardstepcounter{##1}%
+ }
}
\__xassoccnt_step_associatedcounters:n {\l_tmpa_tl} % step the remaining associated counters
}% End of not empty reset list
@@ -1304,8 +1308,6 @@
-
-
\NewDocumentCommand{\xassoccnt_addtocounter}{mmO{}}{%
% Only add to a counter if this counter isn't on the suspended counters list!
\xassoccnt_is_suspendedcounter:nF{#1}{%
@@ -1590,19 +1592,28 @@
}
-\NewDocumentCommand{\TotalValue}{m}{%
+\newcommand{\TotalValue}[1]{%
+% \seq_use:Nn \g__xassoccnt_totalcounter_container {\par}%
\tl_set:Nx \l_tmpa_tl {\__xassoccnt_expand_totalcountername:n{#1}}
\tl_set:Nx \l_tmpb_tl {#1}%
+ \typeout{Foo}
\seq_if_in:NnTF \g__xassoccnt_supertotalcounter_container {\l_tmpb_tl }{%
\tl_set:Nx \l_tmpa_tl {\__xassoccnt_expand_totalcountername:n{#1}}
}{%
\seq_if_in:NVF \g__xassoccnt_totalcounter_container {\l_tmpa_tl }{%
- \tl_set:Nn \l_tmpa_tl {#1}%
+ \tl_set:NV \l_tmpa_tl {#1}%
}
}
- \number\value{\l_tmpa_tl}%
+ \number\value{\tl_use:N \l_tmpa_tl}%
}
+\newcommand{\TotalValueOld}[1]{%
+ %\tl_set:Nx \l_tmpa_tl {\__xassoccnt_expand_totalcountername:n{#1}}
+ %\tl_set:Nx \l_tmpb_tl {#1}%
+ \number\value{\__xassoccnt_expand_totalcountername:n{#1}}%
+}
+
+
\cs_new:Nn \__xassoccnt_writetotalcounters:nn {%
\immediate\write\@mainaux {%
\string\IfIsDocumentCounterF\expandafter{\__xassoccnt_expand_totalcountername:n{#1}}{\string\DeclareDocumentCounter\expandafter{\__xassoccnt_expand_totalcountername:n{#1}}}
@@ -1874,6 +1885,48 @@
}
+%%%% More simplifying macros for doing similar steps for all counters in the comma separated list
+
+
+\NewDocumentCommand{\LoopAddtoCounters}{+mm}{%
+ \clist_set:Nx \l_tmpa_clist {#1}%
+ \clist_map_inline:Nn \l_tmpa_clist { \addtocounter{##1}{#2} }
+}
+
+\NewDocumentCommand{\LoopRefstepCounters}{+mm}{%
+ \clist_set:Nx \l_tmpa_clist {#1}%
+ \clist_map_inline:Nn \l_tmpa_clist { \refstepcounter{##1}{#2} }
+}
+
+\NewDocumentCommand{\LoopResetCounters}{+m}{%
+ \LoopSetCounters{#1}{0}
+}
+
+\NewDocumentCommand{\LoopStepCounters}{+m}{%
+ \clist_set:Nx \l_tmpa_clist {#1}%
+ \clist_map_inline:Nn \l_tmpa_clist { \stepcounter{##1} }
+}
+
+\NewDocumentCommand{\LoopSetCounters}{+mm}{%
+ \clist_set:Nx \l_tmpa_clist {#1}%
+ \clist_map_inline:Nn \l_tmpa_clist { \setcounter{##1}{#2} }
+}
+
+\NewDocumentCommand{\LoopCountersFunction}{+m+m}{%
+ \clist_set:Nx \l_tmpa_clist {#1}%
+ \clist_map_inline:Nn \l_tmpa_clist { #2{##1} }
+}
+
+
+
+
+%%%%
+
+%% Counter-Values-Mapping-To-Something-Different - Macros
+
+
+
+
%%%%%%%%%%%%%%%%%%%%
@@ -1901,7 +1954,7 @@
\EnableNumberofrunsTF{%
\NewTotalDocumentCounter[supertotal=true]{numberofruns}
\AtBeginDocument{%
- \stepcounter{numberofruns}
+ \stepcounter{numberofruns}%
}
}{}