summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tex/context/base/cont-new.mkii2
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4068 -> 4073 bytes
-rw-r--r--tex/context/base/context-version.pngbin105224 -> 105724 bytes
-rw-r--r--tex/context/base/context.mkii2
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/pack-com.mkiv11
-rw-r--r--tex/context/base/status-files.pdfbin24350 -> 24355 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin172398 -> 172398 bytes
-rw-r--r--tex/context/base/strc-flt.mkvi17
-rw-r--r--tex/context/base/strc-lnt.mkvi80
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
12 files changed, 65 insertions, 53 deletions
diff --git a/tex/context/base/cont-new.mkii b/tex/context/base/cont-new.mkii
index b9ccccb18..d611cb458 100644
--- a/tex/context/base/cont-new.mkii
+++ b/tex/context/base/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2012.03.12 10:15}
+\newcontextversion{2012.03.13 00:17}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index c1f987bc3..8ee0fa4be 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2012.03.12 10:15}
+\newcontextversion{2012.03.13 00:17}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index 51f153a17..f16ee70cf 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context-version.png b/tex/context/base/context-version.png
index 46a2f270b..0d34083f6 100644
--- a/tex/context/base/context-version.png
+++ b/tex/context/base/context-version.png
Binary files differ
diff --git a/tex/context/base/context.mkii b/tex/context/base/context.mkii
index 6f22c4fe5..bc330439d 100644
--- a/tex/context/base/context.mkii
+++ b/tex/context/base/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2012.03.12 10:15}
+\edef\contextversion{2012.03.13 00:17}
%D For those who want to use this:
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index 8de0012d0..902346efe 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -23,7 +23,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2012.03.12 10:15}
+\edef\contextversion{2012.03.13 00:17}
%D For those who want to use this:
diff --git a/tex/context/base/pack-com.mkiv b/tex/context/base/pack-com.mkiv
index 593f429b7..4d50bf7c7 100644
--- a/tex/context/base/pack-com.mkiv
+++ b/tex/context/base/pack-com.mkiv
@@ -15,6 +15,17 @@
\unprotect
+% \startfloatcombination will be redone ... we can decouple the floatcontent
+% and caption and pass them to combinations so that we get better fit when the
+% caption is wider than the float, testcase:
+%
+% \startfloatcombination [2*2]
+% \placefigure[local]{alpha}{\externalfigure[cow.pdf][width=1cm]}%
+% \placefigure[local]{beta} {\externalfigure[cow.pdf][width=2cm]}%
+% \placefigure[local]{gamma}{\externalfigure[cow.pdf][width=3cm]}
+% \placefigure[local]{delta}{\externalfigure[cow.pdf][width=4cm]}
+% \stopfloatcombination
+
%D We could of course map combinations onto one of the table
%D mechanisms but as it has served us well for ages we keep
%D this one. The code has been cleaned up a bit and mkiv'd.
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index f20fa1bc8..df537b46c 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index fa9dbbeee..6439fdd9f 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/strc-flt.mkvi b/tex/context/base/strc-flt.mkvi
index 32449f449..4e7efd755 100644
--- a/tex/context/base/strc-flt.mkvi
+++ b/tex/context/base/strc-flt.mkvi
@@ -828,16 +828,6 @@
\endgroup}
{\movedownsidefloat[#settings]}}
-% \def\strc_floats_move_down#setting%
-% {\processaction
-% [#setting]%
-% [ \v!line=>\strc_floats_move_down_line+,%
-% +\v!line=>\strc_floats_move_down_line+,%
-% -\v!line=>\strc_floats_move_down_line-,%
-% \v!hang=>\strc_floats_move_down_hang\plusone,%
-% +\v!hang=>\strc_floats_move_down_hang\plusone,%
-% -\v!hang=>\strc_floats_move_down_hang\minusone]}
-
\installcorenamespace{floatmovement}
\setvalue{\??floatmovement \v!line}{\strc_floats_move_down_line+}
@@ -1200,6 +1190,8 @@
{\floatcaptionparameter\c!innermargin}{\floatcaptionparameter\c!outermargin}%
\alignedline{\floatparameter\c!location}\v!middle}
+\newdimen\d_strc_floats_content
+
\def\strc_floats_set_page_variant
{\bgroup
\strc_floats_set_local_hsize
@@ -1213,6 +1205,7 @@
\let\strc_floats_align_content\strc_floats_align_content_indeed
\let\strc_floats_align_caption\strc_floats_align_caption_indeed
\strc_floats_check_caption_content
+\d_strc_floats_content\wd\b_strc_floats_content
\ifcase\floatparameter\c!method
\or % automatic
\ifnofloatcaption
@@ -1232,7 +1225,7 @@
\or % manual
\fi
\ifcase\floatrotation
- % weird, gone: \postcenterfloatbox\width
+\postcenterfloatbox\d_strc_floats_content
\else
\global\setbox\floatbox\vbox
{\rotate[\c!rotation=\number\floatrotation]{\box\floatbox}}%
@@ -1714,7 +1707,7 @@
\def\relocatecaptionright#1{\strc_floats_align_caption{\hbox to \tempfloatwidth{\hss#1}}}
\def\relocatecaptionleft #1{\strc_floats_align_caption{\hbox to \tempfloatwidth{#1\hss}}}
-\long\def\installfloatboxbuilder#1#2{\setvalue{\??floatbuilder#1}{#2}}
+\unexpanded\def\installfloatboxbuilder#1#2{\setvalue{\??floatbuilder#1}{#2}}
\def\strc_floats_build_box
{\global\setbox\floatbox\vbox
diff --git a/tex/context/base/strc-lnt.mkvi b/tex/context/base/strc-lnt.mkvi
index dbb1dcc8b..88d70264c 100644
--- a/tex/context/base/strc-lnt.mkvi
+++ b/tex/context/base/strc-lnt.mkvi
@@ -17,55 +17,63 @@
\unprotect
-\newcount\noflinenotes \newif\iftracelinenotes % will be tracker
+\installcorenamespace{linenote}
-\def\dohandlelinenote#1#2#3%
- {\bgroup
- \def\linenotelinenumber##1{\inlinerange[#2]}% ##1 == order
- \setupnote[#1][\c!numbercommand=\linenotelinenumber,\c!textcommand=\gobbleoneargument]% todo: deep hook
- \getvalue{\??vn:ln:#1}{#3}%
- \egroup}
+\let\setuplinenote\setupnote
+
+\newcount\c_strc_linenotes
+
+\unexpanded\def\definelinenote
+ {\dotripleempty\strc_linenotes_define}
+
+\def\strc_linenotes_define[#1][#2][#3]%
+ {\definenote[#1][#2][#3]%
+ \expandafter\let\csname\??linenote#1\expandafter\endcsname\csname#1\endcsname % use copy command
+ \setuevalue {#1}{\strc_linenotes_direct{#1}}%
+ \setuevalue{\e!start#1}{\strc_linenotes_start {#1}}%
+ \setuevalue{\e!stop #1}{\strc_linenotes_stop }}
+
+\unexpanded\def\strc_linenotes_direct#1#2%
+ {\global\advance\c_strc_linenotes\plusone
+ \strc_linenotes_indeed{#1}{\the\c_strc_linenotes}{#2}%
+ \strc_linenotes_traced\empty
+ \normalexpanded{\someline[\the\c_strc_linenotes]}}
+
+\unexpanded\def\strc_linenotes_start#1[#2]#3%
+ {\global\advance\c_strc_linenotes\plusone
+ \strc_linenotes_indeed{#1}{#2}{#3}%
+ \strc_linenotes_traced{#2}%
+ \startline[#2]}
+
+\unexpanded\def\strc_linenotes_stop[#1]%
+ {\stopline[#1]}
+
+\unexpanded\def\strc_linenotes_indeed#1#2#3% will be redone
+ {\begingroup
+ % we keep things local so we can use it as regular note too
+ \unexpanded\def\linenotelinenumber##1{\inlinerange[#2]}% ##1 == order
+ \setupnotation[#1][\c!numbercommand=\linenotelinenumber]% todo: deep hook
+ \setupnote[#1][\c!textcommand=\gobbleoneargument]% todo: deep hook
+ \getvalue{\??linenote#1}{#3}%
+ \endgroup}
+
+\let\strc_linenotes_traced\gobbleoneargument
-\def\dotracedlinenote#1%
+\def\strc_linenotes_traced_indeed#1%
{\iftracelinenotes
\hbox to \zeropoint
{\forgetall
\hsize\zeropoint
\hss
- \vbox to \strutheight{\llap{\red\infofont\setstrut\the\noflinenotes}\vss}%
+ \vbox to \strutheight{\llap{\red\infofont\setstrut\the\c_strc_linenotes}\vss}%
{\color[blue]{\vl}}%
\vbox to \strutheight{\rlap{\red\infofont\setstrut#1}\vss}%
\hss}%
\prewordbreak
\fi}
-\def\dolinenote#1#2%
- {\global\advance\noflinenotes\plusone
- \dohandlelinenote{#1}{\the\noflinenotes}{#2}%
- \dotracedlinenote\empty
- \normalexpanded{\someline[\the\noflinenotes]}}
-
-\def\dostartlinenote#1[#2]#3%
- {\global\advance\noflinenotes\plusone
- \dohandlelinenote{#1}{#2}{#3}%
- \dotracedlinenote{#2}%
- \startline[#2]}
-
-\def\dostoplinenote#1[#2]%
- {\stopline[#2]}
-
-\unexpanded\def\definelinenote
- {\dotripleempty\dodefinelinenote}
-
-\def\dodefinelinenote[#1][#2][#3]%
-% {\dodefinenote[#1][#2][#3]% do as we need to test for arguments
- {\definenote[#1][#2][#3]%
- \expandafter\let\csname\??vn:ln:#1\expandafter\endcsname\csname#1\endcsname % use copy command
- \setuvalue {#1}{\dolinenote {#1}}%
- \setuvalue{\e!start#1}{\dostartlinenote{#1}}%
- \setuvalue{\e!stop #1}{\dostoplinenote {#1}}}
-
-\let\setuplinenote\setupnote
+\unexpanded\def\tracelinenotes
+ {\let\strc_linenotes_traced\strc_linenotes_traced_indeed}
% We predefine one, namely \type {\linenote} cum suis.
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 6fade455d..5b0c2ebd9 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 03/12/12 10:15:00
+-- merge date : 03/13/12 00:17:36
do -- begin closure to overcome local limits and interference