From d70443b76f95f8ff6341534d159df499d4c787df Mon Sep 17 00:00:00 2001 From: Context Git Mirror Bot Date: Mon, 11 May 2015 22:15:04 +0200 Subject: 2015-05-11 21:56:00 --- tex/context/base/cont-new.mkiv | 2 +- tex/context/base/context-version.pdf | Bin 4183 -> 4183 bytes tex/context/base/context.mkiv | 2 +- tex/context/base/font-pre.mkiv | 6 +- tex/context/base/math-fen.mkiv | 106 +++++++++++++-------- tex/context/base/mult-def.mkiv | 5 + tex/context/base/page-sid.mkiv | 31 +++++- tex/context/base/publ-imp-apa.mkvi | 40 +++----- tex/context/base/publ-imp-aps.mkvi | 33 ++----- tex/context/base/publ-imp-default.mkvi | 11 +-- tex/context/base/publ-imp-page.mkvi | 41 ++------ tex/context/base/publ-ini.lua | 2 +- tex/context/base/publ-ini.mkiv | 17 ++-- tex/context/base/status-files.pdf | Bin 24456 -> 24437 bytes tex/context/base/status-lua.pdf | Bin 251109 -> 251109 bytes tex/context/base/strc-flt.mkvi | 6 ++ tex/generic/context/luatex/luatex-fonts-inj.lua | 11 ++- tex/generic/context/luatex/luatex-fonts-merged.lua | 13 ++- 18 files changed, 170 insertions(+), 156 deletions(-) (limited to 'tex') diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv index 9adba1a84..a49185ae5 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{2015.05.11 14:01} +\newcontextversion{2015.05.11 21:53} %D This file is loaded at runtime, thereby providing an excellent place for %D hacks, patches, extensions and new features. diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf index 9560e74e9..739afcb0b 100644 Binary files a/tex/context/base/context-version.pdf and b/tex/context/base/context-version.pdf differ diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv index 4e9bf74ef..6f5a366e3 100644 --- a/tex/context/base/context.mkiv +++ b/tex/context/base/context.mkiv @@ -39,7 +39,7 @@ %D up and the dependencies are more consistent. \edef\contextformat {\jobname} -\edef\contextversion{2015.05.11 14:01} +\edef\contextversion{2015.05.11 21:53} \edef\contextkind {beta} %D For those who want to use this: diff --git a/tex/context/base/font-pre.mkiv b/tex/context/base/font-pre.mkiv index 0bf0f6f79..6072657e9 100644 --- a/tex/context/base/font-pre.mkiv +++ b/tex/context/base/font-pre.mkiv @@ -561,11 +561,15 @@ \definealternativestyle [\v!smaller] [\setsmallbodyfont\tf] [] \definealternativestyle [\v!sans,\v!sansserif] [\ss] [] -\definealternativestyle [\v!sansbold] [\ss\bf] [] \definealternativestyle [\v!roman,\v!serif,\v!regular] [\rm] \definealternativestyle [\v!handwritten] [\hw] \definealternativestyle [\v!calligraphic] [\cg] +\definealternativestyle [\v!sansnormal] [\ss\tf] [] +\definealternativestyle [\v!sansbold] [\ss\bf] [] +\definealternativestyle [\v!serifnormal] [\rm\tf] [] +\definealternativestyle [\v!serifbold] [\rm\bf] [] + % % maybe we need interface neutral as well (for use in cld): % % \letcscsname\mediaeval \csname\v!mediaeval \endcsname diff --git a/tex/context/base/math-fen.mkiv b/tex/context/base/math-fen.mkiv index ee82d89d1..0e5073630 100644 --- a/tex/context/base/math-fen.mkiv +++ b/tex/context/base/math-fen.mkiv @@ -133,6 +133,11 @@ \definemathfence [solidus] [\c!left="2044,\c!right="2044] \definemathfence [ceil] [\c!left="2308,\c!right="2309] \definemathfence [floor] [\c!left="230A,\c!right="230B] +\definemathfence [moustache] [\c!left="23B0,\c!right="23B1] +\definemathfence [uppercorner] [\c!left="231C,\c!right="231D] +\definemathfence [lowercorner] [\c!left="231E,\c!right="231F] +\definemathfence [group] [\c!left="27EE,\c!right="27EF] +\definemathfence [openbracket] [\c!left="27E6,\c!right="27E7] \definemathfence [nothing] @@ -147,38 +152,54 @@ \definemathfence [mirroredangle] [mirrored] [\c!right="27E8,\c!left="27E9] \definemathfence [mirroreddoubleangle] [mirrored] [\c!right="27EA,\c!left="27EB] \definemathfence [mirroredsolidus] [mirrored] [\c!right="2044,\c!left="2044] +\definemathfence [mirroredceil] [mirrored] [\c!right="2308,\c!left="2309] +\definemathfence [mirroredfloor] [mirrored] [\c!right="230A,\c!left="230B] +\definemathfence [mirroredmoustache] [mirrored] [\c!right="23B0,\c!left="23B1] +\definemathfence [mirroreduppercorner] [mirrored] [\c!right="231C,\c!left="231D] +\definemathfence [mirroredlowercorner] [mirrored] [\c!right="231E,\c!left="231F] +\definemathfence [mirroredgroup] [mirrored] [\c!right="27EE,\c!left="27EF] +\definemathfence [mirroredopenbracket] [mirrored] [\c!right="27E6,\c!left="27E7] + \definemathfence [mirrorednothing] [mirrored] %D A bonus: -\unexpanded\def\Lparent {\math_fenced_fenced_start{parenthesis}} \unexpanded\def\Rparent {\math_fenced_fenced_stop{parenthesis}} -\unexpanded\def\Lbracket {\math_fenced_fenced_start{bracket}} \unexpanded\def\Rbracket {\math_fenced_fenced_stop{bracket}} -\unexpanded\def\Lbrace {\math_fenced_fenced_start{brace}} \unexpanded\def\Rbrace {\math_fenced_fenced_stop{brace}} -\unexpanded\def\Langle {\math_fenced_fenced_start{angle}} \unexpanded\def\Rangle {\math_fenced_fenced_stop{angle}} -\unexpanded\def\Ldoubleangle {\math_fenced_fenced_start{doubleangle}} \unexpanded\def\Rdoubleangle {\math_fenced_fenced_stop{doubleangle}} -\unexpanded\def\Lbar {\math_fenced_fenced_start{bar}} \unexpanded\def\Rbar {\math_fenced_fenced_stop{bar}} -\unexpanded\def\Ldoublebar {\math_fenced_fenced_start{doublebar}} \unexpanded\def\Rdoublebar {\math_fenced_fenced_stop{doublebar}} -\unexpanded\def\Ltriplebar {\math_fenced_fenced_start{triplebar}} \unexpanded\def\Rtriplebar {\math_fenced_fenced_stop{triplebar}} -\unexpanded\def\Lsolidus {\math_fenced_fenced_start{solidus}} \unexpanded\def\Rsolidus {\math_fenced_fenced_stop{solidus}} -\unexpanded\def\Lnothing {\math_fenced_fenced_start{nothing}} \unexpanded\def\Rnothing {\math_fenced_fenced_stop{nothing}} -\unexpanded\def\Lfloor {\math_fenced_fenced_start{floor}} \unexpanded\def\Rfloor {\math_fenced_fenced_stop{floor}} -\unexpanded\def\Lceil {\math_fenced_fenced_start{ceil}} \unexpanded\def\Rceil {\math_fenced_fenced_stop{ceil}} - -\unexpanded\def\Lparentmirrored {\math_fenced_fenced_stop{mirroredparenthesis}} \unexpanded\def\Rparentmirrored {\math_fenced_fenced_start{mirroredparenthesis}} -\unexpanded\def\Lbracketmirrored {\math_fenced_fenced_stop{mirroredbracket}} \unexpanded\def\Rbracketmirrored {\math_fenced_fenced_start{mirroredbracket}} -\unexpanded\def\Lbracemirrored {\math_fenced_fenced_stop{mirroredbrace}} \unexpanded\def\Rbracemirrored {\math_fenced_fenced_start{mirroredbrace}} -\unexpanded\def\Langlemirrored {\math_fenced_fenced_stop{mirroredangle}} \unexpanded\def\Ranglemirrored {\math_fenced_fenced_start{mirroredangle}} -\unexpanded\def\Ldoubleanglemirrored {\math_fenced_fenced_stop{mirroreddoubleangle}} \unexpanded\def\Rdoubleanglemirrored {\math_fenced_fenced_start{mirroreddoubleangle}} -\unexpanded\def\Lbarmirrored {\math_fenced_fenced_stop{mirroredbar}} \unexpanded\def\Rbarmirrored {\math_fenced_fenced_start{mirroredbar}} -\unexpanded\def\Ldoublebarmirrored {\math_fenced_fenced_stop{mirroreddoublebar}} \unexpanded\def\Rdoublebarmirrored {\math_fenced_fenced_start{mirroreddoublebar}} -\unexpanded\def\Ltriplebarmirrored {\math_fenced_fenced_stop{mirroredtriplebar}} \unexpanded\def\Rtriplebarmirrored {\math_fenced_fenced_start{mirroredtriplebar}} -\unexpanded\def\Lsolidusmirrored {\math_fenced_fenced_stop{mirroredsolidus}} \unexpanded\def\Rsolidusmirrored {\math_fenced_fenced_start{mirroredsolidus}} -\unexpanded\def\Lnothingmirrored {\math_fenced_fenced_stop{mirrorednothing}} \unexpanded\def\Rnothingmirrored {\math_fenced_fenced_start{mirrorednothing}} - -%D And another one: +\unexpanded\def\Lparent {\math_fenced_fenced_start{parenthesis}} \unexpanded\def\Rparent {\math_fenced_fenced_stop {parenthesis}} +\unexpanded\def\Lbracket {\math_fenced_fenced_start{bracket}} \unexpanded\def\Rbracket {\math_fenced_fenced_stop {bracket}} +\unexpanded\def\Lbrace {\math_fenced_fenced_start{brace}} \unexpanded\def\Rbrace {\math_fenced_fenced_stop {brace}} +\unexpanded\def\Langle {\math_fenced_fenced_start{angle}} \unexpanded\def\Rangle {\math_fenced_fenced_stop {angle}} +\unexpanded\def\Ldoubleangle {\math_fenced_fenced_start{doubleangle}} \unexpanded\def\Rdoubleangle {\math_fenced_fenced_stop {doubleangle}} +\unexpanded\def\Lbar {\math_fenced_fenced_start{bar}} \unexpanded\def\Rbar {\math_fenced_fenced_stop {bar}} +\unexpanded\def\Ldoublebar {\math_fenced_fenced_start{doublebar}} \unexpanded\def\Rdoublebar {\math_fenced_fenced_stop {doublebar}} +\unexpanded\def\Ltriplebar {\math_fenced_fenced_start{triplebar}} \unexpanded\def\Rtriplebar {\math_fenced_fenced_stop {triplebar}} +\unexpanded\def\Lsolidus {\math_fenced_fenced_start{solidus}} \unexpanded\def\Rsolidus {\math_fenced_fenced_stop {solidus}} +\unexpanded\def\Lfloor {\math_fenced_fenced_start{floor}} \unexpanded\def\Rfloor {\math_fenced_fenced_stop {floor}} +\unexpanded\def\Lceil {\math_fenced_fenced_start{ceil}} \unexpanded\def\Rceil {\math_fenced_fenced_stop {ceil}} +\unexpanded\def\Lmoustache {\math_fenced_fenced_start{moustache}} \unexpanded\def\Rmoustache {\math_fenced_fenced_stop {moustache}} +\unexpanded\def\Luppercorner {\math_fenced_fenced_start{uppercorner}} \unexpanded\def\Ruppercorner {\math_fenced_fenced_stop {uppercorner}} +\unexpanded\def\Llowercorner {\math_fenced_fenced_start{lowercorner}} \unexpanded\def\Rlowercorner {\math_fenced_fenced_stop {lowercorner}} +\unexpanded\def\Lgroup {\math_fenced_fenced_start{group}} \unexpanded\def\Rgroup {\math_fenced_fenced_stop {group}} +\unexpanded\def\Lopenbracket {\math_fenced_fenced_start{openbracket}} \unexpanded\def\Ropenbracket {\math_fenced_fenced_stop {openbracket}} +\unexpanded\def\Lnothing {\math_fenced_fenced_start{nothing}} \unexpanded\def\Rnothing {\math_fenced_fenced_stop {nothing}} + +\unexpanded\def\Lparentmirrored {\math_fenced_fenced_stop {mirroredparenthesis}} \unexpanded\def\Rparentmirrored {\math_fenced_fenced_start{mirroredparenthesis}} +\unexpanded\def\Lbracketmirrored {\math_fenced_fenced_stop {mirroredbracket}} \unexpanded\def\Rbracketmirrored {\math_fenced_fenced_start{mirroredbracket}} +\unexpanded\def\Lbracemirrored {\math_fenced_fenced_stop {mirroredbrace}} \unexpanded\def\Rbracemirrored {\math_fenced_fenced_start{mirroredbrace}} +\unexpanded\def\Langlemirrored {\math_fenced_fenced_stop {mirroredangle}} \unexpanded\def\Ranglemirrored {\math_fenced_fenced_start{mirroredangle}} +\unexpanded\def\Ldoubleanglemirrored {\math_fenced_fenced_stop {mirroreddoubleangle}} \unexpanded\def\Rdoubleanglemirrored {\math_fenced_fenced_start{mirroreddoubleangle}} +\unexpanded\def\Lbarmirrored {\math_fenced_fenced_stop {mirroredbar}} \unexpanded\def\Rbarmirrored {\math_fenced_fenced_start{mirroredbar}} +\unexpanded\def\Ldoublebarmirrored {\math_fenced_fenced_stop {mirroreddoublebar}} \unexpanded\def\Rdoublebarmirrored {\math_fenced_fenced_start{mirroreddoublebar}} +\unexpanded\def\Ltriplebarmirrored {\math_fenced_fenced_stop {mirroredtriplebar}} \unexpanded\def\Rtriplebarmirrored {\math_fenced_fenced_start{mirroredtriplebar}} +\unexpanded\def\Lsolidusmirrored {\math_fenced_fenced_stop {mirroredsolidus}} \unexpanded\def\Rsolidusmirrored {\math_fenced_fenced_start{mirroredsolidus}} +\unexpanded\def\Lfloormirrored {\math_fenced_fenced_stop {mirroredfloor}} \unexpanded\def\Rfloormirrored {\math_fenced_fenced_start{mirroredfloor}} +\unexpanded\def\Lceilmirrored {\math_fenced_fenced_stop {mirroredceil}} \unexpanded\def\Rceilmirrored {\math_fenced_fenced_start{mirroredceil}} +\unexpanded\def\Lmoustachemirrored {\math_fenced_fenced_stop {mirroredmoustache}} \unexpanded\def\Rmoustachemirrored {\math_fenced_fenced_start{mirroredmoustache}} +\unexpanded\def\Luppercornermirrored {\math_fenced_fenced_stop {mirroreduppercorner}} \unexpanded\def\Ruppercornermirrored {\math_fenced_fenced_start{mirroreduppercorner}} +\unexpanded\def\Llowercornermirrored {\math_fenced_fenced_stop {mirroredlowercorner}} \unexpanded\def\Rlowercornermirrored {\math_fenced_fenced_start{mirroredlowercorner}} +\unexpanded\def\Lgroupmirrored {\math_fenced_fenced_stop {mirroredgroup}} \unexpanded\def\Rgroupmirrored {\math_fenced_fenced_start{mirroredgroup}} +\unexpanded\def\Lopenbracketmirrored {\math_fenced_fenced_stop {mirroredopenbracket}} \unexpanded\def\Ropenbracketmirrored {\math_fenced_fenced_start{mirroredopenbracket}} +\unexpanded\def\Lnothingmirrored {\math_fenced_fenced_stop {mirrorednothing}} \unexpanded\def\Rnothingmirrored {\math_fenced_fenced_start{mirrorednothing}} -% \setupmathfences[color=darkgreen] -% % \startformula % \left{ \frac{1}{a} \right} % \left[ \frac{1}{b} \right] @@ -279,17 +300,26 @@ \let\lbrack\lbracket \let\rbrack\rbracket -\installmathfencepair \lbrace \Lbrace \rbrace \Rbrace -\installmathfencepair \lbracket \Lbracket \rbracket \Rbracket -\installmathfencepair \lparen \Lparen \rparen \Rparen -\installmathfencepair \lparent \Lparent \rparent \Rparent -\installmathfencepair \langle \Langle \rangle \Rangle -%installmathfencepair \lrangle \Ldoubleangle \rrangle \Rdoubleangle -%installmathfencepair \lbar \Lbar \rbar \Rbar -\installmathfencepair \vert \Lbar \vert \Rbar -\installmathfencepair \solidus \Lsolidus \solidus \Rsolidus -\installmathfencepair \lfloor \Lfloor \rfloor \Rfloor -\installmathfencepair \lceil \Lceil \rceil \Rceil +\installmathfencepair \lbrace \Lbrace \rbrace \Rbrace +\installmathfencepair \lbracket \Lbracket \rbracket \Rbracket +\installmathfencepair \lparen \Lparen \rparen \Rparen +\installmathfencepair \lparent \Lparent \rparent \Rparent +\installmathfencepair \langle \Langle \rangle \Rangle +\installmathfencepair \lrangle \Ldoubleangle \rrangle \Rdoubleangle +\installmathfencepair \lbar \Lbar \rbar \Rbar +\installmathfencepair \lVert \Ldoublebar \rVert \Rdoublebar +\installmathfencepair \vert \Lbar \vert \Rbar +\installmathfencepair \solidus \Lsolidus \solidus \Rsolidus +\installmathfencepair \lfloor \Lfloor \rfloor \Rfloor +\installmathfencepair \lceil \Lceil \rceil \Rceil + +\installmathfencepair \ulcorner \Luppercorner \ulcorner \Ruppercorner +\installmathfencepair \llcorner \Llowercorner \llcorner \Rlowercorner +\installmathfencepair \lmoustache \Lmoustache \lmoustache \Rmoustache +\installmathfencepair \llbracket \Lopenbracket \llbracket \Ropenbracket +\installmathfencepair \lgroup \Lgroup \lgroup \Rgroup + +% \setupmathfences[color=darkgreen] \unexpanded\def\{{\mathortext\lbrace \letterleftbrace } % or maybe a chardef \unexpanded\def\}{\mathortext\rbrace \letterrightbrace } % or maybe a chardef diff --git a/tex/context/base/mult-def.mkiv b/tex/context/base/mult-def.mkiv index cea2a6a6a..fb7f2b182 100644 --- a/tex/context/base/mult-def.mkiv +++ b/tex/context/base/mult-def.mkiv @@ -34,6 +34,11 @@ % start todo in mult-def.lua: +\def\v!sansnormal {sansnormal} +%def\v!sansbold {sansbold} +\def\v!serifnormal {serifnormal} +\def\v!serifbold {serifbold} + \def\c!functionstyle {functionstyle} \def\c!functioncolor {functioncolor} diff --git a/tex/context/base/page-sid.mkiv b/tex/context/base/page-sid.mkiv index 42c676be5..cbee4da20 100644 --- a/tex/context/base/page-sid.mkiv +++ b/tex/context/base/page-sid.mkiv @@ -661,14 +661,39 @@ \global\settrue\c_page_floats_room \fi} +% \def\page_sides_prepare_space +% {\par +% % no longer needed \whitespace +% \begingroup +% \forgetall +% \reseteverypar +% \verticalstrut +% \vskip-\struttotal +% \endgroup} + +\installtextracker + {sidefloats.anchor} + {\let\page_sides_anchor\page_sides_anchor_yes} + {\let\page_sides_anchor\page_sides_anchor_nop} + +\def\page_sides_anchor_yes + {\darkred + \hskip-5\emwidth + \vrule\s!height.05\exheight\s!depth.05\exheight\s!width10\emwidth} + +\def\page_sides_anchor_nop + {\strut} + +\let\page_sides_anchor\page_sides_anchor_nop + \def\page_sides_prepare_space {\par - % no longer needed \whitespace \begingroup - \forgetall \reseteverypar - \verticalstrut + \dontleavehmode\hbox to \zeropoint{\page_sides_anchor\hss\strut}% + \vskip-\parskip \vskip-\struttotal + \inhibitblank \endgroup} \def\page_sides_handle_float#1% grid (4) is rather experimental diff --git a/tex/context/base/publ-imp-apa.mkvi b/tex/context/base/publ-imp-apa.mkvi index 6bca46204..cf35a4b80 100644 --- a/tex/context/base/publ-imp-apa.mkvi +++ b/tex/context/base/publ-imp-apa.mkvi @@ -91,7 +91,12 @@ \definebtx [apa:\s!list:\s!page] [apa:\s!list] - [\c!pagecommand={\wordright}] + [\c!separator:2={,\space}, + \c!separator:3={,\space\btxlabeltext{apa:and}\space}, + \c!separator:4={\space\btxlabeltext{apa:and}\space}, + \c!left={\btxleftparenthesis}, + \c!right={\btxrightparenthesis}, + \c!command={\wordright}] \definebtx [apa:\s!list:numbering] @@ -602,11 +607,15 @@ % The following differs from the default returning n.d. if year is empty +\startsetups btx:apa:nd + \btxlabeltext{apa:nd} +\stopsetups + \startsetups btx:apa:cite:author:year \texdefinition{\s!btx:\s!cite:concat} %\btxparameter\c!left \ifx\currentbtxfirst\empty - \btxlabeltext{apa:nd} + \fastsetup{btx:apa:nd} \else \texdefinition {\s!btx:\s!cite:inject} { \btxcitereference @@ -627,37 +636,15 @@ \fastsetup{btx:apa:cite:author:year} \stopsetups -% The following differs from the default by including the labels p. and pp. +% used in publ-imp-page.mkvi -\startsetups btx:apa:list:page - \fastsetup{\s!btx:\s!page:concat} +\startsetups [btx:apa:list:page-or-pages] \ifx\currentbtxlastpage\empty \btxlabeltext{apa:page} \else \btxlabeltext{apa:pages} \fi \btxnbsp - \ifconditional\btxinteractive - \goto { - \currentbtxfirstpage - } [ - internal(\currentbtxfirstinternal) - ] - \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector - \goto { - \currentbtxlastpage - } [ - internal(\currentbtxlastinternal) - ] - \fi - \else - \currentbtxfirstpage - \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector - \currentbtxlastpage - \fi - \fi \stopsetups % The sameauthor feature may not be APA compliant @@ -677,7 +664,6 @@ \c!height=1.5\linewidth]% \linewidth is just too thin with respect to font strokes... \stopsetups - \startsetups [apa:list:sameauthor:\v!empty] \kern\dimexpr\listparameter\c!margin-\interwordspace\relax \stopsetups diff --git a/tex/context/base/publ-imp-aps.mkvi b/tex/context/base/publ-imp-aps.mkvi index 948cca8bc..a173e0e4c 100644 --- a/tex/context/base/publ-imp-aps.mkvi +++ b/tex/context/base/publ-imp-aps.mkvi @@ -83,7 +83,12 @@ \definebtx [aps:\s!list:\s!page] [aps:\s!list] - [\c!left={\space}] + [\c!separator:2={,\space}, + \c!separator:3={,\space\btxlabeltext{aps:and}\space}, + \c!separator:4={\space\btxlabeltext{aps:and}\space}, + \c!left={\btxleftparenthesis}, + \c!right={\btxrightparenthesis}, + \c!command={\wordright}] \definebtx [aps:\s!list:numbering] @@ -561,35 +566,15 @@ \fastsetup{btx:aps:cite:author:year} \stopsetups -\startsetups [btx:aps:list:page] - \fastsetup{\s!btx:\s!page:concat} +% used in publ-imp-page.mkvi + +\startsetups [btx:aps:list:page-or-pages] \ifx\currentbtxlastpage\empty \btxlabeltext{aps:page} \else \btxlabeltext{aps:pages} \fi \btxnbsp - \ifconditional\btxinteractive - \goto { - \currentbtxfirstpage - } [ - internal(\currentbtxfirstinternal) - ] - \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector - \goto { - \currentbtxlastpage - } [ - internal(\currentbtxlastinternal) - ] - \fi - \else - \currentbtxfirstpage - \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector - \currentbtxlastpage - \fi - \fi \stopsetups %D Instead of texdefinitions without arguments, we could have used setups but in my diff --git a/tex/context/base/publ-imp-default.mkvi b/tex/context/base/publ-imp-default.mkvi index 2fc58ef99..73520c7ff 100644 --- a/tex/context/base/publ-imp-default.mkvi +++ b/tex/context/base/publ-imp-default.mkvi @@ -17,11 +17,6 @@ \startbtxrenderingdefinitions[\s!default] -%?? \definebtx [\s!default:\s!page ] [\s!page] -%?? \definebtx [\s!default:\s!cite ] [\s!cite] -%?? \definebtx [\s!default:\s!list ] [\s!list] -%?? \definebtx [\s!default:\s!author] [\s!author] - \definebtxrendering [\s!default] [\c!specification=\s!default, @@ -56,7 +51,11 @@ \definebtx [\s!default:\s!list:\s!page] [\s!default:\s!list] - [\c!left={\space}] + [\c!separator:2={,\space}, + \c!separator:3={,\space\btxlabeltext{default:and}\space}, + \c!separator:4={\space\btxlabeltext{default:and}\space}, + \c!left={\btxleftparenthesis}, + \c!right={\btxrightparenthesis}] \definebtx [\s!default:\s!list:numbering] diff --git a/tex/context/base/publ-imp-page.mkvi b/tex/context/base/publ-imp-page.mkvi index f0b92c88c..2d9040b10 100644 --- a/tex/context/base/publ-imp-page.mkvi +++ b/tex/context/base/publ-imp-page.mkvi @@ -13,45 +13,17 @@ \unprotect -\definebtx - [\s!page] % or just outer level - [\c!pagestate=\v!stop, - \c!pageleft=\btxleftparenthesis, % see below!! - \c!pageright=\btxrightparenthesis, - \c!pagesep={,\space}, - \c!lastpagesep={,\space\btxlabeltext{\currentbtxspecification:and}\space}, - \c!finalpagesep={\space\btxlabeltext{\currentbtxspecification:and}\space}, - \c!pageconnector=\endash] - -\definebtx - [\s!page:\s!list] - [\s!page] - [\c!pagecommand={\wordright}] - -\startsetups \s!btx:\s!page:concat +\startsetups \s!btx:\s!list:\s!page:concat \ifcase\currentbtxoverflow - \ifcase\currentbtxconcat - \or % first - \or % second - \btxparameter\c!pagesep - \or % second of two - \btxparameter\c!lastpagesep - \or % last - \btxparameter\c!finalpagesep - \fi + \btxparameter{\c!separator:\number\currentbtxconcat} \fi \stopsetups % for the moment we have only one variant \startsetups [\s!btx:\s!list:\s!page] - \fastsetup{\s!btx:\s!page:concat} - % \ifx\currentbtxlastpage\empty - % p. - % \else - % pp. - % \fi - % \btxnbsp + \fastsetup{\s!btx:\s!list:\s!page:concat} + \fastsetup{\s!btx:\currentbtxspecification:\s!list:page-or-pages} \ifconditional\btxinteractive \goto { \currentbtxfirstpage @@ -59,7 +31,8 @@ internal(\currentbtxfirstinternal) ] \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector + %\btxparameter\c!pageconnector + \btxparameter\c!range \goto { \currentbtxlastpage } [ @@ -69,7 +42,7 @@ \else \currentbtxfirstpage \ifx\currentbtxlastpage\empty \else - \btxparameter\c!pageconnector + \btxparameter\c!range \currentbtxlastpage \fi \fi diff --git a/tex/context/base/publ-ini.lua b/tex/context/base/publ-ini.lua index 2921fd334..e7aa1fa67 100644 --- a/tex/context/base/publ-ini.lua +++ b/tex/context/base/publ-ini.lua @@ -486,7 +486,7 @@ local findallused do local tags = not find and settings_to_array(reference) local todo = { } local okay = { } -- only if mark - local allused = usedentries[dataset] + local allused = usedentries[dataset] or { } local luadata = current.luadata local details = current.details local ordered = current.ordered diff --git a/tex/context/base/publ-ini.mkiv b/tex/context/base/publ-ini.mkiv index 0b12d97ed..cdbc03df0 100644 --- a/tex/context/base/publ-ini.mkiv +++ b/tex/context/base/publ-ini.mkiv @@ -624,20 +624,16 @@ \setbtxlist % probably already set \btx_reset_page \setbtxparameterset\s!list\s!page - \btxparameter\c!pagecommand + \btxparameter\c!command {\usebtxstyleandcolor\c!style\c!color - \btxparameter\c!pageleft + \btxparameter\c!left \clf_btxflushpages{\currentbtxdataset}{\currentbtxtag}% - \btxparameter\c!pageright}% + \btxparameter\c!right}% \endgroup} -\unexpanded\def\btxpagesetup#1% nothing yet +\unexpanded\def\btxpagesetup#1% there will b eno left|right|command|style at this inner level {\begingroup - %\setbtxparameterset{\c!page:\s!default}\currentbtxnumbering - \btxparameter\c!left - % \btxparameter\c!command{\publ_fast_setup\plusfive\s!list\s!page}% \publ_fast_setup\plusfive\s!list\s!page - \btxparameter\c!right \endgroup \btx_reset_page} % probably not needed @@ -1739,8 +1735,6 @@ %\c!saveinlist=\v!no, % maybe for before/after \c!textstate=\v!start, \c!width=\v!auto, - %\c!pageright=, - %\c!pageleft=, \c!separator={;\space}, \c!distance=1.5\emwidth] @@ -1772,7 +1766,8 @@ \c!separator:names:4=\btxparameter{\c!separator:2}, % between only two names \c!separator:2={;\space}, % aka pubsep - separates multiple objects \c!separator:3=\btxparameter{separator:2}, % before last object in a list - \c!separator:4=\btxparameter{separator:2}] % between only two objects + \c!separator:4=\btxparameter{separator:2}, % between only two objects + \c!pagestate=\v!stop] % Do we want these in the format? Loading them delayed is somewhat messy. diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf index bc29a27bd..2b4ff5249 100644 Binary files a/tex/context/base/status-files.pdf and b/tex/context/base/status-files.pdf differ diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf index 3ab1027a7..3bee47f14 100644 Binary files a/tex/context/base/status-lua.pdf and b/tex/context/base/status-lua.pdf differ diff --git a/tex/context/base/strc-flt.mkvi b/tex/context/base/strc-flt.mkvi index 76b587f09..cf75d3338 100644 --- a/tex/context/base/strc-flt.mkvi +++ b/tex/context/base/strc-flt.mkvi @@ -981,6 +981,12 @@ \setvalue{\??floatmovement+\v!hang}{\strc_floats_move_down_hang\plusone} \setvalue{\??floatmovement-\v!hang}{\strc_floats_move_down_hang\minusone} +\setvalue{\??floatmovement-2*\v!line}{\strc_floats_move_down_line{-2}} +\setvalue{\??floatmovement+2*\v!line}{\strc_floats_move_down_line{2}} +\setvalue{\??floatmovement 2*\v!line}{\strc_floats_move_down_line{2}} + +\unexpanded\def\installfloatmovement#1#2{\setvalue{\??floatmovement#1}{#2}} + \def\strc_floats_move_down#setting% {\csname\??floatmovement \ifcsname\??floatmovement#setting\endcsname#setting\fi diff --git a/tex/generic/context/luatex/luatex-fonts-inj.lua b/tex/generic/context/luatex/luatex-fonts-inj.lua index cb9ed891c..332e92033 100644 --- a/tex/generic/context/luatex/luatex-fonts-inj.lua +++ b/tex/generic/context/luatex/luatex-fonts-inj.lua @@ -647,10 +647,10 @@ local function inject_cursives(glyphs,nofglyphs) end end -local function inject_kerns(head,glyphs,nofglyphs) +local function inject_kerns(head,list,length) -- todo: pre/post/replace - for i=1,#glyphs do - local n = glyphs[i] + for i=1,length do + local n = list[i] local pn = rawget(properties,n) if pn then local i = rawget(pn,"injections") @@ -688,6 +688,9 @@ local function inject_everything(head,where) end inject_kerns(head,glyphs,nofglyphs) end + if nofmarks > 0 then + inject_kerns(head,marks,nofmarks) + end if keepregisteredcounts then keepregisteredcounts = false else @@ -998,7 +1001,7 @@ local function inject_pairs_only(head,where) if getsubtype(n) < 256 then local p = rawget(properties,n) if p then - local i = rawget(pn,"replaceinjections") + local i = rawget(p,"replaceinjections") if i then local yoffset = i.yoffset if yoffset and yoffset ~= 0 then diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua index 68b3fc5b1..5d2748b53 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 : 05/11/15 14:01:41 +-- merge date : 05/11/15 21:53:45 do -- begin closure to overcome local limits and interference @@ -10509,9 +10509,9 @@ local function inject_cursives(glyphs,nofglyphs) end end end -local function inject_kerns(head,glyphs,nofglyphs) - for i=1,#glyphs do - local n=glyphs[i] +local function inject_kerns(head,list,length) + for i=1,length do + local n=list[i] local pn=rawget(properties,n) if pn then local i=rawget(pn,"injections") @@ -10548,6 +10548,9 @@ local function inject_everything(head,where) end inject_kerns(head,glyphs,nofglyphs) end + if nofmarks>0 then + inject_kerns(head,marks,nofmarks) + end if keepregisteredcounts then keepregisteredcounts=false else @@ -10838,7 +10841,7 @@ local function inject_pairs_only(head,where) if getsubtype(n)<256 then local p=rawget(properties,n) if p then - local i=rawget(pn,"replaceinjections") + local i=rawget(p,"replaceinjections") if i then local yoffset=i.yoffset if yoffset and yoffset~=0 then -- cgit v1.2.3