summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/context-version.pdfbin4268 -> 4262 bytes
-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/font-cff.lua7
-rw-r--r--tex/context/base/mkiv/font-mis.lua2
-rw-r--r--tex/context/base/mkiv/font-osd.lua1
-rw-r--r--tex/context/base/mkiv/font-otl.lua2
-rw-r--r--tex/context/base/mkiv/font-ots.lua27
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin9220 -> 9219 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin369107 -> 369104 bytes
-rw-r--r--tex/context/interface/mkiv/i-context.pdfbin774580 -> 774578 bytes
-rw-r--r--tex/context/interface/mkiv/i-readme.pdfbin60796 -> 60795 bytes
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua33
13 files changed, 47 insertions, 29 deletions
diff --git a/tex/context/base/context-version.pdf b/tex/context/base/context-version.pdf
index bdb7d6f74..69116a012 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 3eae6e337..06fa9865c 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2016.08.24 15:36}
+\newcontextversion{2016.08.24 21:16}
%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 6c0256a1a..83a0d0162 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -39,7 +39,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2016.08.24 15:36}
+\edef\contextversion{2016.08.24 21:16}
\edef\contextkind {beta}
%D For those who want to use this:
diff --git a/tex/context/base/mkiv/font-cff.lua b/tex/context/base/mkiv/font-cff.lua
index 8f33c76c4..1c6bd56fd 100644
--- a/tex/context/base/mkiv/font-cff.lua
+++ b/tex/context/base/mkiv/font-cff.lua
@@ -1408,7 +1408,7 @@ do
globals = data.routines or { }
locals = dictionary.subroutines or { }
- globalbias, localbias = setbias(globals,locals,version)
+ globalbias, localbias = setbias(globals,locals)
local nominalwidth = private.data.nominalwidthx or 0
local defaultwidth = private.data.defaultwidthx or 0
@@ -1478,14 +1478,15 @@ do
return glyphs
end
- parsecharstring = function(data,dictionary,tab,glyphs,index,doshapes,version)
+ parsecharstring = function(data,dictionary,tab,glyphs,index,doshapes,tversion)
local private = dictionary.private
keepcurve = doshapes
+ version = tversion
strings = data.strings -- or in dict?
locals = dictionary.subroutines or { }
globals = data.routines or { }
- globalbias = setbias(globals,locals)
+ globalbias, localbias = setbias(globals,locals)
local nominalwidth = private and private.data.nominalwidthx or 0
local defaultwidth = private and private.data.defaultwidthx or 0
diff --git a/tex/context/base/mkiv/font-mis.lua b/tex/context/base/mkiv/font-mis.lua
index f90247c89..f610ee983 100644
--- a/tex/context/base/mkiv/font-mis.lua
+++ b/tex/context/base/mkiv/font-mis.lua
@@ -21,7 +21,7 @@ local readers = otf.readers
if readers then
- otf.version = otf.version or 3.025
+ otf.version = otf.version or 3.026
otf.cache = otf.cache or containers.define("fonts", "otl", otf.version, true)
function fonts.helpers.getfeatures(name,save)
diff --git a/tex/context/base/mkiv/font-osd.lua b/tex/context/base/mkiv/font-osd.lua
index 6f715a11f..b67cc9241 100644
--- a/tex/context/base/mkiv/font-osd.lua
+++ b/tex/context/base/mkiv/font-osd.lua
@@ -675,7 +675,6 @@ local function initializedevanagi(tfmdata)
end
end
if kind == "pref" then
--- local sequence = dataset[3] -- was [5]
local steps = sequence.steps
local nofsteps = sequence.nofsteps
for i=1,nofsteps do
diff --git a/tex/context/base/mkiv/font-otl.lua b/tex/context/base/mkiv/font-otl.lua
index 94f6a45c6..0662290bd 100644
--- a/tex/context/base/mkiv/font-otl.lua
+++ b/tex/context/base/mkiv/font-otl.lua
@@ -52,7 +52,7 @@ local report_otf = logs.reporter("fonts","otf loading")
local fonts = fonts
local otf = fonts.handlers.otf
-otf.version = 3.025 -- beware: also sync font-mis.lua and in mtx-fonts
+otf.version = 3.026 -- beware: also sync font-mis.lua and in mtx-fonts
otf.cache = containers.define("fonts", "otl", otf.version, true)
otf.svgcache = containers.define("fonts", "svg", otf.version, true)
otf.pdfcache = containers.define("fonts", "pdf", otf.version, true)
diff --git a/tex/context/base/mkiv/font-ots.lua b/tex/context/base/mkiv/font-ots.lua
index 0c0347c25..da5d50aae 100644
--- a/tex/context/base/mkiv/font-ots.lua
+++ b/tex/context/base/mkiv/font-ots.lua
@@ -3754,33 +3754,42 @@ local function spaceinitializer(tfmdata,value) -- attr
feat = kern
end
for i=1,#steps do
- local step = steps[i]
+ local step = steps[i]
local coverage = step.coverage
- if coverage then
+ local rules = step.rules
+ local format = step.format
+ if rules then
+ -- not now: analyze (simple) rules
+ elseif coverage then
-- what to do if we have no [1] but only [2]
- local kerns = coverage[32]
+ local single = format == gpos_single
+ local kerns = coverage[32]
if kerns then
for k, v in next, kerns do
- if type(v) == "table" then
+ if type(v) ~= "table" then
+ right[k] = v
+ elseif single then
+ right[k] = v[3]
+ else
local one = v[1]
if one then
right[k] = one[3]
end
- else
- right[k] = v
end
end
end
for k, v in next, coverage do
local kern = v[32]
if kern then
- if type(kern) == "table" then
+ if type(kern) ~= "table" then
+ left[k] = kern
+ elseif single then
+ left[k] = v[3]
+ else
local one = v[1]
if one then
left[k] = one[3]
end
- else
- left[k] = kern
end
end
end
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 8819b504d..b1184e1eb 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 c1e4be45c..829a8576a 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/interface/mkiv/i-context.pdf b/tex/context/interface/mkiv/i-context.pdf
index a7d0dfa91..86a044447 100644
--- a/tex/context/interface/mkiv/i-context.pdf
+++ b/tex/context/interface/mkiv/i-context.pdf
Binary files differ
diff --git a/tex/context/interface/mkiv/i-readme.pdf b/tex/context/interface/mkiv/i-readme.pdf
index 2c37bae5a..0f70e266c 100644
--- a/tex/context/interface/mkiv/i-readme.pdf
+++ b/tex/context/interface/mkiv/i-readme.pdf
Binary files differ
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 62c427592..2bac536cd 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 : c:/data/develop/context/sources/luatex-fonts-merged.lua
-- parent file : c:/data/develop/context/sources/luatex-fonts.lua
--- merge date : 08/24/16 15:36:43
+-- merge date : 08/24/16 21:16:06
do -- begin closure to overcome local limits and interference
@@ -10381,7 +10381,7 @@ do
strings=data.strings
globals=data.routines or {}
locals=dictionary.subroutines or {}
- globalbias,localbias=setbias(globals,locals,version)
+ globalbias,localbias=setbias(globals,locals)
local nominalwidth=private.data.nominalwidthx or 0
local defaultwidth=private.data.defaultwidthx or 0
for i=1,#charstrings do
@@ -10439,13 +10439,14 @@ do
end
return glyphs
end
- parsecharstring=function(data,dictionary,tab,glyphs,index,doshapes,version)
+ parsecharstring=function(data,dictionary,tab,glyphs,index,doshapes,tversion)
local private=dictionary.private
keepcurve=doshapes
+ version=tversion
strings=data.strings
locals=dictionary.subroutines or {}
globals=data.routines or {}
- globalbias=setbias(globals,locals)
+ globalbias,localbias=setbias(globals,locals)
local nominalwidth=private and private.data.nominalwidthx or 0
local defaultwidth=private and private.data.defaultwidthx or 0
if type(tab)=="string" then
@@ -15321,7 +15322,7 @@ local trace_defining=false registertracker("fonts.defining",function(v) trace_de
local report_otf=logs.reporter("fonts","otf loading")
local fonts=fonts
local otf=fonts.handlers.otf
-otf.version=3.025
+otf.version=3.026
otf.cache=containers.define("fonts","otl",otf.version,true)
otf.svgcache=containers.define("fonts","svg",otf.version,true)
otf.pdfcache=containers.define("fonts","pdf",otf.version,true)
@@ -21132,30 +21133,38 @@ local function spaceinitializer(tfmdata,value)
for i=1,#steps do
local step=steps[i]
local coverage=step.coverage
- if coverage then
+ local rules=step.rules
+ local format=step.format
+ if rules then
+ elseif coverage then
+ local single=format==gpos_single
local kerns=coverage[32]
if kerns then
for k,v in next,kerns do
- if type(v)=="table" then
+ if type(v)~="table" then
+ right[k]=v
+ elseif single then
+ right[k]=v[3]
+ else
local one=v[1]
if one then
right[k]=one[3]
end
- else
- right[k]=v
end
end
end
for k,v in next,coverage do
local kern=v[32]
if kern then
- if type(kern)=="table" then
+ if type(kern)~="table" then
+ left[k]=kern
+ elseif single then
+ left[k]=v[3]
+ else
local one=v[1]
if one then
left[k]=one[3]
end
- else
- left[k]=kern
end
end
end