summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2018-04-04 20:15:26 +0000
committerKarl Berry <karl@freefriends.org>2018-04-04 20:15:26 +0000
commitb8e3667229f98fc455cfd2b16302bd8f366af5ed (patch)
treed68f65580c1647769132c2e4cf6ec46bf6f392d9 /Master/texmf-dist/tex
parent4e4627f37781e2ceb953152ae93e96e71b02a8b0 (diff)
context (current 4apr18)
git-svn-id: svn://tug.org/texlive/trunk@47285 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/context/base/mkii/cont-new.mkii2
-rw-r--r--Master/texmf-dist/tex/context/base/mkii/context.mkii2
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/context.mkiv2
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/font-ini.mkvi28
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/lxml-tab.lua38
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/meta-imp-txt.mkiv5
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/page-inf.mkiv43
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/page-one.mkiv72
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/page-sid.mkiv5
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/publ-ini.lua4
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/status-files.pdfbin26081 -> 26054 bytes
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/status-lua.pdfbin255107 -> 255106 bytes
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/strc-flt.mkvi17
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/type-set.mkiv3
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/util-str.lua1
-rw-r--r--Master/texmf-dist/tex/context/base/mkiv/util-tab.lua22
-rw-r--r--Master/texmf-dist/tex/context/interface/mkiv/i-context.pdfbin846098 -> 846220 bytes
-rw-r--r--Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdfbin61032 -> 61029 bytes
-rw-r--r--Master/texmf-dist/tex/context/modules/common/s-abbreviations-logos.tex1
-rw-r--r--Master/texmf-dist/tex/context/sample/common/poe.tex33
-rw-r--r--Master/texmf-dist/tex/context/sample/common/samples.tex1
-rw-r--r--Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua2
23 files changed, 214 insertions, 69 deletions
diff --git a/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii b/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii
index 082e39ee4a2..49499250257 100644
--- a/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii
+++ b/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2018.04.02 15:43}
+\newcontextversion{2018.04.04 00:51}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/Master/texmf-dist/tex/context/base/mkii/context.mkii b/Master/texmf-dist/tex/context/base/mkii/context.mkii
index 4e087c1c8a6..2938661941d 100644
--- a/Master/texmf-dist/tex/context/base/mkii/context.mkii
+++ b/Master/texmf-dist/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2018.04.02 15:43}
+\edef\contextversion{2018.04.04 00:51}
%D For those who want to use this:
diff --git a/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv b/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv
index c705c3afcc4..9cb89326039 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2018.04.02 15:43}
+\newcontextversion{2018.04.04 00:51}
%D This file is loaded at runtime, thereby providing an excellent place for
%D hacks, patches, extensions and new features.
diff --git a/Master/texmf-dist/tex/context/base/mkiv/context.mkiv b/Master/texmf-dist/tex/context/base/mkiv/context.mkiv
index 2adc6b3eee0..9a52cfe78b1 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/context.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/context.mkiv
@@ -42,7 +42,7 @@
%D has to match \type {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2018.04.02 15:43}
+\edef\contextversion{2018.04.04 00:51}
\edef\contextkind {beta}
%D For those who want to use this:
diff --git a/Master/texmf-dist/tex/context/base/mkiv/font-ini.mkvi b/Master/texmf-dist/tex/context/base/mkiv/font-ini.mkvi
index ee20d7b32b0..69318291929 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/font-ini.mkvi
+++ b/Master/texmf-dist/tex/context/base/mkiv/font-ini.mkvi
@@ -2510,14 +2510,32 @@
% \popmacro\fontclass
% \ifx\fontclass\empty\else\setupbodyfont\relax\fi}
+% \unexpanded\def\usebodyfont[#1]%
+% {\pushmacro\fontclass
+% \font_helpers_set_font\zerocount{#1}%
+% \popmacro\fontclass
+% \ifx\fontclass\empty \else
+% \font_basics_setupbodyfont_nop
+% \fi}
+
\unexpanded\def\usebodyfont[#1]%
- {\pushmacro\fontclass
- \font_helpers_set_font\zerocount{#1}%
- \popmacro\fontclass
- \ifx\fontclass\empty \else
- \font_basics_setupbodyfont_nop
+ {\ifx\fontclass\empty
+ \setupbodyfont[#1]%
+ \else
+ \switchtobodyfont[#1]%
+ \fullrestoreglobalbodyfont
\fi}
+\unexpanded\def\showbodyfontstate
+ {\dontleavehmode
+ \start
+ \infofont
+ [fontclass: \fontclass,\space
+ fontbody: \fontbody ,\space
+ fontface: \fontface ,\space
+ fontsize: \fontsize ]%
+ \stop}
+
%D Handy for manuals:
%D The \type {\tochar} commmand takes a specification:
diff --git a/Master/texmf-dist/tex/context/base/mkiv/lxml-tab.lua b/Master/texmf-dist/tex/context/base/mkiv/lxml-tab.lua
index 8d4be58abfb..1ef83c47de7 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/lxml-tab.lua
+++ b/Master/texmf-dist/tex/context/base/mkiv/lxml-tab.lua
@@ -14,7 +14,7 @@ if not modules then modules = { } end modules ['lxml-tab'] = {
-- maybe when letter -> utf, else name .. then we need an option to the serializer .. a bit
-- of work so we delay this till we cleanup
-local trace_entities = false trackers .register("xml.entities", function(v) trace_entities = v end)
+local trace_entities = false trackers.register("xml.entities", function(v) trace_entities = v end)
local report_xml = logs and logs.reporter("xml","core") or function(...) print(string.format(...)) end
@@ -968,6 +968,25 @@ local function publicentity(k,v,n)
end
entities[k] = v
end
+local function entityfile(pattern,k,v,n)
+ if n then
+ local okay, data
+ if resolvers then
+ okay, data = resolvers.loadbinfile(n)
+ else
+ data = io.loaddata(n)
+ okay = data and data ~= ""
+ end
+ if okay then
+ if trace_entities then
+ report_xml("loading public entities %a as %a from %a",k,v,n)
+ end
+ lpegmatch(pattern,data)
+ return
+ end
+ end
+ report_xml("ignoring public entities %a as %a from %a",k,v,n)
+end
local function install(spacenewline,spacing,anything)
@@ -1003,7 +1022,7 @@ local function install(spacenewline,spacing,anything)
local attribute = (somespace * name * optionalspace * equal * optionalspace * attributevalue) / add_attribute
--- local attributes = (attribute + somespace^-1 * (((1-endofattributes)^1)/attribute_specification_error))^0
+ -- local attributes = (attribute + somespace^-1 * (((1-endofattributes)^1)/attribute_specification_error))^0
local attributes = (attribute + somespace^-1 * (((anything-endofattributes)^1)/attribute_specification_error))^0
local parsedtext = text_parsed -- / add_text
@@ -1041,10 +1060,15 @@ local function install(spacenewline,spacing,anything)
local weirdentitytype = P("%") * (somespace * doctypename * somespace * value) / weirdentity
local normalentitytype = (doctypename * somespace * value) / normalentity
- local publicentitytype = (doctypename * somespace * P("PUBLIC") * somespace * value)/publicentity
+ local publicentitytype = (doctypename * somespace * P("PUBLIC") * somespace * value) / publicentity
+
local systementitytype = (doctypename * somespace * P("SYSTEM") * somespace * value * somespace * P("NDATA") * somespace * doctypename)/systementity
local entitydoctype = optionalspace * P("<!ENTITY") * somespace * (systementitytype + publicentitytype + normalentitytype + weirdentitytype) * optionalspace * close
+ local publicentityfile = (doctypename * somespace * P("PUBLIC") * somespace * value * (somespace * value)^0) / function(...)
+ entityfile(entitydoctype,...)
+ end
+
local function weirdresolve(s)
lpegmatch(entitydoctype,parameters[s])
end
@@ -1065,7 +1089,11 @@ local function install(spacenewline,spacing,anything)
local publicdoctype = doctypename * somespace * P("PUBLIC") * somespace * value * somespace * value * somespace * doctypeset
local systemdoctype = doctypename * somespace * P("SYSTEM") * somespace * value * somespace * doctypeset
local simpledoctype = (anything-close)^1 -- * balanced^0
- local somedoctype = C((somespace * (publicdoctype + systemdoctype + definitiondoctype + simpledoctype) * optionalspace)^0)
+ local somedoctype = C((somespace * (
+
+publicentityfile +
+
+ publicdoctype + systemdoctype + definitiondoctype + simpledoctype) * optionalspace)^0)
local instruction = (spacing * begininstruction * someinstruction * endinstruction) / function(...) add_special("@pi@",...) end
local comment = (spacing * begincomment * somecomment * endcomment ) / function(...) add_special("@cm@",...) end
@@ -1294,7 +1322,7 @@ a filename or a file handle.</p>
function xml.load(filename,settings)
local data = ""
if type(filename) == "string" then
- -- local data = io.loaddata(filename) - -todo: check type in io.loaddata
+ -- local data = io.loaddata(filename) -- todo: check type in io.loaddata
local f = io.open(filename,'r') -- why not 'rb'
if f then
data = f:read("*all") -- io.readall(f) ... only makes sense for large files
diff --git a/Master/texmf-dist/tex/context/base/mkiv/meta-imp-txt.mkiv b/Master/texmf-dist/tex/context/base/mkiv/meta-imp-txt.mkiv
index 56da9229d60..e9660b3a7e2 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/meta-imp-txt.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/meta-imp-txt.mkiv
@@ -287,7 +287,6 @@
\dontcomplain
\setbox\scratchbox\hbox{\addff{mp:tp}#2}%
\ctxlua{mp.follow_initialize(\number\scratchbox)}%
- \stopluacode
\startMPcode
\includeMPgraphic{followtokens} ;
mfun_follow_draw(\number#1) ;
@@ -295,8 +294,8 @@
\ctxlua{mp.follow_reset()}%
\egroup}
-\unexpanded\def\followtokens {\dofollowtokens1}
-\unexpanded\def\followtokenscentered{\dofollowtokens0}
+\unexpanded\def\followtokens {\dofollowtokens\plusone}
+\unexpanded\def\followtokenscentered{\dofollowtokens\zerocount}
% stretched variant:
%
diff --git a/Master/texmf-dist/tex/context/base/mkiv/page-inf.mkiv b/Master/texmf-dist/tex/context/base/mkiv/page-inf.mkiv
index f60977e0c97..2064f9f25be 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/page-inf.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/page-inf.mkiv
@@ -13,7 +13,7 @@
\writestatus{loading}{ConTeXt Page Macros / Tracing Info}
-% this needs a real cleanup .. will be a more detailed list
+% This needs a real cleanup .. will be a more detailed list.
\unprotect
@@ -23,6 +23,7 @@
\newtoks\everysetupversion
\let\currentversioninfo\empty
+\let\currentversiontext\empty
\unexpanded\def\setupversion
{\dosingleargument\page_info_setup}
@@ -33,8 +34,13 @@
\def\page_info_setup[#1]%
{\the\everyresetversion
- \ifcsname\??layoutinfo#1\endcsname
- \edef\currentversioninfo{#1}%
+ \doifelseassignment{#1}%
+ {\getdummyparameters[\c!alternative=,\c!text=,#1]%
+ \edef\currentversioninfo{\dummyparameter\c!alternative}%
+ \edef\currentversiontext{\dummyparameter\c!text}}%
+ {\edef\currentversioninfo{#1}%
+ \let \currentversiontext\empty}%
+ \ifcsname\??layoutinfo\currentversioninfo\endcsname
\let\page_info_add_to_box\page_info_add_to_box_indeed
\else
\let\currentversioninfo\empty
@@ -43,33 +49,46 @@
\the\everysetupversion}
\unexpanded\def\page_info_place_info % at the bottom of the page
- {\csname\??layoutinfo\currentversioninfo\endcsname}
+ {\begincsname\??layoutinfo\currentversioninfo\endcsname}
\unexpanded\def\installversioninfo#1#2%
{\setvalue{\??layoutinfo#1}{#2}}
\unexpanded\def\includeversioninfo#1%
- {\csname\??layoutinfo#1\endcsname}
+ {\begincsname\??layoutinfo#1\endcsname}
+
+\installversioninfo\v!final
+ {\let\currentversioninfo\empty
+ \let\page_info_add_to_box\gobbleoneargument}
\installversioninfo\v!concept
{\vskip6\points
\hbox to \makeupwidth
{\infofont
- \v!concept:\space\currentdate
+ \rlap{\v!concept:\space\currentdate}%
\hss
- \page_adapts_status_info}}
+ \currentversiontext
+ \hss
+ \llap{\page_adapts_status_info}}}
\installversioninfo\v!file
{\vskip6\points
\hbox to \makeupwidth
{\infofont
- \getmessage\m!system{27}:\space\currentdate\space
+ \getmessage\m!system{27}:\space\currentdate\quad
\donefalse
- \ifx\currentproject \empty \else \space\v!project :\space\currentproject \space \donetrue \fi
- \ifx\currentproduct \empty \else \space\v!product :\space\currentproduct \space \donetrue \fi
- \ifx\currentcomponent\empty \else \space\v!component:\space\currentcomponent\space \donetrue \fi
- \ifdone \else \space\v!file :\space\jobname \space \fi
+ \doif\currentproject\currentproduct{\doif\currentproduct\currentcomponent\donetrue}%
+ \ifdone
+ \donefalse
+ \else
+ \ifx\currentproject \empty \else \space\v!project :\space\currentproject \space \donetrue \fi
+ \ifx\currentproduct \empty \else \space\v!product :\space\currentproduct \space \donetrue \fi
+ \ifx\currentcomponent\empty \else \space\v!component:\space\currentcomponent\space \donetrue \fi
+ \fi
+ \ifdone \else \space\v!file :\space\jobname \space \fi
\hss
+ \currentversiontext
+ \quad
\page_adapts_status_info}}
\installversioninfo\v!temporary
diff --git a/Master/texmf-dist/tex/context/base/mkiv/page-one.mkiv b/Master/texmf-dist/tex/context/base/mkiv/page-one.mkiv
index 35233247bb1..348c301fc2c 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/page-one.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/page-one.mkiv
@@ -481,28 +481,68 @@
#1{\box\floatbox}%
\doifinset\v!tall\floatlocationmethod\page_sides_flush_floats_after_par}
-\def\page_one_place_float_left {\page_one_place_float_side_indeed\page_sides_process_float_left\presetindentation}
-\def\page_one_place_float_right {\page_one_place_float_side_indeed\page_sides_process_float_right}
-\def\page_one_place_float_leftmargin {\page_one_place_float_side_indeed\page_sides_process_float_leftmargin}
-\def\page_one_place_float_rightmargin{\page_one_place_float_side_indeed\page_sides_process_float_rightmargin}
-\def\page_one_place_float_leftedge {\page_one_place_float_side_indeed\page_sides_process_float_leftedge}
-\def\page_one_place_float_rightedge {\page_one_place_float_side_indeed\page_sides_process_float_rightedge}
-\def\page_one_place_float_inmargin {\page_one_place_float_side_indeed\page_sides_process_float_cutspace}
-\def\page_one_place_float_backspace {\page_one_place_float_side_indeed\page_sides_process_float_backspace}
-\def\page_one_place_float_cutspace {\page_one_place_float_side_indeed\page_sides_process_float_cutspace}
-
-%def\page_one_place_float_margin {\page_one_place_float_side_indeed\page_sides_process_float_margin\nonoindentation} % wil be overloaded
-\def\page_one_place_float_margin {\page_margin_blocks_process_float}
+\def\page_one_place_float_left
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_left
+ \presetindentation}
+
+\def\page_one_place_float_right
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_right}
+
+\def\page_one_place_float_margin
+ {\page_margin_blocks_process_float
+ \nonoindentation} % new, due to popular request
+
+\def\page_one_place_float_leftmargin
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_leftmargin
+ \nonoindentation} % new, due to popular request
+
+\def\page_one_place_float_rightmargin
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_rightmargin
+ \nonoindentation} % new, due to popular request
+
+\def\page_one_place_float_leftedge
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_leftedge}
+
+\def\page_one_place_float_rightedge
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_rightedge}
+
+\def\page_one_place_float_inmargin
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_cutspace}
+
+\def\page_one_place_float_backspace
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_backspace}
+
+\def\page_one_place_float_cutspace
+ {\page_one_place_float_side_indeed
+ \page_sides_process_float_cutspace}
\def\page_one_place_float_page {\page_floats_save_page_float \s!page \floatlocationmethod}
\def\page_one_place_float_leftpage {\page_floats_save_page_float \s!leftpage \floatlocationmethod}
\def\page_one_place_float_rightpage {\page_floats_save_page_float \s!rightpage\floatlocationmethod}
\def\page_one_place_float_somewhere {\page_floats_save_somewhere_float\s!somewhere\floatlocationmethod}
-\def\page_one_place_float_here {\page_one_place_float_otherwise_here}
-\def\page_one_place_float_auto {\page_one_place_float_otherwise}
-\def\page_one_place_float_top {\page_one_place_float_otherwise\nonoindentation}
-\def\page_one_place_float_bottom {\page_one_place_float_otherwise}
+\def\page_one_place_float_here
+ {\page_one_place_float_otherwise_here}
+
+\def\page_one_place_float_auto
+ {\page_one_place_float_otherwise
+ \nonoindentation} % new, due to popular request
+
+\def\page_one_place_float_top
+ {\page_one_place_float_otherwise
+ \nonoindentation}
+
+\def\page_one_place_float_bottom
+ {\page_one_place_float_otherwise
+ \nonoindentation} % new, due to popular request
\def\page_one_place_float_otherwise
{\doifelseinset\v!here\floatlocationmethod
diff --git a/Master/texmf-dist/tex/context/base/mkiv/page-sid.mkiv b/Master/texmf-dist/tex/context/base/mkiv/page-sid.mkiv
index a0fb63ca20a..6f5d9f3571f 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/page-sid.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/page-sid.mkiv
@@ -32,6 +32,7 @@
%D Earth, sophisticated Massive Attack video clips, impressive Davie504 movies
%D and so on).
+\newdimen \d_page_sides_margin
\newdimen \d_page_sides_height % includes the topskip
\newdimen \d_page_sides_width
\newdimen \d_page_sides_hsize
@@ -113,7 +114,7 @@
\or % high
\or % low
\or % fit
- \global\d_strc_floats_margin\zeropoint
+ \global\d_page_sides_margin\zeropoint
\fi}
\def\page_sides_apply_horizontal_shift
@@ -668,7 +669,7 @@
\else\ifnum\c_page_sides_float_type>\plusfive
\global\d_page_sides_width\zeropoint
\else
- \global\d_page_sides_width\dimexpr\wd\floatbox+\d_strc_floats_margin\relax
+ \global\d_page_sides_width\dimexpr\wd\floatbox+\d_page_sides_margin\relax
\fi\fi
\ifdim\d_page_sides_width<\zeropoint
\global\d_page_sides_width\zeropoint
diff --git a/Master/texmf-dist/tex/context/base/mkiv/publ-ini.lua b/Master/texmf-dist/tex/context/base/mkiv/publ-ini.lua
index 8497b190fcb..9dfeda168cc 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/publ-ini.lua
+++ b/Master/texmf-dist/tex/context/base/mkiv/publ-ini.lua
@@ -2325,13 +2325,13 @@ do
implement {
name = "btxflushlistentry",
- arguments = "2 strings",
+ arguments = { "string", "integer" },
actions = lists.flushentry,
}
implement {
name = "btxflushlisttag",
- arguments = "2 strings",
+ arguments = { "string", "integer" },
actions = lists.flushtag,
}
diff --git a/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf b/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf
index aa6ed92ea35..74e8e3e8ad5 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf
+++ b/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf b/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf
index 70204080ad3..a2f2ee28b07 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf
+++ b/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/context/base/mkiv/strc-flt.mkvi b/Master/texmf-dist/tex/context/base/mkiv/strc-flt.mkvi
index 69881037e34..632c6768694 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/strc-flt.mkvi
+++ b/Master/texmf-dist/tex/context/base/mkiv/strc-flt.mkvi
@@ -148,7 +148,7 @@
\c!textmethod=\ifgridsnapping2\else0\fi, % 0=raw 1=safe (.99pg) 2=tight (-1pt) % THIS WILL CHANGE
\c!sidemethod=\ifgridsnapping2\else1\fi, % 0=raw 1=safe (.99pg) 2=tight (-1pt) % THIS WILL CHANGE
\c!indentnext=\v!no,
- \c!margin=1\emwidth,
+ \c!margin=\emwidth,
\c!method=1,
\c!cache=\v!yes, % when no, then intermediate flush
\c!leftmargin=\zeropoint, % displacement in 'normal floats'
@@ -734,7 +734,6 @@
% nicer is a bunch of states and one loop that sets those states
-\newdimen\d_strc_floats_margin
\newdimen\d_strc_floats_top
\newdimen\d_strc_floats_bottom
@@ -776,13 +775,13 @@
\global\c_page_sides_tolerance \zerocount
\global\c_page_sides_skipmode \zerocount
\global\c_strc_floats_rotation \zerocount
- \global\d_strc_floats_margin \rootfloatparameter\c!margin
- \global\d_page_sides_leftshift \floatparameter \c!leftmargindistance
- \global\d_page_sides_rightshift \floatparameter \c!rightmargindistance
- \global\d_page_sides_topoffset \floatparameter \c!topoffset
- \global\d_page_sides_bottomoffset\floatparameter \c!bottomoffset
- \global\c_page_sides_method \floatparameter \c!sidemethod
- \global\c_page_one_float_method \floatparameter \c!textmethod
+ \global\d_page_sides_margin \floatparameter\c!margin
+ \global\d_page_sides_leftshift \floatparameter\c!leftmargindistance
+ \global\d_page_sides_rightshift \floatparameter\c!rightmargindistance
+ \global\d_page_sides_topoffset \floatparameter\c!topoffset
+ \global\d_page_sides_bottomoffset\floatparameter\c!bottomoffset
+ \global\c_page_sides_method \floatparameter\c!sidemethod
+ \global\c_page_one_float_method \floatparameter\c!textmethod
\global\c_page_floats_n_of_top \rootfloatparameter\c!ntop
\global\c_page_floats_n_of_bottom\rootfloatparameter\c!nbottom
\ifconditional\c_strc_floats_par_float
diff --git a/Master/texmf-dist/tex/context/base/mkiv/type-set.mkiv b/Master/texmf-dist/tex/context/base/mkiv/type-set.mkiv
index 1ef137d3981..1763de68790 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/type-set.mkiv
+++ b/Master/texmf-dist/tex/context/base/mkiv/type-set.mkiv
@@ -57,6 +57,9 @@
\fi
+\definefilesynonym [type-imp-latin-modern.mkiv] [type-imp-latinmodern.mkiv]
+\definefilesynonym [type-imp-modern-latin.mkiv] [type-imp-modernlatin.mkiv]
+
\definefilesynonym [type-imp-lucida.mkiv] [type-imp-lucida-typeone.mkiv]
\definefilesynonym [type-imp-lucidaot.mkiv] [type-imp-lucida-opentype.mkiv]
\definefilesynonym [type-imp-lucidadk.mkiv] [type-imp-lucida-opentype.mkiv]
diff --git a/Master/texmf-dist/tex/context/base/mkiv/util-str.lua b/Master/texmf-dist/tex/context/base/mkiv/util-str.lua
index f76895aaf6c..05ff9f304d7 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/util-str.lua
+++ b/Master/texmf-dist/tex/context/base/mkiv/util-str.lua
@@ -1081,6 +1081,7 @@ local function make(t,str)
f = function() return str end
end
end
+ -- if jit then jit.on(f,true) end
t[str] = f
return f
end
diff --git a/Master/texmf-dist/tex/context/base/mkiv/util-tab.lua b/Master/texmf-dist/tex/context/base/mkiv/util-tab.lua
index ebe51eb1aef..1b069e2ae21 100644
--- a/Master/texmf-dist/tex/context/base/mkiv/util-tab.lua
+++ b/Master/texmf-dist/tex/context/base/mkiv/util-tab.lua
@@ -153,15 +153,16 @@ function table.tocsv(t,specification)
fields = sortedkeys(t[1])
end
local separator = specification.separator or ","
+ local noffields = #fields
if specification.preamble == true then
- for f=1,#fields do
+ for f=1,noffields do
r[f] = lpegmatch(escape,tostring(fields[f]))
end
result[1] = concat(r,separator)
end
for i=1,#t do
local ti = t[i]
- for f=1,#fields do
+ for f=1,noffields do
local field = ti[fields[f]]
if type(field) == "string" then
r[f] = lpegmatch(escape,field)
@@ -215,30 +216,31 @@ end
local nspaces = utilities.strings.newrepeater(" ")
local function toxml(t,d,result,step)
+ local r = #result
for k, v in sortedpairs(t) do
local s = nspaces[d] -- inlining this is somewhat faster but gives more formatters
local tk = type(k)
local tv = type(v)
if tv == "table" then
if tk == "number" then
- result[#result+1] = formatters["%s<entry n='%s'>"](s,k)
+ r = r + 1 result[r] = formatters["%s<entry n='%s'>"](s,k)
toxml(v,d+step,result,step)
- result[#result+1] = formatters["%s</entry>"](s,k)
+ r = r + 1 result[r] = formatters["%s</entry>"](s,k)
else
- result[#result+1] = formatters["%s<%s>"](s,k)
+ r = r + 1 result[r] = formatters["%s<%s>"](s,k)
toxml(v,d+step,result,step)
- result[#result+1] = formatters["%s</%s>"](s,k)
+ r = r + 1 result[r] = formatters["%s</%s>"](s,k)
end
elseif tv == "string" then
if tk == "number" then
- result[#result+1] = formatters["%s<entry n='%s'>%!xml!</entry>"](s,k,v,k)
+ r = r + 1 result[r] = formatters["%s<entry n='%s'>%!xml!</entry>"](s,k,v,k)
else
- result[#result+1] = formatters["%s<%s>%!xml!</%s>"](s,k,v,k)
+ r = r + 1 result[r] = formatters["%s<%s>%!xml!</%s>"](s,k,v,k)
end
elseif tk == "number" then
- result[#result+1] = formatters["%s<entry n='%s'>%S</entry>"](s,k,v,k)
+ r = r + 1 result[r] = formatters["%s<entry n='%s'>%S</entry>"](s,k,v,k)
else
- result[#result+1] = formatters["%s<%s>%S</%s>"](s,k,v,k)
+ r = r + 1 result[r] = formatters["%s<%s>%S</%s>"](s,k,v,k)
end
end
end
diff --git a/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf b/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf
index 6ff801846c1..39538aa7bcd 100644
--- a/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf
+++ b/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf b/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf
index f86da332ab2..ee6712cfd09 100644
--- a/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf
+++ b/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf
Binary files differ
diff --git a/Master/texmf-dist/tex/context/modules/common/s-abbreviations-logos.tex b/Master/texmf-dist/tex/context/modules/common/s-abbreviations-logos.tex
index f1966f54466..c14265cc085 100644
--- a/Master/texmf-dist/tex/context/modules/common/s-abbreviations-logos.tex
+++ b/Master/texmf-dist/tex/context/modules/common/s-abbreviations-logos.tex
@@ -86,6 +86,7 @@
\logo [DVISCR] {dviscr}
\logo [DVIWINDO] {dviwindo}
\logo [EBCDIC] {ebcdic}
+\logo [EU] {eu}
\logo [EC] {ec}
\logo [EIFFEL] {Eiffel}
\logo [EMACS] {emacs}
diff --git a/Master/texmf-dist/tex/context/sample/common/poe.tex b/Master/texmf-dist/tex/context/sample/common/poe.tex
new file mode 100644
index 00000000000..fd84b60a8b6
--- /dev/null
+++ b/Master/texmf-dist/tex/context/sample/common/poe.tex
@@ -0,0 +1,33 @@
+% title : A dream within a dream
+% author : Edgar Allan Poe
+%
+% music : Propaganda (on: A Secret Wish)
+
+\startlines
+Take this kiss upon the brow!
+And, in parting from you now,
+Thus much let me avow —
+You are not wrong, who deem
+That my days have been a dream;
+Yet if hope has flown away
+In a night, or in a day,
+In a vision, or in none,
+Is it therefore the less gone?
+All that we see or seem
+Is but a dream within a dream.
+\blank
+I stand amid the roar
+Of a surf-tormented shore,
+And I hold within my hand
+Grains of the golden sand —
+How few! yet how they creep
+Through my fingers to the deep,
+While I weep — while I weep!
+O God! can I not grasp
+Them with a tighter clasp?
+O God! can I not save
+One from the pitiless wave?
+Is all that we see or seem
+But a dream within a dream?
+\stoplines
+
diff --git a/Master/texmf-dist/tex/context/sample/common/samples.tex b/Master/texmf-dist/tex/context/sample/common/samples.tex
index a2ffcf0882c..d732a240e27 100644
--- a/Master/texmf-dist/tex/context/sample/common/samples.tex
+++ b/Master/texmf-dist/tex/context/sample/common/samples.tex
@@ -58,6 +58,7 @@ used in testing bibliographic references and citations.
\NC greenfield.tex \NC Susan Greenfield \NC Mind Change, how digital technologies are leaving
their mark on the brain,
Rider, London, 2014. \NC \NR
+\NC poe.tex \NC Edgar Allan Poe \NC A dream within a dream, www.poetryfoundation.org. \NC \NR
\stoptabulate
% Tufte: This quote will always produce hyphenated text, apart from the content,
diff --git a/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua b/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua
index 97503d8a7a0..7cfa8c61a9c 100644
--- a/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua
@@ -1,6 +1,6 @@
-- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 04/02/18 15:43:20
+-- merge date : 04/04/18 00:51:15
do -- begin closure to overcome local limits and interference