summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-01-04 23:38:42 +0000
committerKarl Berry <karl@freefriends.org>2018-01-04 23:38:42 +0000
commitbb83d426056841b56f02baa144b334892a340fa6 (patch)
tree46b91758e961d900de69f942996619d192262a9d
parentc64fcd9b2946cbb907d84980abd0cc494f729909 (diff)
xassoccnt (4jan18)
git-svn-id: svn://tug.org/texlive/trunk@46209 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/README8
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.pdfbin84356 -> 0 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.tex333
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.pdfbin11903 -> 11903 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.pdfbin14012 -> 14012 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.pdfbin15994 -> 15994 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.pdfbin94195 -> 94195 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdfbin566988 -> 533404 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex257
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.pdfbin81114 -> 81114 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdfbin68358 -> 68358 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.pdfbin46915 -> 46915 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.pdfbin42925 -> 42925 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.pdfbin40835 -> 40835 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.pdfbin31630 -> 31630 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.pdfbin66329 -> 66329 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.pdfbin35605 -> 35605 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.pdfbin60530 -> 60530 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.tex4
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.pdfbin63555 -> 63555 bytes
-rw-r--r--Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.tex4
-rw-r--r--Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty194
34 files changed, 142 insertions, 706 deletions
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/README b/Master/texmf-dist/doc/latex/xassoccnt/README
index 3cb8eb98b80..0d667b567fa 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/README
+++ b/Master/texmf-dist/doc/latex/xassoccnt/README
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:06:34)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% README file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -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 2017/07/28 xassoccnt does not supersede the package assoccnt by the same author, however,
-the older package isn't declared obsolete as of 2017/07/28
+As of 2018/01/03 xassoccnt does not supersede the package assoccnt by the same author, however,
+the older package isn't declared obsolete as of 2018/01/03
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.pdf
deleted file mode 100644
index 69660c01405..00000000000
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.pdf
+++ /dev/null
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.tex
deleted file mode 100644
index 8926bc45225..00000000000
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_backupcounters_example.tex
+++ /dev/null
@@ -1,333 +0,0 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
-%% Example file for backup counters file for xassoccnt.sty
-%%
-%%
-%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2016 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
-%% -------------------------------------------------------------------------------------------
-%%
-%% This work may be distributed and/or modified under the
-%% conditions of the LaTeX Project Public License, either version 1.3
-%% of this license or (at your option) any later version.
-%% The latest version of this license is in
-%% http://www.latex-project.org/lppl.txt
-%% and version 1.3 or later is part of all distributions of LaTeX
-%% version 2005/12/01 or later.
-%%
-%%
-%% This work has the LPPL maintenance status `author-maintained`
-%%
-%%
-
-\documentclass{book}
-
-\usepackage{xassoccnt}
-\usepackage{blindtext}
-%\usepackage[T1]{fontenc}
-%\usepackage[utf8]{inputenc}
-\usepackage{hyperref}
-
-\DeclareBackupCountersGroupName{sectiontree}
-\DeclareBackupCountersGroupName{chaptertree}
-
-\AssignBackupCounters[name=chaptertree,cascading=true]{chapter} % Use all counters in the chapter counter driver reset list
-
-
-\newcommand{\outputit}[1]{\csname the#1\endcsname\par}
-
-\begin{document}
-Checking for existence of a backup counter group:
-
-
-\IsBackupCounterGroupTF{chaptertree}{Yes, \fbox{chaptertree} is a backup counter group}{no, \fbox{chaptertree} is no backup counter group}
-
-\IsBackupCounterGroupT{chaptertree}{Yes, \fbox{chaptertree} is a backup counter group}
-
-\IsBackupCounterGroupF{foochaptertree}{No, \fbox{foochaptertree} is no backup counter group}
-
-\IsBackupCounterGroupTF{secondchaptertree}{Yes, \fbox{secondchaptertree} is a backup counter group}{no, \fbox{secondchaptertree} is no backup counter group}
-\clearpage
-\tableofcontents
-\listoffigures
-
-\chapter{First regular chapter}
-
-\section{First section in first regular chapter}
-
-\subsection{First subsection in first regular section}
-
-
-
-\begin{figure}
-\caption{My nice figure in 1st regular chapter}
-\end{figure}
-
-
-\begin{figure}
-\caption{My other nice figure in 1st regular chapter}
-\end{figure}
-
-
-
-\chapter{Second regular chapter}
-
-\section{First section in 2nd regular chapter}
-
-\subsection{1st subsection in 1st regular section of 2nd regular chapter}
-
-
-\begin{figure}
-\caption{My nice figure in 2nd regular chapter}
-\end{figure}
-
-
-\begin{figure}
-\caption{My other nice figure in 2nd regular chapter}
-\end{figure}
-
-
-
-
-
-\chapter{Third regular chapter}
-
-\section{1st section in 3rd regular chapter}
-
-\subsection{1st subsection in 1st regular section of 2nd regular chapter}
-\subsection{2nd subsection in 1st regular section of 2nd regular chapter}
-
-\section{2nd section in 3rd regular chapter}
-
-\subsection{1st subsection in 2nd regular section of 2nd regular chapter}
-\subsection{2nd subsection in 2nd regular section of 2nd regular chapter}
-
-\chapter{Fourth regular chapter}
-
-
-
-\BackupCounterGroup[backup-id={firstchaptertree},cascading=true]{chaptertree}
-
-
-
-\chapter{First chapter after backup command}
-
-\section{1st section in 1st backup chapter}
-
-\subsection{1st subsection in 1st regular section of 1st backup chapter}
-\subsection{2nd subsection in 1st regular section of 1st backup chapter}
-
-\section{2nd section in 1st backup chapter}
-
-\subsection{1st subsection in 2nd regular section of 1st backup chapter}
-\subsection{2nd subsection in 2nd regular section of 1st backup chapter}
-
-
-\begin{figure}
-\caption{My nice figure in 1st backup chapter}
-\end{figure}
-
-
-\begin{figure}
-\caption{My other nice figure in 1st backup chapter}
-\end{figure}
-
-
-
-
-
-\chapter{Second chapter after backup command}
-
-\section{1st section in 2nd backup chapter}
-
-\subsection{1st subsection in 1st regular section of 2nd backup chapter}
-\subsection{2nd subsection in 1st regular section of 2nd backup chapter}
-
-\section{2nd section in 2nd backup chapter}
-
-\subsection{1st subsection in 2nd regular section of 2nd backup chapter}
-\subsection{2nd subsection in 2nd regular section of 2nd backup chapter}
-
-
-\chapter{Third chapter after first backup command}
-
-
-
-\BackupCounterGroup[backup-id={secondchaptertree}]{chaptertree}
-
-\chapter{First chapter after second backup command}
-
-% Now restore the full chaptertree command with the backup id firstchaptertree, but don't keep the state afterwards.
-
-Checking the backup state: \IsBackupStateTF{chaptertree}{firstchaptertree}{Yes}{No}
-
-Checking the backup state again: \IsBackupStateT{chaptertree}{firstchaptertree}{Yes}
-
-Checking the backup state again: \IsBackupStateF{chaptertree}{foochaptertree}{No, it's no backup state}
-
-
-\RestoreBackupCounterGroup[keep-after-restore=false,backup-id={firstchaptertree}]{chaptertree}
-
-Now checking after restore with `keep-after-restore=false`:
-
-Checking the backup state: \IsBackupStateTF{chaptertree}{firstchaptertree}{Yes}{No}
-
-Checking the backup state again: \IsBackupStateT{chaptertree}{firstchaptertree}{Yes}
-
-Checking the backup state again: \IsBackupStateF{chaptertree}{foochaptertree}{No, it's no backup state}
-
-
-
-
-
-\chapter{First chapter after restoring of first backup}
-
-
-\section{1st section in 1st backup chapter of 2nd backup}
-
-\subsection{1st subsection in 1st regular section of 2nd backup chapter}
-\subsection{2nd subsection in 1st regular section of 2nd backup chapter}
-
-\section{2nd section in 2nd backup chapter of 2nd backup}
-
-\subsection{1st subsection in 2nd regular section of 2nd backup chapter}
-\subsection{2nd subsection in 2nd regular section of 2nd backup chapter}
-
-
-\chapter{Another chapter after restoring}
-
-% Now let us restore only some of the counters
-
-
-\section{First section of another chapter}
-
-\begin{figure}
-\caption{My nice figure}
-\end{figure}
-
-\begin{figure}
-\caption{My very nice figure}
-\end{figure}
-
-
-\subsection{First subsection of 1st section of another chapter}
-
-\section{Now another section}
-
-
-\RestoreBackupCounterGroup[keep-after-restore=true,backup-id={secondchaptertree}]{chaptertree}
-
-
-\chapter{Another chapter after restoring with secondchaptertree}
-
-% Now let us restore only some of the counters
-
-
-\section{First section of another chapter}
-
-\begin{figure}
-\caption{My nice figure}
-\end{figure}
-
-\begin{figure}
-\caption{My very nice figure}
-\end{figure}
-
-
-\subsection{First subsection of 1st section of another chapter}
-
-\section{Now another section}
-
-
-\RestoreBackupCounterGroup[keep-after-restore=true,backup-id={secondchaptertree},restore-id=first]{chaptertree}
-
-
-\chapter{Another chapter after restoring, secondchaptertree,other restore-id}
-
-% Now let us restore only some of the counters
-
-
-\section{First section of another chapter}
-
-\begin{figure}
-\caption{My nice figure}
-\end{figure}
-
-\begin{figure}
-\caption{My very nice figure}
-\end{figure}
-
-
-\subsection{First subsection of 1st section of another chapter}
-
-\section{Now another section}
-
-\RestoreBackupCounterGroup[keep-after-restore=true,backup-id={secondchaptertree},restore-id=newrestore]{chaptertree}
-
-
-\chapter{Another chapter after restoring, secondchaptertree, yet another restore-id}
-
-% Now let us restore only some of the counters
-
-
-\section{First section of another chapter}
-
-\begin{figure}
-\caption{My nice figure}
-\end{figure}
-
-\begin{figure}
-\caption{My very nice figure}
-\end{figure}
-
-
-\subsection{First subsection of 1st section of another chapter}
-
-\section{Now another section}
-
-
-%%%%%
-
-
-%\ClearBackupCounterGroups{chaptertree}
-
-%\DeleteBackupCounterGroups{chaptertree}
-
-
-\RemoveCountersFromBackupGroup{chaptertree}{section}
-
-
-
-
-\RestoreBackupCounterGroup[keep-after-restore=true,backup-id={secondchaptertree},restore-id=renewrestore]{chaptertree}
-
-%\chapter{Another chapter after restoring, secondchaptertree, yet another restore-id}
-
-
-
-Removing a specific backup-id
-
-%\ClearCounterBackupState[backup-id=secondchaptertree]{chaptertree}{chapter}
-
-
-\ClearBackupState[backup-id=secondchaptertree]{chaptertree}
-
-
-
-\section{First section of another chapter}
-
-\begin{figure}
-\caption{My nice figure}
-\end{figure}
-
-\begin{figure}
-\caption{My very nice figure}
-\end{figure}
-
-
-\subsection{First subsection of 1st section of another chapter}
-
-\section{Now another section}
-
-
-
-\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.pdf
index 659edd27523..f66a2f7bb60 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.tex
index d6056b3f7dc..19eafad8f05 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterformats_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for defining new counter formats file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.pdf
index 5e59fd25f90..17c42bb2271 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.tex
index f9b9b127513..72bc14c45a9 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counterhierarchy_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for defining new counter hierarchies file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.pdf
index 4bcc0ab59fb..3719e8d52be 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.tex
index 4c0cd526d87..41bf672d18d 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_counternames_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file the the usage of counter names file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.pdf
index 3b8112238e3..c6200f65d2f 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.tex
index 71446a8d103..68943edead3 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_coupledcounters_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for coupled counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2016 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2016 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.pdf
index a6cf1531bd7..e41f59f604b 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 95fbf028764..b37702b401f 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_doc.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Documentation file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2015 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2015 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -109,6 +109,8 @@
\@namedef{xassoccntversion1.5}{v1.5 2017-07-28}
+\@namedef{xassoccntversion1.6}{v1.6 2018-01-03}
+
\newcommand{\authorname}{Autor}
@@ -141,7 +143,6 @@
#1
}
-
\presetkeys{chdoc}{packageauthor={Christian Hupfer}}{}%
\NewDocumentCommand{\CHPackageTitlePage}{O{}mO{}}{%
\setkeys{chdoc}{packageauthor={Christian Hupfer},filepurpose={Documentation},#1}%
@@ -390,7 +391,7 @@
\hypersetup{breaklinks=true,
pdftitle={\jobname.pdf -- version \packageversion},
- pdfauthor={PACKAGEAUTHOR},
+ pdfauthor={Dr. Christian Hupfer},
pdfsubject={Documentation of \PackageDocName\ package},
pdfkeywords={LaTeX, counters},
bookmarksopen=true,
@@ -413,7 +414,7 @@
\bfseries
\node [concept] {Counters}
child[concept color=red!30!yellow,grow=30] { node [concept] {Associated counters}}
- child[grow=85,white,concept color=red!80!blue] { node [concept] {Backup \& Restore of counters}}
+% child[grow=85,white,concept color=red!80!blue] { node [concept] {Backup \& Restore of counters}}
child[grow=300,concept color=yellow!90!red] { node [concept] {Extensions to \LaTeXe} child[grow=230,concept color={yellow!20!green}] {node [concept] {Query macros}}
child[grow=290,concept color={yellow!30!cyan}] {node [concept] {Document counters}}
}
@@ -1758,250 +1759,14 @@ This commands tests, whether a given counter name is a driver counter and expand
\end{docCommand}%
+%\section{Backup and restoration features}
\section[Counter backup/restoration]{Backup and restore of counter values}\CHDocNew{1.0}\label{section::new_backuprestore}
-It might be necessary to interrupt the current sectioning, e.g. including another document's structure (an external paper, for example) such that the counting should start again and after finishing of the external structure the old values should be restored.
-
-
\begin{marker}
- Since version \CHDocFullVersion{1.0} the commands and feature behaviour of backup and restoration of counter values has changed.
-
- The old behaviour is still available using the macros \cs{Former...} prefixed macros, see \cref{section::old_backuprestore} for this.
+ This feature is currently disabled!
\end{marker}
-\subsection{Key philosophy in backup/restore}
-
-The basic idea is to provide a scheme that allows easy storage and restoration of counter values. For a single counter this is quite easy, using some other temporary counter, storing the old value there and copy the values back at the right position -- if many counters should be controlled to have a backup this procedure might get tedious, however.
-
-\CHDocPackage{xassoccnt} provides some tools to define groups of counters that should be under control of backup and restoration. A backup counter group can be used multiple times, each using an individual ID, this allows maintaining 'complete' counter states and reinjecting them at any position later on.
-
-Those are the basic steps (in pseudo code) to use the backup feature:
-
-\begin{enumerate}
- \item Define a symbolic backup counter group name
-
- Note that counter group names are providing something like a namespace. A group of coupled counters (see \namecref{sec::coupledcounters} \nameref{sec::coupledcounters}) may have the same name as a group of counters designed to be backed up -- however, each feature has its own namespace. In each namespace there can be only one counter group with a specific name, duplicates are not allowed within the same feature namespace.
- \item Populate the counter group name with counter names
- \item Define a backup state and a corresponding id
- \item Restore at any place
-\end{enumerate}
-
-\subsection{The default counter group "scratch"}
-
-There is a default counter group for backup named "scratch", if no specific counter group name is given using the \refKey{name} option (see \cref{subsubsec::common_options_backuprestore} for a detailed description of available backup/restore options).
-
-\subsection{Description of basic backup/restore macros}
-
-\subsubsection{Common options to (most) of the backup/restore macros} \label{subsubsec::common_options_backuprestore}
-
-\begin{itemize}
-\item
- \begin{docKey}[][]{resetbackup}{=\meta{true/false}}{initially true}
- This key decides whether \textbf{all} counters in the backup list should be reset to zero or should keep the current value when the backup command is given. The default value is \meta{true}.
- \end{docKey}
-\item \begin{docKey}[][]{cascading}{=\meta{true/false}}{initially false}
- This key decides whether all counters in the reset list of a driver counter shall be added to the counter group -- the driver counter is added itself too. If the driver counter has no reset list, it is added nevertheless.
-
- Please note that the reset lists of the individual counters are tracked as well -- this is done recursively.
-
- This provides a very convenient feature to backup and restore the value of a certain sectioning level, say \cs{chapter}. Using \refKey{cascading} this would mean\footnote{Assuming \CHDocClass{book} is used, for example!} that \CHDocCounter{chapter}, \CHDocCounter{section}, \CHDocCounter{subsection},\CHDocCounter{subsubsection}, \CHDocCounter{paragraph}, \CHDocCounter{subparagraph}, \CHDocCounter{equation}, \CHDocCounter{figure} and \CHDocCounter{table} would be added to the counter group.
- \end{docKey}
- \item \begin{docKey}[][]{backup-id}{=string}{no default value}
- This key declares a string-like backup id under which the backup of a certain group is stored and can be retrieved later on. The id should be a string containing only alphanumeric characters.
- \end{docKey}
-\item
- \begin{docKey}[][]{restore-id}{=string}{no default value}
- This key declares a string-like restore id for unique \CHDocPackage{hyperref} names. The id should be a string containing only alphanumeric characters. \end{docKey}
- This key is only needed if the same backup-id should be restored more than once and the package \CHDocPackage{hyperref} is used in order to provide unique hyper anchors.
- \item \begin{docKey}[][]{keep-after-restore}{=\meta{true/false}}{initially false}
- This key decides whether the values of a certain backup id (see \refKey{backup-id}) shall be kept after a restore has been issued. The default operation is to remove the \refKey{backup-id} and the values of the counters belonging to the given \refKey{backup-id}.
-
- This option is useful if the same backup state (i.e. \refKey{backup-id}) is to be used more than once.
-
- Reusing the same counter group for restore after having restored them already with the \refKey{keep-after-restore} option being false will be ignored, i.e. the counter values are not changed.
-\end{docKey}
-
-\item \refKey{name}
- The meaning of this key is basically the same as for the \nameref{sec::coupledcounters} feature. However, depending on the stage of the backup/restore process the precise action differs:
- \begin{itemize}
- \item If \refKey{name} is used in \refCom{AssignBackupCounters} the counters are added to group indicated by the value of \refKey{name}.
- \item If \refKey{name} is used either for \refCom{BackupCounterGroup} or in \refCom{RestoreBackupCounterGroup} to indicate the counter group for a certain backup state, either for storing or restoring.
- \end{itemize}
-\end{itemize}
-
-
-\subsubsection{Core backup/restore macros}
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{BackupCounterGroup}{\oarg{options}\marg{counter group name}}
- Concerning the backup feature this performs the storing of counter values at the position where the command is expanded!
- A backup operation needs
- \begin{itemize}
- \item \refKey{backup-id} to be able to refer to a certain backup state
- \item \refKey{name} to identify the group of counters
- \end{itemize}
-\end{docCommand}
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{RestoreBackupCounterGroup}{\oarg{options}\marg{counter group name}}
- This command restores the value of the given counter group.
- Useful options are (see \nameref{subsubsec::common_options_backuprestore})
- \begin{itemize}
- \item \refKey{backup-id}
- \item \refKey{keep-after-restore}
- \item \refKey{restore-id}
- \item \refKey{name}
- \end{itemize}
-\end{docCommand}
-
-
-\subsubsection{Declaring counter groups}
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{DeclareBackupCountersGroupName}{\oarg{}\marg{counter group name}}
- This command declares (better: reserves a name for a backup counter group) -- the name has to be specified as first mandatory argument.
-
- A counter group name consists of alphanumeric characters, special symbols etc. are not allowed. The name must not contain commas!
-
- As of version \packageversion\ the optional argument is not used and reserved for later purposes.
-\end{docCommand}
-
-\subsubsection{Populating counter groups}
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{AssignBackupCounters}{\oarg{options}\marg{counter name1,counter name2,\dots}}
- This macro populates the counter group (given as optional key - value \refKey{name}) with the comma separated list of counters from the first mandatory argument. The meaning of \refKey{name} is the same as in \nameref{sec::coupledcounters}, but the counter group names are not related to that feature -- the namespace is safe then.
-
- Some important notes about the behaviour of \refCom{AssignBackupCounters}
- \begin{itemize}
- \item If \refKey{name} is not given or empty, the default counter group "scratch" is used.
-
- \item If the counter group given to \refKey{name} does not exist, it will be created automatically.
- \end{itemize}
-
-\end{docCommand}
-
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{AddBackupCounter}{\oarg{options}\marg{counter name1,counter name2,\dots}}
- This command is similar to \refCom{AssignBackupCounters}, adding counters to a counter group named by \refKey{name} option. If the counter group name does not exist, no action is performed, i.e. the adding operation is ignored.
-\end{docCommand}
-
-
-\subsubsection[Clearing backup states]{Clearing backup states}\label{subsubsec::clearingbackupstates}
-
-It might be necessary to remove a certain backup state, i.e. a collection of counter values to be referred to with a \refKey{backup-id}. This can be done either for a certain counter (with \refCom{ClearCounterBackupState}) in a counter group only or for all counters in group (with \refCom{ClearBackupState}).
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{ClearCounterBackupState}{\oarg{options}\marg{countergroup name}\marg{counter name}}
- This macro removes the given backup-id state value for a specific counter only. Use the \refKey{backup-id} option in the first optional argument to specify which backup-id should be cleared.
-
- \begin{itemize}
- \item If the backup-id does not exist, the operation is ignored silently.
- \item The counter is still part of the group, but can't be restored to the previous state that was identified with \refKey{backup-id}.
- \end{itemize}
-
- \marginnote{\bcbombe}Use this macro with care!
- \smallskip
-\end{docCommand}
-
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{ClearBackupState}{\oarg{options}\marg{countergroup name}}
- This macro removes the given backup-id state value for a whole counter group. Use the \refKey{backup-id} option in the first optional argument to specify which backup-id should be cleared.
-
- \begin{itemize}
- \item If the backup-id does not exist, the operation is ignored silently.
- \item The \refKey{backup-id} is removed from the list of possible backup-ids for the relevant countergroup.
- \end{itemize}
-\end{docCommand}
-
-
-
-
-\subsubsection[Clearing backup groups]{Clearing and deleting backup counter groups}\label{subsubsec::clearingdeletingbackupcountergroups}
-
-From time to time it might be necessary to remove counters from a group or to clear the whole group or remove even the whole group. Those operations can be achieved with \refCom{RemoveCountersFromBackupGroup}, \refCom{ClearBackupCounterGroups} and \refCom{DeleteBackupCounterGroups}. All macros remove at least all stored values belonging to a counter group. A \refCom{RestoreBackupCounterGroup} call does nothing after any of the mentioned macros have been issued.
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{RemoveCountersFromBackupGroup}{\oarg{options}\marg{countergroup name}\marg{counter name 1, counter name 2,\dots}}
- This command removes the given counter names from a counter group. The stored values are deleted completely and are lost afterwards. A non-existing counter group name is ignored as well as counters that do not belong to the given group name.
-
- As of version \packageversion\ the optional argument is not used and reserved for later purposes.
-
- If complete counter groups shall be deleted and be unavailable afterwards, use
-
-\refCom{DeleteBackupCounterGroups} instead.
-\end{docCommand}
-
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{ClearBackupCounterGroups}{\oarg{options}\marg{countergroup name 1, countergroup name 2,\dots}}
- This command removes all names of the counter groups given as comma separated list in the 2nd argument, the internal storage of counter values is removed as well, i.e. older counter values aren't available any longer. The counter group names remain valid, any subsequent call to \refCom{BackupCounterGroup} or \refCom{RestoreBackupCounterGroup} with one of the provided group names will be ignored.
-
- As of version \packageversion\ the optional argument is not used and reserved for later purposes.
-
- If counter groups shall be deleted and be unavailable, use \refCom{DeleteBackupCounterGroups}.
-\end{docCommand}
-
-
-\begin{docCommand}[before={\CHDocNew{1.0}}]{DeleteBackupCounterGroups}{\oarg{options}\marg{countergroup name 1, countergroup name 2,\dots}}
- This command clears the counter groups given as comma separated list in the 2nd argument with \refCom{ClearBackupCounterGroups} and removes the names as well, i.e. those names are not available any longer.
-
- As of version \packageversion\ the optional argument is not used and reserved for later purposes.
-\end{docCommand}
-
-
-\subsection{Query for backup features}\label{subsec::querybackupmacros}\CHDocNew{1.0}
-
-As usual, some macros to ask whether a certain counter is under backup control or whether a certain \refKey{backup-id} exists might be useful!
-
-
-\subsubsection{Querying for backup counter group existence}\label{subsec::querybackupcountergroup}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterGroupTF}{\marg{counter group name}\marg{true branch}\marg{false branch}}
-This macro tests if the given name is a backup counter group and expands to the \meta{true}/\meta{false} branch accordingly. There are two short-circuit commands: \refCom{IsBackupCounterGroupT} and \refCom{IsBackupCounterGroupF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterGroupT}{\marg{counter group name}\marg{true branch}}
-This macro tests if the given name is a backup counter group and expands to the \meta{true} branch accordingly. There are two related macros: \refCom{IsBackupCounterGroupF} and \refCom{IsBackupCounterGroupTF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterGroupF}{\marg{counter group name}\marg{false branch}}
-This macro tests if the given name is a backup counter group and expands to the \meta{false} branch accordingly. There are two related macros: \refCom{IsBackupCounterGroupT} and \refCom{IsBackupCounterGroupTF}.
-\end{docCommand}
-
-
-
-\subsubsection{Querying for backup counter entity}\label{subsec::querybackupmacros}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterTF}{\marg{counter name}\marg{true branch}\marg{false branch}}
-This macro tests if a counter is under the administration of the backup counter commands and expands to the relevant \meta{true}/\meta{false} branch then. There are two short-circuit commands: \refCom{IsBackupCounterT} and \refCom{IsBackupCounterF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterT}{\marg{counter name}\marg{true branch}}
-This macro tests if a counter is under the administration of the backup counter commands and expands to the \meta{true} branch then. There are related commands: \refCom{IsBackupCounterTF} and \refCom{IsBackupCounterF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupCounterF}{\marg{counter name}\marg{false branch}}
-This macro tests if a counter is under the administration of the backup counter commands and expands to the \meta{false} branch if this not the case. There are related commands: \refCom{IsBackupCounterTF} and \refCom{IsBackupCounterT}.
-\end{docCommand}
-
-
-\subsubsection{Querying for backup state entity}\label{subsec::querybackupstate}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupStateTF}{\marg{counter group name}\marg{counter backup-id}\marg{true branch}\marg{false branch}}
-This macro tests if the backup-id exists for the given counter group and executes the relevant \meta{true}/\meta{false} branch accordingly. There are two short-circuit commands: \refCom{IsBackupStateT} and \refCom{IsBackupStateF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupStateT}{\marg{counter group name}\marg{counter backup-id}\marg{true branch}}
-This macro tests if the backup-id exists for the given counter group and executes the relevant \meta{true} branch accordingly. There are two related: \refCom{IsBackupStateTF} and \refCom{IsBackupStateF}.
-\end{docCommand}
-
-\begin{docCommand}[after={\CHDocNew{1.0}\par}]{IsBackupStateF}{\marg{counter group name}\marg{counter backup-id}\marg{false branch}}
-This macro tests if the backup-id exists for the given counter group and executes the relevant \meta{false} branch accordingly. There are two related: \refCom{IsBackupStateTF} and \refCom{IsBackupStateT}.
-\end{docCommand}
-
-
-\subsection{Some notes on the backup features} \label{subsec::backup_and_hyperref}
-
-Principally backing up counter values and restoring them later on is not really difficult -- with one exception: If the \CHDocPackage{hyperref} package is used, the counter values form up the hypertarget anchors, for example \texttt{chapter.1} for the first chapter. If the chapter counter is reset, there would be a chapter with number one again and as well an anchor name \texttt{chapter.1} -- \CHDocPackage{hyperref} will complain 'only' about this but it will put the wrong hyperlink as well, for example for the table of contents and the bookmarks -- this is an undesirable feature.
-
-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. \refCom{BackupCounterGroup} does this resetting automatically in an unique way and \refCom{RestoreBackupCounterGroup} restores as well the old \cs{theH...} macros of all counters that are in the backup list. It tracks the number of calls to \refCom{BackupCounterGroup} and changes the relevant \cs{theH...} macro definitions to use unique anchor names then -- this way multiple \refCom{BackupCounterGroup} calls are possible without destroying the hyperlink facilities with \CHDocPackage{hyperref}.
-
-
\section{Coupled counters}\label{sec::coupledcounters}\CHDocNew{0.5}
\begin{marker}
@@ -2676,6 +2441,12 @@ write this documentation.
\begin{itemize}[itemsep=15pt]
+\item \CHDocFullVersion{1.6}
+ \begin{itemize}
+ \item Maintenance update due to updates to \CHDocPackage{expl3}
+ \item The Backup/Restore feature is currently broken and needs a thorough inspection
+ \end{itemize}
+
\item \CHDocFullVersion{1.5}
Added \refCom{LastRefSteppedCounter} as dummy version which expands to nothing as long as \cs{refstepcounter} has not been called.
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.pdf
index 7f1ffd852d3..bb90150d2fd 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.tex
index c2b22af69b4..8ab36d004d6 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_driver_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Driver file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2015 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2015 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.pdf
index 6191bd98827..98e379e89dd 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 0db097c4509..25633136ad1 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2015 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2015 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.pdf
index e04da570852..cecd32d83ef 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.tex
index 8d31707e772..1ff8cdc5e6f 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_getparentcounter_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for determing the parent counter of a counter and referring to it file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.pdf
index 7a215413ef2..d3d0adf58e6 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.tex
index b0080199b76..7903131358f 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_label_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file the the usage of labels with associated counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.pdf
index 629a23fa549..9be6303eef2 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.tex
index 81a518f763d..45a016e8f1c 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_parentcounterchain_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for determing the parent counter chain of a counter file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.pdf
index 5c3855ffb69..1ddb66a967b 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.tex
index 564e08c8d4e..2ecc0296f9e 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_periodiccounters_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for periodic counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2016 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2016 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.pdf
index 60c9db396b9..030a0e4f1da 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.tex
index dd145a689ec..6e95075df05 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetlist_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for reset list features file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2016 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2016 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.pdf
index cc2114aab67..933b4598ecf 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.tex
index d0f0510e120..eb7b3c5a70c 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_resetloop_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for looping through the reset list file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.pdf
index daaf2832eab..0303c171132 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.tex
index b2869404d0e..95e23be9101 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_suspendedcounters_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for suspended counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2016 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2016 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.pdf b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.pdf
index 1d841eaa0d7..b78ff329d95 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.pdf
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.tex b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.tex
index 5718d2523cc..0a2656c89ab 100644
--- a/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.tex
+++ b/Master/texmf-dist/doc/latex/xassoccnt/xassoccnt_totalcounters_example.tex
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Example file for total counters file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2015 -- 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2015 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
diff --git a/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty b/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
index e11965df0c8..760aae9d43d 100644
--- a/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
+++ b/Master/texmf-dist/tex/latex/xassoccnt/xassoccnt.sty
@@ -1,9 +1,9 @@
-%% LaTeX package xassoccnt - version 1.5 (2017/07/28 -- 12:08:57)
+%% LaTeX package xassoccnt - version 1.6 (2018/01/03 -- 23:27:20)
%% Source file for xassoccnt.sty
%%
%%
%% -------------------------------------------------------------------------------------------
-%% Copyright (c) 2017 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
+%% Copyright (c) 2017 -- 2018 by Dr. Christian Hupfer <typography dot with dot latex at gmail dot com>
%% -------------------------------------------------------------------------------------------
%%
%% This work may be distributed and/or modified under the
@@ -19,10 +19,10 @@
%%
%%
-\def\xassoccntpackageversion{1.5}
+\def\xassoccntpackageversion{1.6}
\NeedsTeXFormat{LaTeX2e}[1995/12/01]
-\ProvidesPackage{xassoccnt}[2017/07/28 - v\xassoccntpackageversion]
+\ProvidesPackage{xassoccnt}[2018/01/03 - v\xassoccntpackageversion]
\RequirePackage{etoolbox}
\RequirePackage{letltxmacro}
\RequirePackage{xcolor}
@@ -44,11 +44,11 @@
\cs_generate_variant:Nn \seq_remove_all:Nn { cV, NV }
\cs_generate_variant:Nn \seq_gremove_all:Nn { cV, NV }
-\cs_generate_variant:Nn \prop_put:Nnn {cxx,nxx,nxn,cxn,Nxx,Nxn}
-\cs_generate_variant:Nn \prop_gput:Nnn {cxx,nxx,nxn,cxn,Nxx,Nxn,NVx,Nvn,cVn,cVx}
+\cs_generate_variant:Nn \prop_put:Nnn {cxx,cxn,Nxx,Nxn}
+\cs_generate_variant:Nn \prop_gput:Nnn {cxx,cxn,Nxx,Nxn,NVx,Nvn,cVn,cVx}
\cs_generate_variant:Nn \prop_remove:Nn {cx,Nx}
\cs_generate_variant:Nn \prop_gremove:Nn {Nx,cx,No,co,NV,cV}
-\cs_generate_variant:Nn \prop_item:Nn {NV,cV,cx,No,co,Nx,nx}
+\cs_generate_variant:Nn \prop_item:Nn {NV,cV,cx,No,co,Nx}
\cs_generate_variant:Nn \int_set:Nn {NV,Nx,Nx,cx}
\cs_generate_variant:Nn \cs_gset:Npn {NpV,Npv,cpV,cpv,cpo,Npo}
\cs_generate_variant:Nn \tl_set:Nn {No,Nx,NV}
@@ -146,11 +146,17 @@
+\cs_new:Nn \__xassoccnt_toggle_bool:N {%
+ \bool_if:NTF #1 {\bool_set_false:n {#1}}{\bool_set_false:n {#1}}
+% \bool_if:nTF{#1}{\bool_set_false:n {#1}}{\bool_set_false:n {#1}}
+}
+
+
\cs_new:Nn \__xassoccnt_toggle_bool:n {%
\bool_if:nTF{#1}{\bool_set_false:n {#1}}{\bool_set_false:n {#1}}
}
-\cs_generate_variant:Nn \__xassoccnt_toggle_bool:n { c }
+\cs_generate_variant:Nn \__xassoccnt_toggle_bool:N { c }
\cs_new:Nn \__xassoccnt_toggle_autodefine:n {%
@@ -702,7 +708,7 @@
}{}
\AtEndOfPackage{
- \PackageInfo{xassoccnt}{2017/07/28 - v\xassoccntpackageversion -- stepping counters simultaneously and other features}
+ \PackageInfo{xassoccnt}{2018/01/03 - v\xassoccntpackageversion -- stepping counters simultaneously and other features}
\xassoccnt_trackloadedpackages:n{alphalph,calc,cleveref,hyperref}
\@ifpackageloaded{calc}{%
\msg_warning:nnn{xassoccnt}{incompatiblepackagenonfatal}{calc}% Warning
@@ -795,8 +801,8 @@
}
-\cs_generate_variant:Nn \__xassoccnt_container_gclear:n { c }
-\cs_generate_variant:Nn \__xassoccnt_container_clear:n { c }
+\cs_generate_variant:Nn \__xassoccnt_container_gclear:N { c }
+\cs_generate_variant:Nn \__xassoccnt_container_clear:N { c }
\cs_new:Nn \__xassoccnt_container_set_from_clist:NN {\seq_set_from_clist:NN #1 #2}
\cs_generate_variant:Nn \__xassoccnt_container_set_from_clist:NN { cN, cc, Nc }
@@ -1010,9 +1016,9 @@
}
}
-\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnTF { nxTF, cnTF,cxTF }
-\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnT { nxT,cnT,cxT }
-\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnF { nxF,cnF,cxF }
+\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnTF { NxTF, cnTF,cxTF }
+\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnT { NxT,cnT,cxT }
+\cs_generate_variant:Nn \__xassoccnt_container_if_in:NnF { NxF,cnF,cxF }
\prg_new_conditional:Nnn \xassoccnt_is_associatedcounter:n {T,F,TF}
{
@@ -1305,7 +1311,7 @@
}
-\cs_new_nopar:Nn \__xassoccnt_translate_countername:nn {%
+\cs_new_nopar:Nn \__xassoccnt_translate_countername:Nn {%
\tl_set:Nn #1 {#2}%
\seq_if_in:NxTF \g__xassoccnt_supertotalcounter_container {#2} {%
\tl_set:Nn #1 {\__xassoccnt_expand_totalcountername:n {#2} }%
@@ -1314,7 +1320,7 @@
}
-\cs_generate_variant:Nn \__xassoccnt_translate_countername:nn {cn}
+\cs_generate_variant:Nn \__xassoccnt_translate_countername:Nn {cn}
%% More generic macros (hidding the internal features of the lists)
@@ -1481,8 +1487,8 @@
\cs_generate_variant:Nn \xassoccnt_container_new:N {c}
-\cs_generate_variant:Nn \xassoccnt_container_clear:N {c,x}
-\cs_generate_variant:Nn \xassoccnt_container_gclear:N {c,x}
+\cs_generate_variant:Nn \xassoccnt_container_clear:N {c}
+\cs_generate_variant:Nn \xassoccnt_container_gclear:N {c}
\cs_generate_variant:Nn \xassoccnt_container_set_eq:NN {cN,Nc,cc}
\cs_generate_variant:Nn \xassoccnt_container_gset_eq:NN {cN,Nc,cc}
@@ -1501,14 +1507,14 @@
\cs_generate_variant:Nn \xassoccnt_container_remove_all:Nn {cn}
\cs_generate_variant:Nn \xassoccnt_container_gremove_all:Nn {cn}
-\cs_generate_variant:Nn \xassoccnt_container_remove_by_clist:Nn {cn,nn}
+\cs_generate_variant:Nn \xassoccnt_container_remove_by_clist:Nn {cn}
\cs_generate_variant:Nn \xassoccnt_container_map_inline:Nn {cn}
\cs_generate_variant:Nn \xassoccnt_container_count:N {c}
-\cs_generate_variant:Nn \xassoccnt_container_set_from_clist:NN {cN,cc,Nc,Nn,cn}
-\cs_generate_variant:Nn \xassoccnt_container_gset_from_clist:NN {cN,cc,Nc,Nn,cn}
+\cs_generate_variant:Nn \xassoccnt_container_set_from_clist:NN {cN,cc,Nc}
+\cs_generate_variant:Nn \xassoccnt_container_gset_from_clist:NN {cN,cc,Nc}
\cs_generate_variant:Nn \xassoccnt_container_use:Nn {cn}
@@ -1517,7 +1523,7 @@
\cs_generate_variant:Nn \xassoccnt_container_if_in:NnT {NVT,NvT,NoT,NxT,cnT,cVT,cvT,coT,cxT}
\cs_generate_variant:Nn \xassoccnt_container_if_in:NnF {NVF,NvF,NoF,NxF,cnF,cVF,cvF,coF,cxF}
-\cs_generate_variant:Nn \xassoccnt_container_if_exist:NTF {cTF,xTF}
+\cs_generate_variant:Nn \xassoccnt_container_if_exist:NTF {cTF}
\cs_generate_variant:Nn \xassoccnt_container_if_exist:NT {cT}
\cs_generate_variant:Nn \xassoccnt_container_if_exist:NF {cF}
@@ -1579,6 +1585,22 @@
%% Multiple counters may occur in the per - feature - specific container list
+
+\cs_new:Nn \xassoccnt_create_container:nN {
+ \keys_set:nn {xassoccnt_container} {#1}
+ \xassoccnt_container_if_exist:NTF #2 {%
+ % A existing container must not be redefined
+ \msg_error:nnn{xassoccnt}{containeralreadyexists}{#2}% Error!
+ }{
+ \xassoccnt_container_new:N {#2}
+ }
+}
+
+
+
+\cs_generate_variant:Nn \xassoccnt_create_container:nN {nc}
+
+
\cs_new:Nn \xassoccnt_add_feature:nn {%
\tl_set:Nn \__xassoccnt_featurename_tl {#2}%
\prop_clear_new:c {\xassoccnt_featurename_prop:}%
@@ -1596,16 +1618,16 @@
}
-\prg_new_conditional:Nnn \xassoccnt_feature_if_in:n {TF,T,F}
+\prg_new_conditional:Nnn \xassoccnt_feature_if_in:N {TF,T,F}
{
\seq_if_in:NnTF { \g__xassoccnt_feature_seq } {#1}
{\prg_return_true:}
{\prg_return_false:}
}
-\cs_generate_variant:Nn \xassoccnt_feature_if_in:nTF {c}
-\cs_generate_variant:Nn \xassoccnt_feature_if_in:nT {c}
-\cs_generate_variant:Nn \xassoccnt_feature_if_in:nF {c}
+\cs_generate_variant:Nn \xassoccnt_feature_if_in:NTF {c}
+\cs_generate_variant:Nn \xassoccnt_feature_if_in:NT {c}
+\cs_generate_variant:Nn \xassoccnt_feature_if_in:NF {c}
\cs_new:Nn \xassoccnt_remove_feature:nn {%
% keys from #1 to be set
@@ -1627,19 +1649,6 @@
}
-\cs_new:Nn \xassoccnt_create_container:nN {
- \keys_set:nn {xassoccnt_container} {#1}
- \xassoccnt_container_if_exist:NTF #2 {%
- % A existing container must not be redefined
- \msg_error:nnn{xassoccnt}{containeralreadyexists}{#2}% Error!
- }{
- \xassoccnt_container_new:N {#2}
- }
-}
-
-
-
-\cs_generate_variant:Nn \xassoccnt_create_container:nN {nc,nx}
\cs_new:Nn \xassoccnt_add_to_containerlist:Nn {%
\clist_set:Nx \l_tmpa_clist {#2}
@@ -1648,7 +1657,7 @@
\xassoccnt_container_put_right:Nn #1 {##1}% Append data
}
}{
- \xassoccnt_create_container:nN {feature=false} #1
+ \xassoccnt_create_container:nc {feature=false} {#1}
\xassoccnt_container_set_from_clist:NN #1 \l_tmpa_clist
}
}
@@ -1683,7 +1692,7 @@
}
}
-\cs_generate_variant:Nn \xassoccnt_add_to_containerlist:Nn {cn,nn}
+\cs_generate_variant:Nn \xassoccnt_add_to_containerlist:Nn {cn}
@@ -1696,7 +1705,7 @@
}
\NewDocumentCommand{\NewContainer}{m}{%
- \xassoccnt_create_container:nc {feature=false} {#1}
+ \xassoccnt_create_container:Nc {feature=false} {#1}
}
@@ -1705,10 +1714,6 @@
%%%% New Backup Counter features
-\cs_new:Nn \xassoccnt_backup_id_seq:n {%
- l_backupcounters_#1_id_seq%
-}
-
\cs_new:Nn \__xassoccnt_declare_countergroupname:nn {%
\xassoccnt_container_if_exist:cF { \xassoccnt_feature_group_container:n{#1}{#2} }
{%
@@ -1718,6 +1723,16 @@
}
}
+
+
+%\input{xassoccnt_backupfeatures_example}
+
+
+\cs_new:Nn \xassoccnt_backup_id_seq:n {%
+ l_backupcounters_#1_id_seq%
+}
+
+
\cs_new:Nn \xassoccnt_declare_backupcountersgroupname:n {%
\xassoccnt_container_if_exist:cF { \xassoccnt_feature_group_container:n{backupcounters}{#1} }
{
@@ -1778,7 +1793,7 @@
\bool_new:N \l__xassoccnt_is_backupcounter_bool
-\prg_new_conditional:Nnn \__xassoccnt_is_backupcounter:n {TF,T,F} {%
+\prg_new_conditional:Nnn \__xassoccnt_is_backupcounter:N {TF,T,F} {%
\xassoccnt_container_map_inline:cn { \xassoccnt_feature_group_container:n{backupcounters} } {%
\bool_set_false:N \l__xassoccnt_is_backupcounter_bool
\xassoccnt_container_if_in:cxT { \xassoccnt_feature_subcontainer:nn{backupcounters}{##1} } {#1}
@@ -1794,20 +1809,20 @@
-\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:nTF {c }
-\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:nT { c }
-\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:nF { c }
+\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:NTF {c }
+\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:NT { c }
+\cs_generate_variant:Nn \__xassoccnt_is_backupcounter:NF { c }
-\cs_new:Nn \xassoccnt_is_backupcounter:nTF { %
- \__xassoccnt_is_backupcounter:nTF {#1} {#2} {#3}
+\cs_new:Nn \xassoccnt_is_backupcounter:NTF { %
+ \__xassoccnt_is_backupcounter:NTF {#1} {#2} {#3}
}
-\cs_new:Nn \xassoccnt_is_backupcounter:nT { %
- \__xassoccnt_is_backupcounter:nT {#1} {#2}%
+\cs_new:Nn \xassoccnt_is_backupcounter:NT { %
+ \__xassoccnt_is_backupcounter:NT {#1} {#2}%
}
-\cs_new:Nn \xassoccnt_is_backupcounter:nF { %
- \__xassoccnt_is_backupcounter:nF {#1} {#2}%
+\cs_new:Nn \xassoccnt_is_backupcounter:NF { %
+ \__xassoccnt_is_backupcounter:NF {#1} {#2}%
}
@@ -1822,7 +1837,7 @@
}%
}
}
-\cs_new:Nn \__xassoccnt_backup_restore_theHmacros:nn {%
+\cs_new:Nn \__xassoccnt_backup_restore_theHmacros:NN {%
\bool_if:NT \l__xassoccnt_hyperrefpackage_loaded_bool {%
\cs_if_exist:cT {theH#1} {%
\expandafter\renewcommand\csname theH#1\endcsname{xassoccnt.#1_#2.\use:c{the#1}}%
@@ -1854,14 +1869,14 @@
-\cs_new:Nn \xassoccnt_backupstore_property:nnn{%
- \prop_gput:cnn {\xassoccnt_feature_subproplist:nn{\xassoccnt_extract_moduledata:n{backupfeaturename}}{#1}} { #2 } {#3}% Must be expanded
+\cs_new:Nn \xassoccnt_backupstore_property:Nnn{%
+% \prop_gput:Nnx {\xassoccnt_feature_subproplist:NN {\xassoccnt_extract_moduledata:n{backupfeaturename}{#1}}} { #2 } {#3}% Must be expanded
}
-\cs_generate_variant:Nn \xassoccnt_backupstore_property:nnn {cnn,cxx,nxx}
+\cs_generate_variant:Nn \xassoccnt_backupstore_property:Nnn {cnn,cxx,Nxx}
\cs_generate_variant:Nn \xassoccnt_backup_subproplist:n {V}
-\cs_generate_variant:Nn \xassoccnt_feature_subproplist:NN {nn,cn}
-\cs_generate_variant:Nn \__xassoccnt_backup_restore_theHmacros:nn {nx,cn,cx}
+\cs_generate_variant:Nn \xassoccnt_backup_subproplist:NN {Nc,cc}
+\cs_generate_variant:Nn \__xassoccnt_backup_restore_theHmacros:NN {Nc,cc}%,cx}
\NewDocumentCommand{\BackupCounterValues}{O{}m}{%
@@ -1930,7 +1945,7 @@
\seq_remove_duplicates:c {\xassoccnt_backup_id_seq:n{#2}}
}
\seq_map_inline:cn {\xassoccnt_feature_subcontainer:nn{\xassoccnt_extract_moduledata:n{backupfeaturename}}{#2}} {%
- \xassoccnt_backupstore_property:nxx {#2}{\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_backup_id_tl}} {\number\value{##1}}% Must be expanded!
+ \xassoccnt_backupstore_property:Nnn {#2}{\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_backup_id_tl}} {\number\value{##1}}% Must be expanded!
\__xassoccnt_backup_renew_theHmacros:nn {##1}{\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_backup_id_tl}}%
\bool_if:NT \l__xassoccnt_resetbackupcounters_bool {%
\setcounter{##1}{\c_zero}%
@@ -1942,6 +1957,7 @@
\NewDocumentCommand{\RestoreBackupCounterGroup}{O{}m}{%
+
\keys_set:nn {xassoccnt_container} {keep-after-restore=false,backup-id={},restore-id={},multiple=false,#1}
%
% Test whether counter group #2 exists:
@@ -1955,7 +1971,7 @@
% Test first if the backup id is valid!
\seq_if_in:cVT {\xassoccnt_backup_id_seq:n{#2}} { \__xassoccnt_backup_id_tl } {%
\seq_map_inline:cn {\xassoccnt_feature_subcontainer:nn{\xassoccnt_extract_moduledata:n{backupfeaturename}}{#2 }} {%
- \__xassoccnt_backup_restore_theHmacros:nx {##1}{\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_restore_id_tl}}%\__xassoccnt_restore_id_tl}}%
+% \__xassoccnt_backup_restore_theHmacros:Nx {##1}{\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_restore_id_tl}}%\__xassoccnt_restore_id_tl}}%
\tl_set:Nx \l_tmpa_tl {\__xassoccnt_prepare_backupid:nn{##1}{\__xassoccnt_backup_id_tl}}
\int_set:Nx \l_tmpa_int {\prop_item:cV {\xassoccnt_backup_subproplist:n{#2} } {\l_tmpa_tl}}%
\setcounter{##1}{\int_use:N \l_tmpa_int}%
@@ -2146,13 +2162,14 @@
+
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% Coupled Counter features
\bool_new:N \l__xassoccnt_is_coupledcounter_bool
-\prg_new_conditional:Nnn \__xassoccnt_is_coupledcounter:n {TF,T,F}
+\prg_new_conditional:Nnn \__xassoccnt_is_coupledcounter:N {TF,T,F}
{
\xassoccnt_container_map_inline:cn { \xassoccnt_feature_group_container:n{coupledcounters} } {%
\bool_set_false:N \l__xassoccnt_is_coupledcounter_bool
@@ -2167,20 +2184,20 @@
{\prg_return_false:}
}
-\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:nTF {c }
-\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:nT { c }
-\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:nF { c }
+\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:NTF {cTF }
+\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:NT { cT }
+\cs_generate_variant:Nn \__xassoccnt_is_coupledcounter:NF { cF }
-\cs_new:Nn \xassoccnt_is_coupledcounter:nTF { %
- \__xassoccnt_is_coupledcounter:nTF {#1} {#2} {#3}
+\cs_new:Nn \xassoccnt_is_coupledcounter:NTF { %
+ \__xassoccnt_is_coupledcounter:NTF {#1} {#2} {#3}
}
-\cs_new:Nn \xassoccnt_is_coupledcounter:nT { %
- \__xassoccnt_is_coupledcounter:nT {#1} {#2}%
+\cs_new:Nn \xassoccnt_is_coupledcounter:NT { %
+ \__xassoccnt_is_coupledcounter:NT {#1} {#2}%
}
-\cs_new:Nn \xassoccnt_is_coupledcounter:nF { %
- \__xassoccnt_is_coupledcounter:nF {#1} {#2}%
+\cs_new:Nn \xassoccnt_is_coupledcounter:NF { %
+ \__xassoccnt_is_coupledcounter:NnF {#1} {#2}%
}
@@ -2256,15 +2273,15 @@
}
\NewDocumentCommand{\IsCoupledCounterTF}{mmm}{%
- \xassoccnt_is_coupledcounter:nTF {#1} {#2} {#3}
+ \xassoccnt_is_coupledcounter:NTF {#1} {#2} {#3}
}
\NewDocumentCommand{\IsCoupledCounterT}{mm}{%
- \xassoccnt_is_coupledcounter:nT {#1} {#2}
+ \xassoccnt_is_coupledcounter:NT {#1} {#2}
}
\NewDocumentCommand{\IsCoupledCounterF}{mm}{%
- \xassoccnt_is_coupledcounter:nF {#1} {#2}
+ \xassoccnt_is_coupledcounter:NF {#1} {#2}
}
%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -2374,7 +2391,7 @@
\__xassoccnt_translate_countername:cn {l_tmpa_tl} {#1}%
\xassoccnt_is_suspendedcounter:nF{#1}{%
\xassoccnt_stepcounter_periodiccounter:n {#1}%
- \xassoccnt_is_coupledcounter:nTF {#1}
+ \xassoccnt_is_coupledcounter:NTF {#1}
{ \xassoccnt_stepcounter_coupledcounters:n{#1} }
{% No, not a coupled counter!
% \cs_gset_nopar:Nn \__xassoccnt_laststeppedcounter: {\l_tmpa_tl}%
@@ -3771,20 +3788,14 @@
}{
\prop_gput:NnV #1 {#2} {\__xassoccnt_uppercase_first:n {#4}}
}
-% \tl_set:Nn \l_tmpa_tl {#3}
-% %\__xassoccnt_uppercase_first:n {
-% \typeout{Content is \tl_use:N \l_tmpa_tl}
-% \prop_gput:NnV #1 {#2} {\l_tmpa_tl }
}
\cs_new:Nn \__xassoccnt_uppercase_first:n {%
\tl_upper_case:n {\tl_head:n{#1}}\tl_tail:n{#1}
-% \typeout{ \tl_upper_case:n {\tl_head:n{#1}}\tl_tail:n{#1}}%
-% \typeout{ \tl_upper_case:n {\tl_head:n{#1}}\tl_tail:n{#1}}
}
-\cs_generate_variant:Nn \__xassoccnt_uppercase_first:n {x,o,c,V}
+\cs_generate_variant:Nn \__xassoccnt_uppercase_first:n {x,o,V}
\cs_generate_variant:Nn \prop_put_uppercase_first:Nnn {Nxx,Nnx,Nno,Nxn, cxn, cno,cxx,cnn}
\cs_generate_variant:Nn \prop_gput_uppercase_first:Nnn {Nxx,Nnx,Nno,Nxn, cxn, cno,cxx,cnn}
@@ -3803,31 +3814,18 @@
% Append the first element to be the reference entry
\seq_put_right:Nx \l_tmpb_seq { \seq_item:Nn \l_tmpb_seq {1} }
}
-% \seq_map_inline:Nn \l_tmpb_seq {\typeout{##1~}}
- \typeout{Checking arg 2}
\prop_gput:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-singular} {\__xassoccnt_use_if_empty:xn{\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {2}}}
- \typeout{Checking arg 3}
\prop_gput:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-plural} {\__xassoccnt_use_if_empty:xn{\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {3}}}
- \typeout{Checking arg 4}
-% \prop_gput_uppercase_first:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-uppercase-singular} {\__xassoccnt_use_if_empty:xn{\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {4}}}
\prop_gput_uppercase_first:cxxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-uppercase-singular} {\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {4}}
\prop_gput_uppercase_first:cxxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-uppercase-plural} {\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {5}}
-
-% \prop_gput:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-uppercase-singular} {\__xassoccnt_uppercase_first:x{\__xassoccnt_use_if_empty:nn{\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {4}}}}
-% \prop_gput:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}-uppercase-plural} {\__xassoccnt_uppercase_first:x{\__xassoccnt_use_if_empty:nn{\seq_item:Nn \l_tmpb_seq {2}s}{\seq_item:Nn \l_tmpb_seq {5}}}}
-% \prop_show:c { g_xassoccnt_language_map_#1_prop }
\group_end:
}
-% \seq_show:N \l_tmpb_seq
-% \prop_gput:cxx { g_xassoccnt_language_map_#1_prop } {\seq_item:Nn \l_tmpb_seq {1}} {\__xassoccnt_use_if_empty:xn{\seq_item:Nn \l_tmpb_seq {2}}{\seq_item:Nn \l_tmpb_seq {1}}}
-
-
\cs_generate_variant:Nn \__xassoccnt_declare_language_map:nn {nx,xx}
\cs_generate_variant:Nn \__xassoccnt_declare_language_map:n {x}