summaryrefslogtreecommitdiff
path: root/tex/context/base/spac-def.mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/spac-def.mkiv')
-rw-r--r--tex/context/base/spac-def.mkiv116
1 files changed, 42 insertions, 74 deletions
diff --git a/tex/context/base/spac-def.mkiv b/tex/context/base/spac-def.mkiv
index 4cd7b1d1c..312483cfa 100644
--- a/tex/context/base/spac-def.mkiv
+++ b/tex/context/base/spac-def.mkiv
@@ -13,80 +13,45 @@
\writestatus{loading}{ConTeXt Spacing Macros / Definitions}
-% todo: move resetters to other modules
+% Ideally these definitions should be moved to where they first appear and
+% this will happen at some point.
\unprotect
-\unexpanded\def\forgeteverypar
- {\everypar{\the\neverypar}}
-
-% worth trying:
-%
-% \unexpanded\def\forgeteverypar
-% {\everypar\neverypar}
-
-\unexpanded\def\forgetparskip
- {\s_spac_whitespace_parskip\zeropoint
- \parskip\zeropoint
- \let\v_spac_whitespace_current\v!none}
-
-\unexpanded\def\forgetbothskips
- {\leftskip\zeropoint
- \rightskip\zeropoint
- \relax}
-
-\unexpanded\def\forgethorizontalstretch
- {\emergencystretch\zeropoint}
-
-\unexpanded\def\forgetverticalstretch
- {\spacing\plusone}
-
-\newif\ifforgotten % rather good signal for inner
-
-% This will become better: several resetters that do all in once as currently there is
-% redundant code.
-
-\appendtoks \forgottentrue \to \everyforgetall
-\appendtoks \forgetragged \to \everyforgetall
-\appendtoks \forgetparskip \to \everyforgetall
-\appendtoks \forgetparindent \to \everyforgetall
-\appendtoks \forgetbothskips \to \everyforgetall
-\appendtoks \forgethorizontalstretch \to \everyforgetall % needed in pagebody
-\appendtoks \forgetverticalstretch \to \everyforgetall % needed in otr
-\appendtoks \everypar\emptytoks \to \everyforgetall % indeed!
-
-\appendtoks \forgetverticalstretch \to \everybodyfont
-\appendtoks \presetnormallineheight \to \everybodyfont
-\appendtoks \setnormalbaselines \to \everybodyfont % check if redundant (\forgetverticalstretch does it too)
-\appendtoks \setstrut \to \everybodyfont % check if redundant (\forgetverticalstretch does it too)
-\appendtoks \settopskip \to \everybodyfont % factors set in \forgetverticalstretch
-\appendtoks \setmaxdepth \to \everybodyfont % factors set in \forgetverticalstretch
-\appendtoks \synchronizeindenting \to \everybodyfont
-\appendtoks \synchronizeblank \to \everybodyfont
-\appendtoks \synchronizewhitespace \to \everybodyfont
-\appendtoks \synchronizespacecodes \to \everybodyfont % not needed, frozen factors
-\appendtoks \setrelativeinterlinespace \to \everybodyfont
-
-\appendtoks \updateraggedskips \to \everyfontswitch % under test
-\prependtoks \let\par\normalpar \to \everybeforepagebody % see \fillinline (was endgraf)
-\appendtoks \synchronizespacecodes \to \everydefinedfont % not needed, frozen factors
-
-\setupwhitespace
- [\v!none]
+% maybe \everysynchronizeglobalspacing
+% maybe \everysynchronizelocalspacing
-\indenting
- [\v!never]
+\appendtoks
+ \forgetverticalstretch
+ \presetnormallineheight
+ \setnormalbaselines % check if redundant (\forgetverticalstretch does it too)
+ \setstrut % check if redundant (\forgetverticalstretch does it too)
+ \settopskip % factors set in \forgetverticalstretch
+ \setmaxdepth % factors set in \forgetverticalstretch
+ \synchronizeindenting
+ \synchronizeblank
+ \synchronizewhitespace
+ \synchronizespacecodes % not needed, frozen factors
+ \setrelativeinterlinespace
+\to \everybodyfont
-\setupindenting
- [\v!none]
+% why exception
-\setupblank
- [\v!big] % alternatively [\v!standard]
+\appendtoks
+ \updateraggedskips % under test
+\to \everyfontswitch
+
+% maybe more
+
+\prependtoks
+ \let\par\normalpar
+\to \everybeforepagebody % see \fillinline (was endgraf)
-\defineblank[\v!default] [\v!big] % todo: needs to adapt to \setupblank
-\defineblank[\v!before] [\v!default] % but we need to avoid circular references
-\defineblank[\v!inbetween][\v!default] % then
-\defineblank[\v!after] [\v!before]
+% needs checking:
+
+\appendtoks
+ \synchronizespacecodes
+\to \everydefinedfont % not needed, frozen factors
\setupinterlinespace
[\c!minheight=\zeropoint, % only special purpose
@@ -97,14 +62,11 @@
\c!bottom=0.4,
\c!distance=\onepoint,
\c!line=2.8\exheight,
- \c!stretch=\zerocount]
+ \c!stretch=\zerocount,
+ \c!shrink=\zerocount]
-\setupnarrower
- [\c!before=\endgraf,
- \c!after=\endgraf,
- \c!left=1.5\emwidth,
- \c!right=1.5\emwidth,
- \c!middle=1.5\emwidth]
+\setupblank
+ [\v!big]
\setuptolerance
[\v!horizontal,\v!verystrict]
@@ -119,4 +81,10 @@
\setupspacing
[\v!packed]
+\indenting
+ [\v!never]
+
+\setupindenting
+ [\v!none]
+
\protect \endinput