summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv/pack-mrl.mkxl
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2020-08-03 14:53:53 +0200
committerContext Git Mirror Bot <phg@phi-gamma.net>2020-08-03 14:53:53 +0200
commit757aa0290bc1f866475e055fdf8a9c6df1124860 (patch)
tree3b8bc79a80e33900f3b3f82cd1f4e5e1936f1331 /tex/context/base/mkiv/pack-mrl.mkxl
parentcbaeded86ee193677fe0cae364b564616557449d (diff)
downloadcontext-757aa0290bc1f866475e055fdf8a9c6df1124860.tar.gz
2020-08-03 14:20:00
Diffstat (limited to 'tex/context/base/mkiv/pack-mrl.mkxl')
-rw-r--r--tex/context/base/mkiv/pack-mrl.mkxl54
1 files changed, 28 insertions, 26 deletions
diff --git a/tex/context/base/mkiv/pack-mrl.mkxl b/tex/context/base/mkiv/pack-mrl.mkxl
index bd459dc46..2c3a2f174 100644
--- a/tex/context/base/mkiv/pack-mrl.mkxl
+++ b/tex/context/base/mkiv/pack-mrl.mkxl
@@ -842,35 +842,37 @@
\c!before=\blank,
\c!after=\blank]
+\unexpanded\def\pack_fillinline_before#1%
+ {}
+
+\unexpanded\def\pack_fillinline_after#1%
+ {\begingroup
+ \setupcurrentfillinlines[#1]%
+ \ifhmode\unskip\hfill\fi
+ \scratchdistance\directfillinlinesparameter\c!distance
+ \scratchheight\dimexpr\directfillinlinesparameter\c!rulethickness/\plustwo\relax
+ \scratchwidth \dimexpr\directfillinlinesparameter\c!width-\scratchdistance\relax
+ \ifdim\scratchwidth>\directfillinlinesparameter\c!margin\else
+ \expandafter\rlap
+ \fi
+ {\kern\scratchdistance
+ \blackrule
+ [\c!color=\directfillinlinesparameter\c!color,
+ \c!width=\scratchwidth,
+ \c!height=\scratchheight,
+ \c!depth=\scratchheight]}%
+ \frozen\advance\rightskip \directfillinlinesparameter\c!margin\relax
+ \frozen\parfillskip\zeropoint\relax
+ \endgroup}
+
\unexpanded\def\fillinline
{\dosingleempty\pack_fillinline}
\def\pack_fillinline[#1]%
- {\begingroup
- \setupcurrentfillinlines[#1]%
- \directfillinlinesparameter\c!before
- \advance\rightskip \directfillinlinesparameter\c!margin\relax
- \parfillskip\zeropoint\relax
- \dontleavehmode
- \endgroup
- \wrapuppar
- {\begingroup
- \setupcurrentfillinlines[#1]%
- \ifhmode\unskip\hfill\fi
- \scratchdistance\directfillinlinesparameter\c!distance
- \scratchheight\dimexpr\directfillinlinesparameter\c!rulethickness/\plustwo\relax
- \scratchwidth \dimexpr\directfillinlinesparameter\c!width-\scratchdistance\relax
- \ifdim\scratchwidth>\directfillinlinesparameter\c!margin\else
- \expandafter\rlap
- \fi
- {\kern\scratchdistance
- \blackrule
- [\c!color=\directfillinlinesparameter\c!color,
- \c!width=\scratchwidth,
- \c!height=\scratchheight,
- \c!depth=\scratchheight]}%
- \endgraf
- \directfillinlinesparameter\c!after
- \endgroup}}
+ {\registerparwrapper
+ {fillinline}%
+ {\pack_fillinline_before{#1}}%
+ {\pack_fillinline_after {#1}%
+ \unregisterparwrapper{fillinline}}}
\protect \endinput