summaryrefslogtreecommitdiff
path: root/tex/context/base/page-txt.mkvi
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/page-txt.mkvi')
-rw-r--r--tex/context/base/page-txt.mkvi112
1 files changed, 52 insertions, 60 deletions
diff --git a/tex/context/base/page-txt.mkvi b/tex/context/base/page-txt.mkvi
index dc445e0e1..c86597338 100644
--- a/tex/context/base/page-txt.mkvi
+++ b/tex/context/base/page-txt.mkvi
@@ -430,9 +430,6 @@
\global\setfalse\resyncaftertextline
\fi}
-\def\getspecificlayouttext#vertical#horizontal#what%
- {\csname\namedlayoutelementhash{#vertical:#horizontal}#what\endcsname}
-
% \settext[header][text][middle][xxx][yyy]
\def\settextcontent
@@ -477,6 +474,8 @@
%D macros. These are hooked into the general purpose token
%D list registers mentioned before.
+\def\ignoredlinebreak{\unskip\space\ignorespaces}
+
\def\page_layouts_place_text_line_indeed#vertical#height%
{\let\currentlayouttextline#vertical%
\ifdim#height>\zeropoint\relax % prevents pagenumbers when zero height
@@ -694,26 +693,26 @@
% associated. This is a rather messy test but better than the MkII
% way where we use states and keep settings.
-\let\m_page_layouts_page_number_location \relax
-\let\m_page_layouts_page_number_location_v\relax
-\let\m_page_layouts_page_number_location_h\relax
-\let\m_page_layouts_page_number_location_x\relax
+\let\m_page_layouts_page_number_location_ \relax
+\let\m_page_layouts_page_number_location__v\relax
+\let\m_page_layouts_page_number_location__h\relax
+\let\m_page_layouts_page_number_location__x\relax
-\def\page_layouts_place_page_number % also elsewhere .. beware, not \unexpanded else
- {\strc_pagenumbers_place_location} % test below fails
+\def\page_layouts_place_page_number % also elsewhere .. beware, not \unexpanded else
+ {\placelocationpagenumber} % test below fails
\def\page_layouts_reset_page_number_location
- {\ifx\m_page_layouts_page_number_location_v\relax\else
- \edef\currentlayoutelement{\m_page_layouts_page_number_location_v:\m_page_layouts_page_number_location_h}%
- \edef\page_layouts_previous_page_number_locator{\detokenizedlayoutelementparameter\m_page_layouts_page_number_location_x}%
+ {\ifx\m_page_layouts_page_number_location__v\relax\else
+ \edef\currentlayoutelement{\m_page_layouts_page_number_location__v:\m_page_layouts_page_number_location__h}%
+ \edef\page_layouts_previous_page_number_locator{\detokenizedlayoutelementparameter\m_page_layouts_page_number_location__x}%
\doif{\meaning\page_layouts_previous_page_number_locator}{\meaning\page_layouts_place_page_number}
- {\resetlayoutelementparameter\m_page_layouts_page_number_location_x}%
+ {\resetlayoutelementparameter\m_page_layouts_page_number_location__x}%
\fi}
\def\page_layouts_set_page_number_location
- {\edef\currentlayoutelement{\m_page_layouts_page_number_location_v:\m_page_layouts_page_number_location_h}%
- \letlayoutelementparameter\m_page_layouts_page_number_location_x\page_layouts_place_page_number
- \ifx\m_page_layouts_page_number_location_x\c!marginedgetext
+ {\edef\currentlayoutelement{\m_page_layouts_page_number_location__v:\m_page_layouts_page_number_location__h}%
+ \letlayoutelementparameter\m_page_layouts_page_number_location__x\page_layouts_place_page_number
+ \ifx\m_page_layouts_page_number_location__x\c!marginedgetext
\let\page_layouts_place_extra_text_left \page_layouts_place_page_number_left
\let\page_layouts_place_extra_text_right\page_layouts_place_page_number_right
\else
@@ -722,39 +721,38 @@
\fi}
\def\page_layouts_identify_page_number_location
- {\let\m_page_layouts_page_number_location_v\v!footer
- \let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!middletext
- \processallactionsinset[\directpagenumberingparameter\c!location]
- [ \v!header=>\let\m_page_layouts_page_number_location_v\v!header,
- \v!footer=>\let\m_page_layouts_page_number_location_v\v!footer,
- \v!middle=>\let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!middletext,
- \v!left=>\let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!lefttext,
- \v!right=>\let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!righttext,
- \v!inleft=>\let\m_page_layouts_page_number_location_h\v!margin
- \let\m_page_layouts_page_number_location_x\c!lefttext,
- \v!inright=>\let\m_page_layouts_page_number_location_h\v!margin
- \let\m_page_layouts_page_number_location_x\c!righttext,
- \v!inmargin=>\let\m_page_layouts_page_number_location_h\v!margin
- \def\m_page_layouts_page_number_location_x{\ifdoublesided\c!margintext\else\c!righttext\fi},
- \v!margin=>\let\m_page_layouts_page_number_location_h\v!margin
- \def\m_page_layouts_page_number_location_x{\ifdoublesided\c!margintext\else\c!righttext\fi},
- \v!atmargin=>\let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!marginedgetext,
- \v!marginedge=>\let\m_page_layouts_page_number_location_h\v!text
- \let\m_page_layouts_page_number_location_x\c!marginedgetext]}
-
-\unexpanded\def\strc_pagenumbers_set_location
- {\edef\p_strc_pagenumbers_location{\directpagenumberingparameter\c!location}%
- \ifx\p_strc_pagenumbers_location\m_page_layouts_page_number_location
+ {\let\m_page_layouts_page_number_location__v\v!footer
+ \let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!middletext
+ \processallactionsinset[\@@nmlocation]
+ [ \v!header=>\let\m_page_layouts_page_number_location__v\v!header,
+ \v!footer=>\let\m_page_layouts_page_number_location__v\v!footer,
+ \v!middle=>\let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!middletext,
+ \v!left=>\let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!lefttext,
+ \v!right=>\let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!righttext,
+ \v!inleft=>\let\m_page_layouts_page_number_location__h\v!margin
+ \let\m_page_layouts_page_number_location__x\c!lefttext,
+ \v!inright=>\let\m_page_layouts_page_number_location__h\v!margin
+ \let\m_page_layouts_page_number_location__x\c!righttext,
+ \v!inmargin=>\let\m_page_layouts_page_number_location__h\v!margin
+ \def\m_page_layouts_page_number_location__x{\ifdoublesided\c!margintext\else\c!righttext\fi},
+ \v!margin=>\let\m_page_layouts_page_number_location__h\v!margin
+ \def\m_page_layouts_page_number_location__x{\ifdoublesided\c!margintext\else\c!righttext\fi},
+ \v!atmargin=>\let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!marginedgetext,
+ \v!marginedge=>\let\m_page_layouts_page_number_location__h\v!text
+ \let\m_page_layouts_page_number_location__x\c!marginedgetext]}
+
+\unexpanded\def\dosetpagenumberlocation
+ {\ifx\@@nmlocation\m_page_layouts_page_number_location_
% unchanged
\else
- \let\m_page_layouts_page_number_location\p_strc_pagenumbers_location
+ \let\m_page_layouts_page_number_location_\@@nmlocation
\page_layouts_reset_page_number_location
- \ifx\p_strc_pagenumbers_location\empty
+ \ifx\@@nmlocation\empty
% set otherwise
\else
\page_layouts_identify_page_number_location
@@ -766,12 +764,9 @@
{\begingroup
\setbox\scratchbox\hbox{\ignorespaces\layoutelementparameter\c!marginedgetext\removeunwantedspaces}%
\ifzeropt\wd\scratchbox\else
- \edef\p_strc_pagenumbers_width{\directpagenumberingparameter\c!width}%
- \ifx\p_strc_pagenumbers_width\empty
- \box\scratchbox\tfskip
- \else
- \hbox to \p_strc_pagenumbers_width{\box\scratchbox\hss}%
- \fi
+ \doifelsenothing\@@nmwidth
+ {\box\scratchbox\tfskip}
+ {\hbox to \@@nmwidth{\box\scratchbox\hss}}%
\fi
\endgroup}
@@ -779,16 +774,13 @@
{\begingroup
\setbox\scratchbox\hbox{\ignorespaces\layoutelementparameter\c!marginedgetext\removeunwantedspaces}%
\ifzeropt\wd\scratchbox\else
- \edef\p_strc_pagenumbers_width{\directpagenumberingparameter\c!width}%
- \ifx\p_strc_pagenumbers_width\empty
- \tfskip\box\scratchbox
- \else
- \hbox to \p_strc_pagenumbers_width{\hss\box\scratchbox}%
- \fi
+ \doifelsenothing\@@nmwidth
+ {\tfskip\box\scratchbox}
+ {\hbox to \@@nmwidth{\hss\box\scratchbox}}%
\fi
\endgroup}
-\strc_pagenumbers_set_location % initializes
+\dosetpagenumberlocation
% will go to page-box.mkiv
@@ -847,7 +839,7 @@
\kern\dimexpr\leftmarginwidth+\leftmargindistance\relax
\fi
\endgroup
- \page_postprocessors_page{#2}%
+ \mkprocesspagecontents{#2}%
\settextpagecontent\b_page_layouts_element{#1}{#2}%
\page_backgrounds_add_to_text\b_page_layouts_element
\page_grids_add_to_box\b_page_layouts_element