summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4183 -> 4183 bytes
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/font-pre.mkiv6
-rw-r--r--tex/context/base/math-fen.mkiv106
-rw-r--r--tex/context/base/mult-def.mkiv5
-rw-r--r--tex/context/base/page-sid.mkiv31
-rw-r--r--tex/context/base/publ-imp-apa.mkvi40
-rw-r--r--tex/context/base/publ-imp-aps.mkvi33
-rw-r--r--tex/context/base/publ-imp-default.mkvi11
-rw-r--r--tex/context/base/publ-imp-page.mkvi41
-rw-r--r--tex/context/base/publ-ini.lua2
-rw-r--r--tex/context/base/publ-ini.mkiv17
-rw-r--r--tex/context/base/status-files.pdfbin24456 -> 24437 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin251109 -> 251109 bytes
-rw-r--r--tex/context/base/strc-flt.mkvi6
-rw-r--r--tex/generic/context/luatex/luatex-fonts-inj.lua11
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua13
18 files changed, 170 insertions, 156 deletions
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
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files 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
--- 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 3ab1027a7..3bee47f14 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 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