summaryrefslogtreecommitdiff
path: root/tex/context/base/strc-pag.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/strc-pag.mkiv')
-rw-r--r--tex/context/base/strc-pag.mkiv21
1 files changed, 14 insertions, 7 deletions
diff --git a/tex/context/base/strc-pag.mkiv b/tex/context/base/strc-pag.mkiv
index 2d6a6aaf1..8d18b9e56 100644
--- a/tex/context/base/strc-pag.mkiv
+++ b/tex/context/base/strc-pag.mkiv
@@ -71,9 +71,9 @@
% \stopbodymatter
% \stoptext
-\definestructurecounter[\s!realpage][\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=realpageno]
-\definestructurecounter[\s!userpage][\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=userpageno]
-\definestructurecounter[\s!subpage] [\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=subpageno]
+\definestructurecounter[\s!realpage][\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=realpageno,\c!method=\v!page]
+\definestructurecounter[\s!userpage][\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=userpageno,\c!method=\v!page]
+\definestructurecounter[\s!subpage] [\c!prefix=\v!no,\c!start=1,\c!prefixsegments=,\s!counter=subpageno, \c!method=\v!page]
\newtoks\everysetuprealpagenumber % todo: set state: none, start, stop, reset
\newtoks\everysetupuserpagenumber % todo: set state: none, start, stop, reset
@@ -221,11 +221,18 @@
\def\nextuserpagenumber {\directconvertedstructurecounter\s!userpage\v!next}
\def\nextsubpagenumber {\directconvertedstructurecounter\s!subpage \v!next}
-\appendtoks
- \decrementstructurecounter[\s!realpage]%
+\def\dodeincrementpageboundcounters % only at the end
+ {\decrementstructurecounter[\s!realpage]%
\decrementstructurecounter[\s!userpage]%
- \decrementstructurecounter[\s!subpage ]%
-\to\everygoodbye
+ \decrementstructurecounter[\s!subpage ]}
+
+\def\doincrementpageboundcounters
+ {\incrementpagenumber
+ \incrementsubpagenumber}
+
+\appendtoks
+ \dodeincrementpageboundcounters
+\to \everygoodbye
% Equivalents (compatibility):
%