summaryrefslogtreecommitdiff
path: root/tex/context/base/mkiv
diff options
context:
space:
mode:
Diffstat (limited to 'tex/context/base/mkiv')
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkxl2
-rw-r--r--tex/context/base/mkiv/driv-shp.lua2
-rw-r--r--tex/context/base/mkiv/hand-ini.mkiv5
-rw-r--r--tex/context/base/mkiv/l-io.lua2
-rw-r--r--tex/context/base/mkiv/luat-fmt.lua13
-rw-r--r--tex/context/base/mkiv/mult-def.lua4
-rw-r--r--tex/context/base/mkiv/node-fin.lua2
-rw-r--r--tex/context/base/mkiv/spac-ali.mkiv1
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin26616 -> 26651 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin268793 -> 268793 bytes
-rw-r--r--tex/context/base/mkiv/strc-pag.lua20
-rw-r--r--tex/context/base/mkiv/trac-vis.lua9
14 files changed, 37 insertions, 27 deletions
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 8b1011cfc..532241803 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2019.11.12 23:58}
+\newcontextversion{2019.11.14 17:07}
%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/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index 193c901bd..7812d4789 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -45,7 +45,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2019.11.12 23:58}
+\edef\contextversion{2019.11.14 17:07}
\edef\contextkind {beta}
%D Kind of special:
diff --git a/tex/context/base/mkiv/context.mkxl b/tex/context/base/mkiv/context.mkxl
index 79854c811..68c401bd8 100644
--- a/tex/context/base/mkiv/context.mkxl
+++ b/tex/context/base/mkiv/context.mkxl
@@ -29,7 +29,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2019.11.12 23:58}
+\edef\contextversion{2019.11.14 17:07}
\edef\contextkind {beta}
%D Kind of special:
diff --git a/tex/context/base/mkiv/driv-shp.lua b/tex/context/base/mkiv/driv-shp.lua
index 8fe2b8483..2d242b1a1 100644
--- a/tex/context/base/mkiv/driv-shp.lua
+++ b/tex/context/base/mkiv/driv-shp.lua
@@ -54,7 +54,7 @@ local findtail = nuts.tail
local nextdir = nuts.traversers.dir
local nextnode = nuts.traversers.node
-local rangedimensions = node.direct.naturalwidth or nuts.rangedimensions
+local rangedimensions = node.direct.rangedimensions
local effectiveglue = nuts.effective_glue
local texget = tex.get
diff --git a/tex/context/base/mkiv/hand-ini.mkiv b/tex/context/base/mkiv/hand-ini.mkiv
index f678a88da..a18f86707 100644
--- a/tex/context/base/mkiv/hand-ini.mkiv
+++ b/tex/context/base/mkiv/hand-ini.mkiv
@@ -63,8 +63,9 @@
\def\font_expansion_enable_n{\normaladjustspacing\plusone}
\def\font_expansion_disable {\normaladjustspacing\zerocount}
-\def\font_protruding_enable {\normalprotrudechars\plustwo }
-\def\font_protruding_disable{\normalprotrudechars\zerocount}
+\def\font_protruding_enable_b{\normalprotrudechars\plusthree} % also deal with r2l (experimental lmtx)
+\def\font_protruding_enable {\normalprotrudechars\plustwo }
+\def\font_protruding_disable {\normalprotrudechars\zerocount}
\appendtoks \font_expansion_disable \to \everyforgetall % Here or not here?
\appendtoks \font_protruding_disable \to \everyforgetall % Here or not here?
diff --git a/tex/context/base/mkiv/l-io.lua b/tex/context/base/mkiv/l-io.lua
index fa3ad3c4c..a955262a3 100644
--- a/tex/context/base/mkiv/l-io.lua
+++ b/tex/context/base/mkiv/l-io.lua
@@ -13,7 +13,7 @@ local concat = table.concat
----- floor = math.floor
local type = type
-if string.find(os.getenv("PATH"),";",1,true) then
+if string.find(os.getenv("PATH") or "",";",1,true) then
io.fileseparator, io.pathseparator = "\\", ";"
else
io.fileseparator, io.pathseparator = "/" , ":"
diff --git a/tex/context/base/mkiv/luat-fmt.lua b/tex/context/base/mkiv/luat-fmt.lua
index acb212ef7..5502e1a1d 100644
--- a/tex/context/base/mkiv/luat-fmt.lua
+++ b/tex/context/base/mkiv/luat-fmt.lua
@@ -101,12 +101,13 @@ local runners = {
}
local function validbinarypath()
- if environment.arguments.addbinarypath then
- local binarypath = environment.ownpath or ""
- if binarypath ~= "" then
- binarypath = dir.expandname(binarypath)
- if lfs.isdir(binarypath) then
- return binarypath
+ -- if environment.arguments.addbinarypath then
+ if not environment.arguments.nobinarypath then
+ local path = environment.ownpath or file.dirname(environment.ownname)
+ if path and path ~= "" then
+ path = dir.expandname(path)
+ if path ~= "" and lfs.isdir(path) then
+ return path
end
end
end
diff --git a/tex/context/base/mkiv/mult-def.lua b/tex/context/base/mkiv/mult-def.lua
index 2cd47f5a6..68deb6084 100644
--- a/tex/context/base/mkiv/mult-def.lua
+++ b/tex/context/base/mkiv/mult-def.lua
@@ -13966,6 +13966,10 @@ return {
["pe"]="آویزان",
["ro"]="suspendat",
},
+ ["hangingboth"]={
+ ["en"]="hangingboth",
+ ["nl"]="beidehangend",
+ },
["head"]={
["cs"]="hlavicka",
["de"]="kopf",
diff --git a/tex/context/base/mkiv/node-fin.lua b/tex/context/base/mkiv/node-fin.lua
index b328f925d..02c359174 100644
--- a/tex/context/base/mkiv/node-fin.lua
+++ b/tex/context/base/mkiv/node-fin.lua
@@ -562,7 +562,7 @@ local function stacker(attribute,head,default) -- no triggering, no inheritance,
end
head, current = insert_node_after(head,current,copy_node(nsnone))
else
- list = stacker(attribute,content,a)
+ list = stacker(attribute,content,attrib)
if list ~= content then
setlist(current,list)
end
diff --git a/tex/context/base/mkiv/spac-ali.mkiv b/tex/context/base/mkiv/spac-ali.mkiv
index bc4077854..3c3c6b4a1 100644
--- a/tex/context/base/mkiv/spac-ali.mkiv
+++ b/tex/context/base/mkiv/spac-ali.mkiv
@@ -715,6 +715,7 @@
\setvalue{\??aligncommand\v!morehyphenation}{\toksapp\t_spac_align_collected{\morehyphens}}
\setvalue{\??aligncommand\v!hanging }{\toksapp\t_spac_align_collected{\font_protruding_enable }}
+\setvalue{\??aligncommand\v!hangingboth }{\toksapp\t_spac_align_collected{\font_protruding_enable_b}}
\setvalue{\??aligncommand\v!nothanging }{\toksapp\t_spac_align_collected{\font_protruding_disable}}
\setvalue{\??aligncommand\v!hz }{\toksapp\t_spac_align_collected{\font_expansion_enable }}
\setvalue{\??aligncommand\v!fullhz }{\toksapp\t_spac_align_collected{\font_expansion_enable_k}}
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 93cdbfb08..ac45cbe4e 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index 6a88d3f34..726425def 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/strc-pag.lua b/tex/context/base/mkiv/strc-pag.lua
index d0c9d50ae..9b3a77e74 100644
--- a/tex/context/base/mkiv/strc-pag.lua
+++ b/tex/context/base/mkiv/strc-pag.lua
@@ -272,17 +272,15 @@ end
function helpers.prefix(data,prefixspec,nosuffix)
if data then
local _, prefixdata, status = helpers.analyze(data,prefixspec)
- if not prefixdata then
- -- nothing to do
- elseif not prefixspec then
- sections.typesetnumber(prefixdata,"prefix",false,prefixdata,false)
- elseif nosuffix then
- local connector = prefixspec.connector
- prefixspec.connector = nil
- sections.typesetnumber(prefixdata,"prefix",prefixspec,prefixdata,prefixdata)
- prefixspec.connector = connector
- else
- sections.typesetnumber(prefixdata,"prefix",prefixspec,prefixdata,prefixdata)
+ if prefixdata then
+ if nosuffix and prefixspec then
+ local connector = prefixspec.connector
+ prefixspec.connector = nil
+ sections.typesetnumber(prefixdata,"prefix",prefixspec or false,data.prefixdata or false,prefixdata or false)
+ prefixspec.connector = connector
+ else
+ sections.typesetnumber(prefixdata,"prefix",prefixspec or false,data.prefixdata or false,prefixdata or false)
+ end
end
end
end
diff --git a/tex/context/base/mkiv/trac-vis.lua b/tex/context/base/mkiv/trac-vis.lua
index cb18d4499..bbc18df7f 100644
--- a/tex/context/base/mkiv/trac-vis.lua
+++ b/tex/context/base/mkiv/trac-vis.lua
@@ -991,12 +991,12 @@ local ruledkern do
local k_cache_v = caches["vkern"]
local k_cache_h = caches["hkern"]
- ruledkern = function(head,current,vertical)
+ ruledkern = function(head,current,vertical,mk)
local kern = getkern(current)
local cache = vertical and k_cache_v or k_cache_h
local info = cache[kern]
if not info then
- local amount = formatters["%s:%0.3f"](vertical and "VK" or "HK",kern*pt_factor)
+ local amount = formatters["%s:%0.3f"](vertical and "VK" or (mk and "MK") or "HK",kern*pt_factor)
if kern > 0 then
info = sometext(amount,l_kern,c_positive)
elseif kern < 0 then
@@ -1108,6 +1108,7 @@ do
local math_code = nodecodes.math
local hlist_code = nodecodes.hlist
local vlist_code = nodecodes.vlist
+ local marginkern_code = nodecodes.marginkern
local kerncodes = nodes.kerncodes
local fontkern_code = kerncodes.fontkern
@@ -1325,6 +1326,10 @@ do
if trace_math then
head, current = math(head,current)
end
+ elseif id == marginkern_code then
+ if trace_kern then
+ head, current = ruledkern(head,current,vertical,true)
+ end
end
goto next
::list::