From 6db11f114036fc2a18af3e265a9f8e980ad2b594 Mon Sep 17 00:00:00 2001 From: Marius Date: Tue, 12 Oct 2010 10:33:50 +0300 Subject: beta 2010.10.12 01:03 --- tex/context/base/strc-flt.mkiv | 74 +++++++++++++++++++++++------------------- 1 file changed, 40 insertions(+), 34 deletions(-) (limited to 'tex/context/base/strc-flt.mkiv') diff --git a/tex/context/base/strc-flt.mkiv b/tex/context/base/strc-flt.mkiv index ff849517f..ce101c870 100644 --- a/tex/context/base/strc-flt.mkiv +++ b/tex/context/base/strc-flt.mkiv @@ -110,17 +110,17 @@ \c!textcolor=, \c!align=, \c!number=\v!yes, -% \c!prefix=\v!no, -% \c!prefixconnector=., -% \c!way=\v!by\v!chapter, -% \c!prefixsegments=2:2, -% \c!way=\@@nrway, -% \c!blockway=\@@nrblockway, -% \c!sectionnumber=\@@nrsectionnumber, -% \c!separator=\@@koseparator, -% \c!starter=\@@kostarter, -% \c!stopper=\@@kostopper, -% \c!suffix=\floatcaptionsuffix, % hook + % \c!prefix=\v!no, + % \c!prefixconnector=., + % \c!way=\v!by\v!chapter, + % \c!prefixsegments=2:2, + % \c!way=\@@nrway, + % \c!blockway=\@@nrblockway, + % \c!sectionnumber=\@@nrsectionnumber, + % \c!separator=\@@koseparator, + % \c!starter=\@@kostarter, + % \c!stopper=\@@kostopper, + % \c!suffix=\floatcaptionsuffix, % hook \c!distance=1em, \c!conversion=\v!numbers, \c!command=] @@ -169,7 +169,7 @@ \c!local=, \c!bottombefore=, % e.g. \vfill \c!bottomafter=, - \c!default=\v!figure, + \c!default=, % default location \c!numbering=\v!yes] \def\@@bknumbering {\floatsharedparameter\c!numbering } % global one @@ -206,7 +206,6 @@ % \c!sectionnumber=\floatcaptionparameter\c!sectionnumber, % \c!conversion=\floatcaptionparameter\c!conversion]% - %D Individial settings: \unexpanded\def\setupfloat {\dodoubleargument\dosetupfloat} @@ -302,14 +301,6 @@ \installstructurelistprocessor{float}{\usestructurelistprocessor{number+title}} -% \def\thecurrentfloatnumber -% {\ifnofloatcaption \else \ifnofloatnumber \else -% % \labeltexts\currentfloat{\convertedstructurecounter[\currentfloat]}% ! ! todo: use a lua call instead -% \ifx\currentfloatnumber\relax\else -% \labeltexts\currentfloat{\ctxlua{structures.lists.savednumber("\currentfloat",\currentfloatnumber)}}% -% \fi -% \fi \fi} - \def\thecurrentfloatnumber {\ifnofloatcaption \else \ifnofloatnumber \else \ifx\currentfloatnumber\relax\else @@ -1872,25 +1863,34 @@ % float strategy, replaces some of the above macros \let\floatmethod \empty +\let\floatlabel \empty \let\floatcolumn \empty \let\floatrow \empty \let\forcedfloatmethod\empty +% \def\setfloatmethodvariables#1% +% {\getfromcommalist[#1][1]% +% \@EA\beforesplitstring\commalistelement\at:\to\floatmethod +% \@EA\aftersplitstring \commalistelement\at:\to\floatcolumn +% \@EA\aftersplitstring \floatcolumn\at*\to\floatrow +% \@EA\beforesplitstring\floatcolumn\at*\to\floatcolumn} + +\def\setfloatmethodvariables#1% \floatmethod \floatlabel \floatrow \floatcolumn + {\ctxlua{floats.analysemethod("#1")}} + \def\dogetfloatbox#1#2% {\ifvisible - \doifelsenothing{#2} - {\getfromcommalist[#1][1]% - \@EA\beforesplitstring\commalistelement\at:\to\floatmethod - \@EA\aftersplitstring \commalistelement\at:\to\floatcolumn - \@EA\aftersplitstring \floatcolumn\at*\to\floatrow - \@EA\beforesplitstring\floatcolumn\at*\to\floatcolumn - % todo: nog algemeen otr - \ifdefined\OTRSETsetpreferedcolumnslot - \OTRSETsetpreferedcolumnslot\floatcolumn\floatrow - \fi} - {\let\floatcolumn\empty - \let\floatrow\empty - \edef\floatmethod{#2}}% + \let \floatlabel \empty + \let \floatcolumn\empty + \let \floatrow \empty + \edef\floatmethod{#2}% + \ifx\floatmethod\empty + \setfloatmethodvariables{#1}% + % todo: nog algemeen otr + \ifdefined\OTRSETsetpreferedcolumnslot + \OTRSETsetpreferedcolumnslot\floatcolumn\floatrow + \fi + \fi \doifundefined{\string\floatmethod\floatmethod} {\let\floatmethod\v!here}% \doifsomething\forcedfloatmethod @@ -1902,6 +1902,9 @@ \def\installfloathandler#1#2% #1=keyword #2=handler {\setvalue{\string\floatmethod#1}{#2}} +\def\somesomewherefloat[#1]% + {\dofloatssavesomewherefloat\s!somewhere{#1}} + \installfloathandler \v!here \someherefloat \installfloathandler \v!force \somefixdfloat \installfloathandler \v!left \someleftsidefloat @@ -1923,6 +1926,8 @@ \installfloathandler \v!leftedge \someinleftedgefloat \installfloathandler \v!rightedge \someinrightedgefloat +\installfloathandler \v!somewhere \somesomewherefloat + \installfloathandler \v!backspace \somebackspacefloat \installfloathandler \v!cutspace \somecutspacefloat @@ -1966,6 +1971,7 @@ \unexpanded\def\placesomebotsfloat {\OTRcommand\somebotsfloat} \unexpanded\def\placesomesidefloat {\OTRcommand\somesidefloat} \unexpanded\def\placesomefacefloat {\OTRcommand\somefacefloat} +%unexpanded\def\placesomesomewherefloat{\OTRcommand\somesomewherefloat} \def\somefixdfloat {\placesomefixdfloat} \def\somepagefloat {\placesomepagefloat} -- cgit v1.2.3