texlive[44436] Master: context/current (May 16 10:25)

commits+karl at tug.org commits+karl at tug.org
Sat May 20 00:21:26 CEST 2017


Revision: 44436
          http://tug.org/svn/texlive?view=revision&revision=44436
Author:   karl
Date:     2017-05-20 00:21:26 +0200 (Sat, 20 May 2017)
Log Message:
-----------
context/current (May 16 10:25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-cs.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-de.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-en.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-fr.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-it.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-nl.pdf
    trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-ro.pdf
    trunk/Master/texmf-dist/doc/man/man1/context.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/luatools.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-babel.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-base.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-bibtex.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-cache.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-chars.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-check.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-colors.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-context.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-dvi.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-epub.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-fcd.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-flac.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-fonts.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-grep.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-interface.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-metapost.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-metatex.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-modules.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-package.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-patterns.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-pdf.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-plain.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-profile.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-rsync.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-scite.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-server.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-texworks.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-timing.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-tools.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-unicode.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-unzip.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-update.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-watch.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtx-youless.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/mtxrun.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/texexec.man1.pdf
    trunk/Master/texmf-dist/doc/man/man1/texmfstart.man1.pdf
    trunk/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii
    trunk/Master/texmf-dist/tex/context/base/mkii/context.mkii
    trunk/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv
    trunk/Master/texmf-dist/tex/context/base/mkiv/context.mkiv
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-col.mkvi
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-ext.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-map.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-ocl.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-otj.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-otr.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-ots.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/font-ttf.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/math-act.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/node-nut.lua
    trunk/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf
    trunk/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf
    trunk/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf
    trunk/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf
    trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.lua
    trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.mkiv
    trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-chr.lua
    trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-nod.lua
    trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-prepare.tex
    trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua
    trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-math.tex
    trunk/Master/tlpkg/bin/tlpkginfo

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-cs.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-de.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-en.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-fr.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-it.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-nl.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/context/documents/general/qrcs/setup-ro.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/context.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/luatools.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-babel.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-base.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-bibtex.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-cache.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-chars.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-check.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-colors.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-context.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-dvi.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-epub.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-fcd.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-flac.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-fonts.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-grep.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-interface.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-metapost.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-metatex.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-modules.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-package.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-patterns.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-pdf.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-plain.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-profile.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-rsync.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-scite.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-server.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-texworks.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-timing.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-tools.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-unicode.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-unzip.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-update.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-watch.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtx-youless.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/mtxrun.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/texexec.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/man/man1/texmfstart.man1.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkii/cont-new.mkii	2017-05-19 22:21:26 UTC (rev 44436)
@@ -11,7 +11,7 @@
 %C therefore copyrighted by \PRAGMA. See mreadme.pdf for
 %C details.
 
-\newcontextversion{2017.05.12 22:40}
+\newcontextversion{2017.05.15 21:48}
 
 %D This file is loaded at runtime, thereby providing an
 %D excellent place for hacks, patches, extensions and new

Modified: trunk/Master/texmf-dist/tex/context/base/mkii/context.mkii
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkii/context.mkii	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkii/context.mkii	2017-05-19 22:21:26 UTC (rev 44436)
@@ -20,7 +20,7 @@
 %D your styles an modules.
 
 \edef\contextformat {\jobname}
-\edef\contextversion{2017.05.12 22:40}
+\edef\contextversion{2017.05.15 21:48}
 
 %D For those who want to use this:
 

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/cont-new.mkiv	2017-05-19 22:21:26 UTC (rev 44436)
@@ -11,7 +11,7 @@
 %C therefore copyrighted by \PRAGMA. See mreadme.pdf for
 %C details.
 
-\newcontextversion{2017.05.12 22:40}
+\newcontextversion{2017.05.15 21:48}
 
 %D This file is loaded at runtime, thereby providing an excellent place for
 %D hacks, patches, extensions and new features.

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/context.mkiv
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/context.mkiv	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/context.mkiv	2017-05-19 22:21:26 UTC (rev 44436)
@@ -39,7 +39,7 @@
 %D up and the dependencies are more consistent.
 
 \edef\contextformat {\jobname}
-\edef\contextversion{2017.05.12 22:40}
+\edef\contextversion{2017.05.15 21:48}
 \edef\contextkind   {beta}
 
 %D For those who want to use this:

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-col.mkvi
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-col.mkvi	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-col.mkvi	2017-05-19 22:21:26 UTC (rev 44436)
@@ -100,7 +100,7 @@
   {\doifelsenothing{#3}%
       {\definedfont[#2 at #4sp]}%
       {\definedfont[#2*#3\space at #4\scaledpoint]}%
-   \ctxlua{mathematics.registerfallbackid(#1,\fontid\font)}}
+   \clf_registerfontfallbackid#1\space\fontid\font\space{#2}}
 
 % \def\font_fallbacks_finish_math
 %   {\ctxlua{mathematics.finishfallbacks()}}

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-ext.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-ext.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-ext.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -1296,3 +1296,52 @@
     }
 
 end
+
+do
+
+    local tounicode = fonts.mappings.tounicode
+
+    local function check(tfmdata,key,value)
+        if value == "ligatures" then
+            local private   = fonts.constructors and fonts.constructors.privateoffset or 0xF0000
+            local collected = fonts.handlers.otf.readers.getcomponents(tfmdata.shared.rawdata)
+            if collected and next(collected)then
+                for unicode, char in next, tfmdata.characters do
+                    if true then -- if unicode >= private or (unicode >= 0xE000 and unicode <= 0xF8FF) then
+                        local u = collected[unicode]
+                        if u then
+                            local n = #u
+                            for i=1,n do
+                                if u[i] > private then
+                                    n = 0
+                                    break
+                                end
+                            end
+                            if n > 0 then
+                                if n == 1 then
+                                    u = u[1]
+                                end
+                                char.unicode   = u
+                                char.tounicode = tounicode(u)
+                            end
+                        end
+                    end
+                end
+            end
+        end
+    end
+
+    -- forceunicodes=ligatures : aggressive lig resolving (e.g. for emoji)
+    --
+    -- kind of like: \enabletrackers[fonts.mapping.forceligatures]
+
+    registerotffeature {
+        name         = "forceunicodes",
+        description  = "forceunicodes",
+        manipulators = {
+            base = check,
+            node = check,
+        }
+    }
+
+end

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-map.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-map.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-map.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -19,9 +19,9 @@
 
 local report_fonts  = logs.reporter("fonts","loading") -- not otf only
 
--- force_ligatures is true per 2017-04-20 so that these emoji's with bad names work too
+-- force_ligatures was true for a while so that these emoji's with bad names work too
 
-local force_ligatures = true  directives.register("fonts.mapping.forceligatures",function(v) force_ligatures = v end)
+local force_ligatures = false  directives.register("fonts.mapping.forceligatures",function(v) force_ligatures = v end)
 
 local fonts         = fonts or { }
 local mappings      = fonts.mappings or { }
@@ -279,6 +279,9 @@
         ffl = { name = "f_f_l", unicode = { 0x66, 0x66, 0x6C }, mess = 0xFB04 },
         fj  = { name = "f_j",   unicode = { 0x66, 0x6A } },
         fk  = { name = "f_k",   unicode = { 0x66, 0x6B } },
+
+     -- endash = { name = "endash", unicode = 0x2013, mess = 0x2013 },
+     -- emdash = { name = "emdash", unicode = 0x2014, mess = 0x2014 },
     }
 
     local o = { }
@@ -299,7 +302,7 @@
 
 end
 
-function mappings.addtounicode(data,filename,checklookups)
+function mappings.addtounicode(data,filename,checklookups,forceligatures)
     local resources = data.resources
     local unicodes  = resources.unicodes
     if not unicodes then
@@ -517,22 +520,26 @@
 
     if not collected then
         -- move on
-    elseif force_ligatures then
+    elseif forceligatures or force_ligatures then
         for i=1,#dlist do
             local du = dlist[i]
-            local u  = collected[du] -- always tables
-            if u then
-                resolve(descriptions[du],u)
+            if du >= private or (du >= 0xE000 and du <= 0xF8FF) then
+                local u  = collected[du] -- always tables
+                if u then
+                    resolve(descriptions[du],u)
+                end
             end
         end
     else
         for i=1,#dlist do
-            local du    = dlist[i]
-            local glyph = descriptions[du]
-            if glyph.class == "ligature" and not glyph.unicode then
-                local u = collected[du] -- always tables
-                if u then
-                     resolve(glyph,u)
+            local du = dlist[i]
+            if du >= private or (du >= 0xE000 and du <= 0xF8FF) then
+                local glyph = descriptions[du]
+                if glyph.class == "ligature" and not glyph.unicode then
+                    local u = collected[du] -- always tables
+                    if u then
+                         resolve(glyph,u)
+                    end
                 end
             end
         end

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-ocl.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-ocl.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-ocl.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -40,7 +40,7 @@
 
     function otf.getactualtext(s)
         return
-            "/Span << /ActualText <feff" .. n .. "> >> BDC",
+            "/Span << /ActualText <feff" .. s .. "> >> BDC",
             "EMC"
     end
 

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-otj.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-otj.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-otj.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -1434,6 +1434,35 @@
     end
 end
 
+-- We have a plugin so that Kai can use the next in plain. Such a plugin is rather application
+-- specific.
+--
+-- local getboth = nodes.direct.getboth
+-- local getid   = nodes.direct.getid
+-- local getprev = nodes.direct.getprev
+-- local getnext = nodes.direct.getnext
+--
+-- local whatsit_code = nodes.nodecodes.whatsit
+-- local glyph_code   = nodes.nodecodes.glyph
+--
+-- local function getspaceboth(n) -- fragile: what it prev/next has no width field
+--     local prev, next = getboth(n)
+--     while prev and (getid(prev) == whatsit_code or (getwidth(prev) == 0 and getid(prev) ~= glyph_code)) do
+--         prev = getprev(prev)
+--     end
+--     while next and (getid(next) == whatsit_code or (getwidth(next) == 0 and getid(next) ~= glyph_code)) do
+--         next = getnext(next)
+--     end
+-- end
+--
+-- injections.installgetspaceboth(getspaceboth)
+
+local getspaceboth = getboth
+
+function injections.installgetspaceboth(gb)
+    getspaceboth = gb or getboth
+end
+
 local function injectspaces(head)
 
     if not triggers then
@@ -1458,9 +1487,9 @@
     end
 
     for n in traverse_id(glue_code,tonut(head)) do
-        local prev, next = getboth(n)
-        local prevchar = ischar(prev)
-        local nextchar = ischar(next)
+        local prev, next = getspaceboth(n)
+        local prevchar = prev and ischar(prev)
+        local nextchar = next and ischar(next)
         if nextchar then
             local font = getfont(next)
             local trig = triggers[font]

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-otr.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-otr.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-otr.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -1130,9 +1130,10 @@
             if width ~= 0 then
                 glyph.width = width
             end
-         -- if leftsidebearing ~= 0 then
-         --     glyph.lsb = leftsidebearing
-         -- end
+-- for now
+--             if leftsidebearing ~= 0 then
+--                 glyph.lsb = leftsidebearing
+--             end
         end
         -- The next can happen in for instance a monospace font or in a cjk font
         -- with fixed widths.

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-ots.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-ots.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-ots.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -4289,9 +4289,9 @@
                                         if type(kern) ~= "table" then
                                             left[k] = kern
                                         elseif single then
-                                            left[k] = v[3]
+                                            left[k] = kern[3]
                                         else
-                                            local one = v[1]
+                                            local one = kern[1]
                                             if one then
                                                 left[k] = one[3]
                                             end

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/font-ttf.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/font-ttf.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/font-ttf.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -160,11 +160,12 @@
     local points = shape.points
     if points then
         local nofpoints = #points
-        local h = nofpoints + 1 -- weird, the example font seems to have left first
-        ----- l = nofpoints + 2
+        local h = nofpoints + 2 -- weird, the example font seems to have left first
+        local l = nofpoints + 1
         ----- v = nofpoints + 3
         ----- t = nofpoints + 4
-        local width = dowidth and glyph.width -- what if hvar
+        local dw = 0
+        local dl = 0
         for i=1,#deltas do
             local deltaset = deltas[i]
             local xvalues  = deltaset.xvalues
@@ -190,10 +191,22 @@
                                 p[2] = p[2] + factor * y
                             end
                         end
-                    elseif width then -- and p == h then
-                        local x = xvalues[d+1]
-                        if x then
-                            width = width + factor * x
+                    elseif dowidth then
+                        -- we've now ran into phantom points which is a bit fuzzy because:
+                        -- are there gaps in there?
+                        --
+                        -- todo: move this outside the loop (when we can be sure of all 4 being there)
+                        if d == h then
+                            -- we have a phantom point hadvance
+                            local x = xvalues[i]
+                            if x then
+                                dw = dw + factor * x
+                            end
+                        elseif d == l then
+                            local x = xvalues[i]
+                            if x then
+                                dl = dl + factor * x
+                            end
                         end
                     end
                 end
@@ -213,11 +226,15 @@
                         end
                     end
                 end
-                if width then
+                if dowidth then
                     local x = xvalues[h]
                     if x then
-                        width = width + factor * x
+                        dw = dw + factor * x
                     end
+                    local x = xvalues[l]
+                    if x then
+                        dl = dl + factor * x
+                    end
                 end
             end
         end
@@ -226,8 +243,10 @@
      --     p[1] = round(p[1])
      --     p[2] = round(p[2])
      -- end
-       if width then
-            glyph.width = width
+        if dowidth then
+            local width = glyph.width or 0
+         -- local lsb   = glyph.lsb or 0
+            glyph.width = width + dw - dl
         end
     else
         report("no points for glyph %a",glyph.name)
@@ -1066,7 +1085,7 @@
         local data        = { }
         local tuples      = { }
         local glyphdata   = fontdata.glyphs
-        local dowidth     = fontdata.variabledata.hvarwidths
+        local dowidth     = not fontdata.variabledata.hvarwidths
         -- there is one more offset (so that one can calculate the size i suppose)
         -- so we could test for overflows but we simply assume sane font files
         if bittest(flags,0x0001) then

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/math-act.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/math-act.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/math-act.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -28,6 +28,7 @@
 local appendaction     = sequencers.appendaction
 
 local fontchars        = fonts.hashes.characters
+local fontproperties   = fonts.hashes.properties
 
 local mathfontparameteractions = sequencers.new {
     name      = "mathparameters",
@@ -664,10 +665,20 @@
 
 local stack = { }
 
-function mathematics.registerfallbackid(n,id)
+function mathematics.registerfallbackid(n,id,name)
+    if trace_collecting then
+        report_math("resolved fallback font %i, name %a, id %a, used %a",
+            n,name,id,fontproperties[id].fontname)
+    end
     stack[#stack][n] = id
 end
 
+interfaces.implement { -- will be shared with text
+    name      = "registerfontfallbackid",
+    arguments = { "integer", "integer", "string" },
+    actions   = mathematics.registerfallbackid,
+}
+
 function mathematics.resolvefallbacks(target,specification,fallbacks)
     local definitions = fonts.collections.definitions[fallbacks]
     if definitions then
@@ -733,8 +744,8 @@
                         end
                         if force or (not done[unic] and not characters[unic]) then
                             if trace_collecting then
-                                report_math("replacing math character %C by %C using vector %a and font %a named %a%s%s",
-                                    unic,unicode,fallbacks,id,name,check and ", checked",gap and ", gap plugged")
+                                report_math("replacing math character %C by %C using vector %a and font id %a for %a%s%s",
+                                    unic,unicode,fallbacks,id,fontproperties[id].fontname,check and ", checked",gap and ", gap plugged")
                             end
                             characters[unic] = copiedglyph(target,characters,chars,unicode,index)
                             done[unic] = true

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/node-nut.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/base/mkiv/node-nut.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/base/mkiv/node-nut.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -205,7 +205,9 @@
 
 if LUATEXVERSION < 1.005 then
     local getfield = direct.getfield
-    function direct.getsup(n) return getfield(n,"sup") end
+    function direct.getnucleus(n) return getfield(n,"nucleus") end
+    function direct.getsub    (n) return getfield(n,"sub") end
+    function direct.getsup    (n) return getfield(n,"sup") end
 end
 
 -- if LUATEXVERSION < 1.004 then

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/status-files.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/context/base/mkiv/status-lua.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/context/interface/mkiv/i-context.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/context/interface/mkiv/i-readme.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.lua
===================================================================
--- trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -18,6 +18,9 @@
 local NC, NR, HL, ML = context.NC, context.NR, context.HL, context.ML
 local bold, monobold, mono, formattedmono = context.bold, context.monobold, context.mono, context.formatted.mono
 
+local show_glyphs = false  trackers.register("modules.fonts.variables.glyphs", function(v) show_glyphs = v end)
+local show_kerns  = false  trackers.register("modules.fonts.variables.kerns",  function(v) show_kerns  = v end)
+
 function moduledata.fonts.variable.showvariations(specification)
 
     specification = interfaces.checkedspecification(specification)
@@ -237,11 +240,21 @@
         context.startsubject { title = instance }
             context.start()
             context.definedfont { "name:" .. instance .. "*default" }
+            context.start()
+            if show_glyphs then
+                context.showglyphs()
+            end
+            if show_kerns then
+                context.showfontkerns()
+            end
             if sample and sample ~= "" then
                 context(sample)
             else
                 context.input("zapf.tex")
             end
+            context.stop()
+            context.blank { "big,samepage"}
+            context.showfontspacing()
             context.par()
             context.stop()
         context.stopsubject()

Modified: trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.mkiv
===================================================================
--- trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.mkiv	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/context/modules/mkiv/s-fonts-variable.mkiv	2017-05-19 22:21:26 UTC (rev 44436)
@@ -26,6 +26,18 @@
 
 \installmodulecommandluasingle \showfontvariations {moduledata.fonts.variable.showvariations}
 
+\unexpanded\def\showfontspacing
+  {\begingroup
+   \scratchskip \interwordspace plus \interwordstretch minus \interwordshrink
+   \normalexpanded{\hpack\bgroup
+      \tttf
+      sp: \the\scratchskip   \hskip\emwidth
+      es: \the\extraspace\hskip\emwidth
+      ex: \the\exheight  \hskip\emwidth
+      em: \the\emwidth   \hskip\emwidth
+   \egroup}%
+   \endgroup}
+
 \stopmodule
 
 \continueifinputfile{s-fonts-variable.mkiv}
@@ -34,6 +46,9 @@
 
 \setuphead[section][before={\testpage[5]\blank[2*big]}]
 
+\enabletrackers[modules.fonts.variables.glyphs]
+\enabletrackers[modules.fonts.variables.kerns]
+
 \starttext
 
     \startbuffer[zycon]
@@ -57,8 +72,9 @@
         \char983040\relax\par
     \stopbuffer
 
-%     \showfontkerns
-%     \showglyphs
+%     \showfontvariations
+%       [font=file:VotoSerifGX.ttf,
+%        max=6]
 
     \showfontvariations
       [font=file:adobevfprototype.otf]

Modified: trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-chr.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-chr.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-chr.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -9,6 +9,174 @@
 -- classifiers needed for analysis
 
 characters.classifiers={
+ [768]=5,
+ [769]=5,
+ [770]=5,
+ [771]=5,
+ [772]=5,
+ [773]=5,
+ [774]=5,
+ [775]=5,
+ [776]=5,
+ [777]=5,
+ [778]=5,
+ [779]=5,
+ [780]=5,
+ [781]=5,
+ [782]=5,
+ [783]=5,
+ [784]=5,
+ [785]=5,
+ [786]=5,
+ [787]=5,
+ [788]=5,
+ [789]=5,
+ [790]=5,
+ [791]=5,
+ [792]=5,
+ [793]=5,
+ [794]=5,
+ [795]=5,
+ [796]=5,
+ [797]=5,
+ [798]=5,
+ [799]=5,
+ [800]=5,
+ [801]=5,
+ [802]=5,
+ [803]=5,
+ [804]=5,
+ [805]=5,
+ [806]=5,
+ [807]=5,
+ [808]=5,
+ [809]=5,
+ [810]=5,
+ [811]=5,
+ [812]=5,
+ [813]=5,
+ [814]=5,
+ [815]=5,
+ [816]=5,
+ [817]=5,
+ [818]=5,
+ [819]=5,
+ [820]=5,
+ [821]=5,
+ [822]=5,
+ [823]=5,
+ [824]=5,
+ [825]=5,
+ [826]=5,
+ [827]=5,
+ [828]=5,
+ [829]=5,
+ [830]=5,
+ [831]=5,
+ [832]=5,
+ [833]=5,
+ [834]=5,
+ [835]=5,
+ [836]=5,
+ [837]=5,
+ [838]=5,
+ [839]=5,
+ [840]=5,
+ [841]=5,
+ [842]=5,
+ [843]=5,
+ [844]=5,
+ [845]=5,
+ [846]=5,
+ [847]=5,
+ [848]=5,
+ [849]=5,
+ [850]=5,
+ [851]=5,
+ [852]=5,
+ [853]=5,
+ [854]=5,
+ [855]=5,
+ [856]=5,
+ [857]=5,
+ [858]=5,
+ [859]=5,
+ [860]=5,
+ [861]=5,
+ [862]=5,
+ [863]=5,
+ [864]=5,
+ [865]=5,
+ [866]=5,
+ [867]=5,
+ [868]=5,
+ [869]=5,
+ [870]=5,
+ [871]=5,
+ [872]=5,
+ [873]=5,
+ [874]=5,
+ [875]=5,
+ [876]=5,
+ [877]=5,
+ [878]=5,
+ [879]=5,
+ [1155]=5,
+ [1156]=5,
+ [1157]=5,
+ [1158]=5,
+ [1159]=5,
+ [1425]=5,
+ [1426]=5,
+ [1427]=5,
+ [1428]=5,
+ [1429]=5,
+ [1430]=5,
+ [1431]=5,
+ [1432]=5,
+ [1433]=5,
+ [1434]=5,
+ [1435]=5,
+ [1436]=5,
+ [1437]=5,
+ [1438]=5,
+ [1439]=5,
+ [1440]=5,
+ [1441]=5,
+ [1442]=5,
+ [1443]=5,
+ [1444]=5,
+ [1445]=5,
+ [1446]=5,
+ [1447]=5,
+ [1448]=5,
+ [1449]=5,
+ [1450]=5,
+ [1451]=5,
+ [1452]=5,
+ [1453]=5,
+ [1454]=5,
+ [1455]=5,
+ [1456]=5,
+ [1457]=5,
+ [1458]=5,
+ [1459]=5,
+ [1460]=5,
+ [1461]=5,
+ [1462]=5,
+ [1463]=5,
+ [1464]=5,
+ [1465]=5,
+ [1466]=5,
+ [1467]=5,
+ [1468]=5,
+ [1469]=5,
+ [1471]=5,
+ [1473]=5,
+ [1474]=5,
+ [1476]=5,
+ [1477]=5,
+ [1479]=5,
  [1536]=4,
  [1537]=4,
  [1538]=4,
@@ -389,6 +557,17 @@
  [1917]=2,
  [1918]=2,
  [1919]=2,
+ [1958]=5,
+ [1959]=5,
+ [1960]=5,
+ [1961]=5,
+ [1962]=5,
+ [1963]=5,
+ [1964]=5,
+ [1965]=5,
+ [1966]=5,
+ [1967]=5,
+ [1968]=5,
  [1984]=6,
  [1985]=6,
  [1986]=6,
@@ -448,6 +627,27 @@
  [2040]=6,
  [2041]=6,
  [2042]=2,
+ [2070]=5,
+ [2071]=5,
+ [2072]=5,
+ [2073]=5,
+ [2075]=5,
+ [2076]=5,
+ [2077]=5,
+ [2078]=5,
+ [2079]=5,
+ [2080]=5,
+ [2081]=5,
+ [2082]=5,
+ [2083]=5,
+ [2085]=5,
+ [2086]=5,
+ [2087]=5,
+ [2089]=5,
+ [2090]=5,
+ [2091]=5,
+ [2092]=5,
+ [2093]=5,
  [2112]=3,
  [2113]=2,
  [2114]=2,
@@ -473,6 +673,9 @@
  [2134]=4,
  [2135]=4,
  [2136]=4,
+ [2137]=5,
+ [2138]=5,
+ [2139]=5,
  [2208]=2,
  [2209]=2,
  [2210]=2,
@@ -494,9 +697,339 @@
  [2226]=3,
  [2227]=2,
  [2228]=2,
+ [2230]=2,
+ [2231]=2,
+ [2232]=2,
+ [2233]=3,
+ [2234]=2,
+ [2235]=2,
+ [2236]=2,
+ [2237]=2,
+ [2260]=5,
+ [2261]=5,
+ [2262]=5,
+ [2263]=5,
+ [2264]=5,
+ [2265]=5,
+ [2266]=5,
+ [2267]=5,
+ [2268]=5,
+ [2269]=5,
+ [2270]=5,
+ [2271]=5,
+ [2272]=5,
+ [2273]=5,
+ [2274]=4,
+ [2275]=5,
+ [2276]=5,
+ [2277]=5,
+ [2278]=5,
+ [2279]=5,
+ [2280]=5,
+ [2281]=5,
+ [2282]=5,
+ [2283]=5,
+ [2284]=5,
+ [2285]=5,
+ [2286]=5,
+ [2287]=5,
+ [2288]=5,
+ [2289]=5,
+ [2290]=5,
+ [2291]=5,
+ [2292]=5,
+ [2293]=5,
+ [2294]=5,
+ [2295]=5,
+ [2296]=5,
+ [2297]=5,
+ [2298]=5,
+ [2299]=5,
+ [2300]=5,
+ [2301]=5,
+ [2302]=5,
+ [2303]=5,
+ [2304]=5,
+ [2305]=5,
+ [2306]=5,
+ [2362]=5,
+ [2364]=5,
+ [2369]=5,
+ [2370]=5,
+ [2371]=5,
+ [2372]=5,
+ [2373]=5,
+ [2374]=5,
+ [2375]=5,
+ [2376]=5,
+ [2381]=5,
+ [2385]=5,
+ [2386]=5,
+ [2387]=5,
+ [2388]=5,
+ [2389]=5,
+ [2390]=5,
+ [2391]=5,
+ [2402]=5,
+ [2403]=5,
+ [2433]=5,
+ [2492]=5,
+ [2497]=5,
+ [2498]=5,
+ [2499]=5,
+ [2500]=5,
+ [2509]=5,
+ [2530]=5,
+ [2531]=5,
+ [2561]=5,
+ [2562]=5,
+ [2620]=5,
+ [2625]=5,
+ [2626]=5,
+ [2631]=5,
+ [2632]=5,
+ [2635]=5,
+ [2636]=5,
+ [2637]=5,
+ [2641]=5,
+ [2672]=5,
+ [2673]=5,
+ [2677]=5,
+ [2689]=5,
+ [2690]=5,
+ [2748]=5,
+ [2753]=5,
+ [2754]=5,
+ [2755]=5,
+ [2756]=5,
+ [2757]=5,
+ [2759]=5,
+ [2760]=5,
+ [2765]=5,
+ [2786]=5,
+ [2787]=5,
+ [2817]=5,
+ [2876]=5,
+ [2879]=5,
+ [2881]=5,
+ [2882]=5,
+ [2883]=5,
+ [2884]=5,
+ [2893]=5,
+ [2902]=5,
+ [2914]=5,
+ [2915]=5,
+ [2946]=5,
+ [3008]=5,
+ [3021]=5,
+ [3072]=5,
+ [3134]=5,
+ [3135]=5,
+ [3136]=5,
+ [3142]=5,
+ [3143]=5,
+ [3144]=5,
+ [3146]=5,
+ [3147]=5,
+ [3148]=5,
+ [3149]=5,
+ [3157]=5,
+ [3158]=5,
+ [3170]=5,
+ [3171]=5,
+ [3201]=5,
+ [3260]=5,
+ [3263]=5,
+ [3270]=5,
+ [3276]=5,
+ [3277]=5,
+ [3298]=5,
+ [3299]=5,
+ [3329]=5,
+ [3393]=5,
+ [3394]=5,
+ [3395]=5,
+ [3396]=5,
+ [3405]=5,
+ [3426]=5,
+ [3427]=5,
+ [3530]=5,
+ [3538]=5,
+ [3539]=5,
+ [3540]=5,
+ [3542]=5,
+ [3633]=5,
+ [3636]=5,
+ [3637]=5,
+ [3638]=5,
+ [3639]=5,
+ [3640]=5,
+ [3641]=5,
+ [3642]=5,
+ [3655]=5,
+ [3656]=5,
+ [3657]=5,
+ [3658]=5,
+ [3659]=5,
+ [3660]=5,
+ [3661]=5,
+ [3662]=5,
+ [3761]=5,
+ [3764]=5,
+ [3765]=5,
+ [3766]=5,
+ [3767]=5,
+ [3768]=5,
+ [3769]=5,
+ [3771]=5,
+ [3772]=5,
+ [3784]=5,
+ [3785]=5,
+ [3786]=5,
+ [3787]=5,
+ [3788]=5,
+ [3789]=5,
+ [3864]=5,
+ [3865]=5,
+ [3893]=5,
+ [3895]=5,
+ [3897]=5,
+ [3953]=5,
+ [3954]=5,
+ [3955]=5,
+ [3956]=5,
+ [3957]=5,
+ [3958]=5,
+ [3959]=5,
+ [3960]=5,
+ [3961]=5,
+ [3962]=5,
+ [3963]=5,
+ [3964]=5,
+ [3965]=5,
+ [3966]=5,
+ [3968]=5,
+ [3969]=5,
+ [3970]=5,
+ [3971]=5,
+ [3972]=5,
+ [3974]=5,
+ [3975]=5,
+ [3981]=5,
+ [3982]=5,
+ [3983]=5,
+ [3984]=5,
+ [3985]=5,
+ [3986]=5,
+ [3987]=5,
+ [3988]=5,
+ [3989]=5,
+ [3990]=5,
+ [3991]=5,
+ [3993]=5,
+ [3994]=5,
+ [3995]=5,
+ [3996]=5,
+ [3997]=5,
+ [3998]=5,
+ [3999]=5,
+ [4000]=5,
+ [4001]=5,
+ [4002]=5,
+ [4003]=5,
+ [4004]=5,
+ [4005]=5,
+ [4006]=5,
+ [4007]=5,
+ [4008]=5,
+ [4009]=5,
+ [4010]=5,
+ [4011]=5,
+ [4012]=5,
+ [4013]=5,
+ [4014]=5,
+ [4015]=5,
+ [4016]=5,
+ [4017]=5,
+ [4018]=5,
+ [4019]=5,
+ [4020]=5,
+ [4021]=5,
+ [4022]=5,
+ [4023]=5,
+ [4024]=5,
+ [4025]=5,
+ [4026]=5,
+ [4027]=5,
+ [4028]=5,
+ [4038]=5,
+ [4141]=5,
+ [4142]=5,
+ [4143]=5,
+ [4144]=5,
+ [4146]=5,
+ [4147]=5,
+ [4148]=5,
+ [4149]=5,
+ [4150]=5,
+ [4151]=5,
+ [4153]=5,
+ [4154]=5,
+ [4157]=5,
+ [4158]=5,
+ [4184]=5,
+ [4185]=5,
+ [4190]=5,
+ [4191]=5,
+ [4192]=5,
+ [4209]=5,
+ [4210]=5,
+ [4211]=5,
+ [4212]=5,
+ [4226]=5,
+ [4229]=5,
+ [4230]=5,
+ [4237]=5,
+ [4253]=5,
+ [4957]=5,
+ [4958]=5,
+ [4959]=5,
+ [5906]=5,
+ [5907]=5,
+ [5908]=5,
+ [5938]=5,
+ [5939]=5,
+ [5940]=5,
+ [5970]=5,
+ [5971]=5,
+ [6002]=5,
+ [6003]=5,
+ [6071]=5,
+ [6072]=5,
+ [6073]=5,
+ [6074]=5,
+ [6075]=5,
+ [6076]=5,
+ [6077]=5,
+ [6086]=5,
+ [6089]=5,
+ [6090]=5,
+ [6091]=5,
+ [6092]=5,
+ [6093]=5,
+ [6094]=5,
+ [6095]=5,
+ [6096]=5,
+ [6097]=5,
+ [6098]=5,
+ [6099]=5,
+ [6109]=5,
  [6150]=4,
  [6151]=2,
  [6154]=2,
+ [6155]=5,
+ [6156]=5,
+ [6157]=5,
  [6158]=4,
  [6176]=2,
  [6177]=2,
@@ -591,8 +1124,6 @@
  [6274]=4,
  [6275]=4,
  [6276]=4,
- [6277]=4,
- [6278]=4,
  [6279]=2,
  [6280]=2,
  [6281]=2,
@@ -627,13 +1158,291 @@
  [6310]=2,
  [6311]=2,
  [6312]=2,
+ [6313]=5,
  [6314]=2,
+ [6432]=5,
+ [6433]=5,
+ [6434]=5,
+ [6439]=5,
+ [6440]=5,
+ [6450]=5,
+ [6457]=5,
+ [6458]=5,
+ [6459]=5,
+ [6679]=5,
+ [6680]=5,
+ [6742]=5,
+ [6744]=5,
+ [6745]=5,
+ [6746]=5,
+ [6747]=5,
+ [6748]=5,
+ [6749]=5,
+ [6750]=5,
+ [6752]=5,
+ [6754]=5,
+ [6757]=5,
+ [6758]=5,
+ [6759]=5,
+ [6760]=5,
+ [6761]=5,
+ [6762]=5,
+ [6763]=5,
+ [6764]=5,
+ [6771]=5,
+ [6772]=5,
+ [6773]=5,
+ [6774]=5,
+ [6775]=5,
+ [6776]=5,
+ [6777]=5,
+ [6778]=5,
+ [6779]=5,
+ [6780]=5,
+ [6783]=5,
+ [6832]=5,
+ [6833]=5,
+ [6834]=5,
+ [6835]=5,
+ [6836]=5,
+ [6837]=5,
+ [6838]=5,
+ [6839]=5,
+ [6840]=5,
+ [6841]=5,
+ [6842]=5,
+ [6843]=5,
+ [6844]=5,
+ [6845]=5,
+ [6912]=5,
+ [6913]=5,
+ [6914]=5,
+ [6915]=5,
+ [6964]=5,
+ [6966]=5,
+ [6967]=5,
+ [6968]=5,
+ [6969]=5,
+ [6970]=5,
+ [6972]=5,
+ [6978]=5,
+ [7019]=5,
+ [7020]=5,
+ [7021]=5,
+ [7022]=5,
+ [7023]=5,
+ [7024]=5,
+ [7025]=5,
+ [7026]=5,
+ [7027]=5,
+ [7040]=5,
+ [7041]=5,
+ [7074]=5,
+ [7075]=5,
+ [7076]=5,
+ [7077]=5,
+ [7080]=5,
+ [7081]=5,
+ [7083]=5,
+ [7142]=5,
+ [7144]=5,
+ [7145]=5,
+ [7149]=5,
+ [7151]=5,
+ [7152]=5,
+ [7153]=5,
+ [7212]=5,
+ [7213]=5,
+ [7214]=5,
+ [7215]=5,
+ [7216]=5,
+ [7217]=5,
+ [7218]=5,
+ [7219]=5,
+ [7222]=5,
+ [7223]=5,
+ [7376]=5,
+ [7377]=5,
+ [7378]=5,
+ [7380]=5,
+ [7381]=5,
+ [7382]=5,
+ [7383]=5,
+ [7384]=5,
+ [7385]=5,
+ [7386]=5,
+ [7387]=5,
+ [7388]=5,
+ [7389]=5,
+ [7390]=5,
+ [7391]=5,
+ [7392]=5,
+ [7394]=5,
+ [7395]=5,
+ [7396]=5,
+ [7397]=5,
+ [7398]=5,
+ [7399]=5,
+ [7400]=5,
+ [7405]=5,
+ [7412]=5,
+ [7416]=5,
+ [7417]=5,
+ [7616]=5,
+ [7617]=5,
+ [7618]=5,
+ [7619]=5,
+ [7620]=5,
+ [7621]=5,
+ [7622]=5,
+ [7623]=5,
+ [7624]=5,
+ [7625]=5,
+ [7626]=5,
+ [7627]=5,
+ [7628]=5,
+ [7629]=5,
+ [7630]=5,
+ [7631]=5,
+ [7632]=5,
+ [7633]=5,
+ [7634]=5,
+ [7635]=5,
+ [7636]=5,
+ [7637]=5,
+ [7638]=5,
+ [7639]=5,
+ [7640]=5,
+ [7641]=5,
+ [7642]=5,
+ [7643]=5,
+ [7644]=5,
+ [7645]=5,
+ [7646]=5,
+ [7647]=5,
+ [7648]=5,
+ [7649]=5,
+ [7650]=5,
+ [7651]=5,
+ [7652]=5,
+ [7653]=5,
+ [7654]=5,
+ [7655]=5,
+ [7656]=5,
+ [7657]=5,
+ [7658]=5,
+ [7659]=5,
+ [7660]=5,
+ [7661]=5,
+ [7662]=5,
+ [7663]=5,
+ [7664]=5,
+ [7665]=5,
+ [7666]=5,
+ [7667]=5,
+ [7668]=5,
+ [7669]=5,
+ [7675]=5,
+ [7676]=5,
+ [7677]=5,
+ [7678]=5,
+ [7679]=5,
  [8204]=4,
  [8205]=2,
+ [8239]=4,
  [8294]=4,
  [8295]=4,
  [8296]=4,
  [8297]=4,
+ [8400]=5,
+ [8401]=5,
+ [8402]=5,
+ [8403]=5,
+ [8404]=5,
+ [8405]=5,
+ [8406]=5,
+ [8407]=5,
+ [8408]=5,
+ [8409]=5,
+ [8410]=5,
+ [8411]=5,
+ [8412]=5,
+ [8417]=5,
+ [8421]=5,
+ [8422]=5,
+ [8423]=5,
+ [8424]=5,
+ [8425]=5,
+ [8426]=5,
+ [8427]=5,
+ [8428]=5,
+ [8429]=5,
+ [8430]=5,
+ [8431]=5,
+ [8432]=5,
+ [11503]=5,
+ [11504]=5,
+ [11505]=5,
+ [11647]=5,
+ [11744]=5,
+ [11745]=5,
+ [11746]=5,
+ [11747]=5,
+ [11748]=5,
+ [11749]=5,
+ [11750]=5,
+ [11751]=5,
+ [11752]=5,
+ [11753]=5,
+ [11754]=5,
+ [11755]=5,
+ [11756]=5,
+ [11757]=5,
+ [11758]=5,
+ [11759]=5,
+ [11760]=5,
+ [11761]=5,
+ [11762]=5,
+ [11763]=5,
+ [11764]=5,
+ [11765]=5,
+ [11766]=5,
+ [11767]=5,
+ [11768]=5,
+ [11769]=5,
+ [11770]=5,
+ [11771]=5,
+ [11772]=5,
+ [11773]=5,
+ [11774]=5,
+ [11775]=5,
+ [12330]=5,
+ [12331]=5,
+ [12332]=5,
+ [12333]=5,
+ [12334]=5,
+ [12335]=5,
+ [12441]=5,
+ [12442]=5,
+ [42607]=5,
+ [42612]=5,
+ [42613]=5,
+ [42614]=5,
+ [42615]=5,
+ [42616]=5,
+ [42617]=5,
+ [42618]=5,
+ [42619]=5,
+ [42620]=5,
+ [42621]=5,
+ [42654]=5,
+ [42655]=5,
+ [42736]=5,
+ [42737]=5,
+ [43014]=5,
+ [43019]=5,
+ [43045]=5,
+ [43046]=5,
  [43072]=2,
  [43073]=2,
  [43074]=2,
@@ -686,6 +1495,120 @@
  [43121]=2,
  [43122]=1,
  [43123]=4,
+ [43204]=5,
+ [43205]=5,
+ [43232]=5,
+ [43233]=5,
+ [43234]=5,
+ [43235]=5,
+ [43236]=5,
+ [43237]=5,
+ [43238]=5,
+ [43239]=5,
+ [43240]=5,
+ [43241]=5,
+ [43242]=5,
+ [43243]=5,
+ [43244]=5,
+ [43245]=5,
+ [43246]=5,
+ [43247]=5,
+ [43248]=5,
+ [43249]=5,
+ [43302]=5,
+ [43303]=5,
+ [43304]=5,
+ [43305]=5,
+ [43306]=5,
+ [43307]=5,
+ [43308]=5,
+ [43309]=5,
+ [43335]=5,
+ [43336]=5,
+ [43337]=5,
+ [43338]=5,
+ [43339]=5,
+ [43340]=5,
+ [43341]=5,
+ [43342]=5,
+ [43343]=5,
+ [43344]=5,
+ [43345]=5,
+ [43392]=5,
+ [43393]=5,
+ [43394]=5,
+ [43443]=5,
+ [43446]=5,
+ [43447]=5,
+ [43448]=5,
+ [43449]=5,
+ [43452]=5,
+ [43493]=5,
+ [43561]=5,
+ [43562]=5,
+ [43563]=5,
+ [43564]=5,
+ [43565]=5,
+ [43566]=5,
+ [43569]=5,
+ [43570]=5,
+ [43573]=5,
+ [43574]=5,
+ [43587]=5,
+ [43596]=5,
+ [43644]=5,
+ [43696]=5,
+ [43698]=5,
+ [43699]=5,
+ [43700]=5,
+ [43703]=5,
+ [43704]=5,
+ [43710]=5,
+ [43711]=5,
+ [43713]=5,
+ [43756]=5,
+ [43757]=5,
+ [43766]=5,
+ [44005]=5,
+ [44008]=5,
+ [44013]=5,
+ [64286]=5,
+ [65056]=5,
+ [65057]=5,
+ [65058]=5,
+ [65059]=5,
+ [65060]=5,
+ [65061]=5,
+ [65062]=5,
+ [65063]=5,
+ [65064]=5,
+ [65065]=5,
+ [65066]=5,
+ [65067]=5,
+ [65068]=5,
+ [65069]=5,
+ [65070]=5,
+ [65071]=5,
+ [66045]=5,
+ [66272]=5,
+ [66422]=5,
+ [66423]=5,
+ [66424]=5,
+ [66425]=5,
+ [66426]=5,
+ [68097]=5,
+ [68098]=5,
+ [68099]=5,
+ [68101]=5,
+ [68102]=5,
+ [68108]=5,
+ [68109]=5,
+ [68110]=5,
+ [68111]=5,
+ [68152]=5,
+ [68153]=5,
+ [68154]=5,
+ [68159]=5,
  [68288]=2,
  [68289]=2,
  [68290]=2,
@@ -723,6 +1646,8 @@
  [68322]=4,
  [68323]=4,
  [68324]=3,
+ [68325]=5,
+ [68326]=5,
  [68331]=2,
  [68332]=2,
  [68333]=2,
@@ -753,6 +1678,497 @@
  [68525]=2,
  [68526]=2,
  [68527]=4,
+ [69633]=5,
+ [69688]=5,
+ [69689]=5,
+ [69690]=5,
+ [69691]=5,
+ [69692]=5,
+ [69693]=5,
+ [69694]=5,
+ [69695]=5,
+ [69696]=5,
+ [69697]=5,
+ [69698]=5,
+ [69699]=5,
+ [69700]=5,
+ [69701]=5,
+ [69702]=5,
+ [69759]=5,
+ [69760]=5,
+ [69761]=5,
+ [69811]=5,
+ [69812]=5,
+ [69813]=5,
+ [69814]=5,
+ [69817]=5,
+ [69818]=5,
+ [69888]=5,
+ [69889]=5,
+ [69890]=5,
+ [69927]=5,
+ [69928]=5,
+ [69929]=5,
+ [69930]=5,
+ [69931]=5,
+ [69933]=5,
+ [69934]=5,
+ [69935]=5,
+ [69936]=5,
+ [69937]=5,
+ [69938]=5,
+ [69939]=5,
+ [69940]=5,
+ [70003]=5,
+ [70016]=5,
+ [70017]=5,
+ [70070]=5,
+ [70071]=5,
+ [70072]=5,
+ [70073]=5,
+ [70074]=5,
+ [70075]=5,
+ [70076]=5,
+ [70077]=5,
+ [70078]=5,
+ [70090]=5,
+ [70091]=5,
+ [70092]=5,
+ [70191]=5,
+ [70192]=5,
+ [70193]=5,
+ [70196]=5,
+ [70198]=5,
+ [70199]=5,
+ [70206]=5,
+ [70367]=5,
+ [70371]=5,
+ [70372]=5,
+ [70373]=5,
+ [70374]=5,
+ [70375]=5,
+ [70376]=5,
+ [70377]=5,
+ [70378]=5,
+ [70400]=5,
+ [70401]=5,
+ [70460]=5,
+ [70464]=5,
+ [70502]=5,
+ [70503]=5,
+ [70504]=5,
+ [70505]=5,
+ [70506]=5,
+ [70507]=5,
+ [70508]=5,
+ [70512]=5,
+ [70513]=5,
+ [70514]=5,
+ [70515]=5,
+ [70516]=5,
+ [70712]=5,
+ [70713]=5,
+ [70714]=5,
+ [70715]=5,
+ [70716]=5,
+ [70717]=5,
+ [70718]=5,
+ [70719]=5,
+ [70722]=5,
+ [70723]=5,
+ [70724]=5,
+ [70726]=5,
+ [70835]=5,
+ [70836]=5,
+ [70837]=5,
+ [70838]=5,
+ [70839]=5,
+ [70840]=5,
+ [70842]=5,
+ [70847]=5,
+ [70848]=5,
+ [70850]=5,
+ [70851]=5,
+ [71090]=5,
+ [71091]=5,
+ [71092]=5,
+ [71093]=5,
+ [71100]=5,
+ [71101]=5,
+ [71103]=5,
+ [71104]=5,
+ [71132]=5,
+ [71133]=5,
+ [71219]=5,
+ [71220]=5,
+ [71221]=5,
+ [71222]=5,
+ [71223]=5,
+ [71224]=5,
+ [71225]=5,
+ [71226]=5,
+ [71229]=5,
+ [71231]=5,
+ [71232]=5,
+ [71339]=5,
+ [71341]=5,
+ [71344]=5,
+ [71345]=5,
+ [71346]=5,
+ [71347]=5,
+ [71348]=5,
+ [71349]=5,
+ [71351]=5,
+ [71453]=5,
+ [71454]=5,
+ [71455]=5,
+ [71458]=5,
+ [71459]=5,
+ [71460]=5,
+ [71461]=5,
+ [71463]=5,
+ [71464]=5,
+ [71465]=5,
+ [71466]=5,
+ [71467]=5,
+ [72752]=5,
+ [72753]=5,
+ [72754]=5,
+ [72755]=5,
+ [72756]=5,
+ [72757]=5,
+ [72758]=5,
+ [72760]=5,
+ [72761]=5,
+ [72762]=5,
+ [72763]=5,
+ [72764]=5,
+ [72765]=5,
+ [72767]=5,
+ [72850]=5,
+ [72851]=5,
+ [72852]=5,
+ [72853]=5,
+ [72854]=5,
+ [72855]=5,
+ [72856]=5,
+ [72857]=5,
+ [72858]=5,
+ [72859]=5,
+ [72860]=5,
+ [72861]=5,
+ [72862]=5,
+ [72863]=5,
+ [72864]=5,
+ [72865]=5,
+ [72866]=5,
+ [72867]=5,
+ [72868]=5,
+ [72869]=5,
+ [72870]=5,
+ [72871]=5,
+ [72874]=5,
+ [72875]=5,
+ [72876]=5,
+ [72877]=5,
+ [72878]=5,
+ [72879]=5,
+ [72880]=5,
+ [72882]=5,
+ [72883]=5,
+ [72885]=5,
+ [72886]=5,
+ [92912]=5,
+ [92913]=5,
+ [92914]=5,
+ [92915]=5,
+ [92916]=5,
+ [92976]=5,
+ [92977]=5,
+ [92978]=5,
+ [92979]=5,
+ [92980]=5,
+ [92981]=5,
+ [92982]=5,
+ [94095]=5,
+ [94096]=5,
+ [94097]=5,
+ [94098]=5,
+ [113821]=5,
+ [113822]=5,
+ [119143]=5,
+ [119144]=5,
+ [119145]=5,
+ [119163]=5,
+ [119164]=5,
+ [119165]=5,
+ [119166]=5,
+ [119167]=5,
+ [119168]=5,
+ [119169]=5,
+ [119170]=5,
+ [119173]=5,
+ [119174]=5,
+ [119175]=5,
+ [119176]=5,
+ [119177]=5,
+ [119178]=5,
+ [119179]=5,
+ [119210]=5,
+ [119211]=5,
+ [119212]=5,
+ [119213]=5,
+ [119362]=5,
+ [119363]=5,
+ [119364]=5,
+ [121344]=5,
+ [121345]=5,
+ [121346]=5,
+ [121347]=5,
+ [121348]=5,
+ [121349]=5,
+ [121350]=5,
+ [121351]=5,
+ [121352]=5,
+ [121353]=5,
+ [121354]=5,
+ [121355]=5,
+ [121356]=5,
+ [121357]=5,
+ [121358]=5,
+ [121359]=5,
+ [121360]=5,
+ [121361]=5,
+ [121362]=5,
+ [121363]=5,
+ [121364]=5,
+ [121365]=5,
+ [121366]=5,
+ [121367]=5,
+ [121368]=5,
+ [121369]=5,
+ [121370]=5,
+ [121371]=5,
+ [121372]=5,
+ [121373]=5,
+ [121374]=5,
+ [121375]=5,
+ [121376]=5,
+ [121377]=5,
+ [121378]=5,
+ [121379]=5,
+ [121380]=5,
+ [121381]=5,
+ [121382]=5,
+ [121383]=5,
+ [121384]=5,
+ [121385]=5,
+ [121386]=5,
+ [121387]=5,
+ [121388]=5,
+ [121389]=5,
+ [121390]=5,
+ [121391]=5,
+ [121392]=5,
+ [121393]=5,
+ [121394]=5,
+ [121395]=5,
+ [121396]=5,
+ [121397]=5,
+ [121398]=5,
+ [121403]=5,
+ [121404]=5,
+ [121405]=5,
+ [121406]=5,
+ [121407]=5,
+ [121408]=5,
+ [121409]=5,
+ [121410]=5,
+ [121411]=5,
+ [121412]=5,
+ [121413]=5,
+ [121414]=5,
+ [121415]=5,
+ [121416]=5,
+ [121417]=5,
+ [121418]=5,
+ [121419]=5,
+ [121420]=5,
+ [121421]=5,
+ [121422]=5,
+ [121423]=5,
+ [121424]=5,
+ [121425]=5,
+ [121426]=5,
+ [121427]=5,
+ [121428]=5,
+ [121429]=5,
+ [121430]=5,
+ [121431]=5,
+ [121432]=5,
+ [121433]=5,
+ [121434]=5,
+ [121435]=5,
+ [121436]=5,
+ [121437]=5,
+ [121438]=5,
+ [121439]=5,
+ [121440]=5,
+ [121441]=5,
+ [121442]=5,
+ [121443]=5,
+ [121444]=5,
+ [121445]=5,
+ [121446]=5,
+ [121447]=5,
+ [121448]=5,
+ [121449]=5,
+ [121450]=5,
+ [121451]=5,
+ [121452]=5,
+ [121461]=5,
+ [121476]=5,
+ [121499]=5,
+ [121500]=5,
+ [121501]=5,
+ [121502]=5,
+ [121503]=5,
+ [121505]=5,
+ [121506]=5,
+ [121507]=5,
+ [121508]=5,
+ [121509]=5,
+ [121510]=5,
+ [121511]=5,
+ [121512]=5,
+ [121513]=5,
+ [121514]=5,
+ [121515]=5,
+ [121516]=5,
+ [121517]=5,
+ [121518]=5,
+ [121519]=5,
+ [122880]=5,
+ [122881]=5,
+ [122882]=5,
+ [122883]=5,
+ [122884]=5,
+ [122885]=5,
+ [122886]=5,
+ [122888]=5,
+ [122889]=5,
+ [122890]=5,
+ [122891]=5,
+ [122892]=5,
+ [122893]=5,
+ [122894]=5,
+ [122895]=5,
+ [122896]=5,
+ [122897]=5,
+ [122898]=5,
+ [122899]=5,
+ [122900]=5,
+ [122901]=5,
+ [122902]=5,
+ [122903]=5,
+ [122904]=5,
+ [122907]=5,
+ [122908]=5,
+ [122909]=5,
+ [122910]=5,
+ [122911]=5,
+ [122912]=5,
+ [122913]=5,
+ [122915]=5,
+ [122916]=5,
+ [122918]=5,
+ [122919]=5,
+ [122920]=5,
+ [122921]=5,
+ [122922]=5,
+ [125136]=5,
+ [125137]=5,
+ [125138]=5,
+ [125139]=5,
+ [125140]=5,
+ [125141]=5,
+ [125142]=5,
+ [125184]=2,
+ [125185]=2,
+ [125186]=2,
+ [125187]=2,
+ [125188]=2,
+ [125189]=2,
+ [125190]=2,
+ [125191]=2,
+ [125192]=2,
+ [125193]=2,
+ [125194]=2,
+ [125195]=2,
+ [125196]=2,
+ [125197]=2,
+ [125198]=2,
+ [125199]=2,
+ [125200]=2,
+ [125201]=2,
+ [125202]=2,
+ [125203]=2,
+ [125204]=2,
+ [125205]=2,
+ [125206]=2,
+ [125207]=2,
+ [125208]=2,
+ [125209]=2,
+ [125210]=2,
+ [125211]=2,
+ [125212]=2,
+ [125213]=2,
+ [125214]=2,
+ [125215]=2,
+ [125216]=2,
+ [125217]=2,
+ [125218]=2,
+ [125219]=2,
+ [125220]=2,
+ [125221]=2,
+ [125222]=2,
+ [125223]=2,
+ [125224]=2,
+ [125225]=2,
+ [125226]=2,
+ [125227]=2,
+ [125228]=2,
+ [125229]=2,
+ [125230]=2,
+ [125231]=2,
+ [125232]=2,
+ [125233]=2,
+ [125234]=2,
+ [125235]=2,
+ [125236]=2,
+ [125237]=2,
+ [125238]=2,
+ [125239]=2,
+ [125240]=2,
+ [125241]=2,
+ [125242]=2,
+ [125243]=2,
+ [125244]=2,
+ [125245]=2,
+ [125246]=2,
+ [125247]=2,
+ [125248]=2,
+ [125249]=2,
+ [125250]=2,
+ [125251]=2,
+ [125252]=5,
+ [125253]=5,
+ [125254]=5,
+ [125255]=5,
+ [125256]=5,
+ [125257]=5,
+ [125258]=5,
+ [1042752]=5,
 }
 
 -- done

Modified: trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-nod.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-nod.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-nod.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -228,8 +228,8 @@
 nuts.setcomponents = direct.setcomponents or function(n,c)        setfield(n,"components",c) end
 nuts.getkern       = direct.getkern       or function(n)   return getfield(n,"kern")         end
 nuts.setkern       = direct.setkern       or function(n,k)        setfield(n,"kern",k)       end
-nuts.getdir        = direct.getkern       or function(n)   return getfield(n,"dir")          end
-nuts.setdir        = direct.setkern       or function(n,d)        setfield(n,"dir",d)        end
+nuts.getdir        = direct.getdir        or function(n)   return getfield(n,"dir")          end
+nuts.setdir        = direct.setdir        or function(n,d)        setfield(n,"dir",d)        end
 nuts.getwidth      = direct.getwidth      or function(n)   return getfield(n,"width")        end
 nuts.setwidth      = direct.setwidth      or function(n,w) return setfield(n,"width",w)      end
 nuts.getheight     = direct.getheight     or function(n)   return getfield(n,"height")       end

Modified: trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-prepare.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-prepare.tex	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-prepare.tex	2017-05-19 22:21:26 UTC (rev 44436)
@@ -58,6 +58,8 @@
                 else
                     classifiers[k] = s_rest
                 end
+            elseif c.category == "mn" then
+                classifiers[k] = s_mark
             end
         end
     end

Modified: trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua
===================================================================
--- trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua	2017-05-19 22:21:26 UTC (rev 44436)
@@ -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  : 05/12/17 22:40:43
+-- merge date  : 05/15/17 21:48:19
 
 do -- begin closure to overcome local limits and interference
 
@@ -5105,8 +5105,8 @@
 nuts.setcomponents=direct.setcomponents or function(n,c)    setfield(n,"components",c) end
 nuts.getkern=direct.getkern    or function(n)  return getfield(n,"kern")     end
 nuts.setkern=direct.setkern    or function(n,k)    setfield(n,"kern",k)    end
-nuts.getdir=direct.getkern    or function(n)  return getfield(n,"dir")     end
-nuts.setdir=direct.setkern    or function(n,d)    setfield(n,"dir",d)    end
+nuts.getdir=direct.getdir    or function(n)  return getfield(n,"dir")     end
+nuts.setdir=direct.setdir    or function(n,d)    setfield(n,"dir",d)    end
 nuts.getwidth=direct.getwidth   or function(n)  return getfield(n,"width")    end
 nuts.setwidth=direct.setwidth   or function(n,w) return setfield(n,"width",w)   end
 nuts.getheight=direct.getheight   or function(n)  return getfield(n,"height")    end
@@ -5319,6 +5319,174 @@
 characters=characters or {}
 characters.blockrange={}
 characters.classifiers={
+ [768]=5,
+ [769]=5,
+ [770]=5,
+ [771]=5,
+ [772]=5,
+ [773]=5,
+ [774]=5,
+ [775]=5,
+ [776]=5,
+ [777]=5,
+ [778]=5,
+ [779]=5,
+ [780]=5,
+ [781]=5,
+ [782]=5,
+ [783]=5,
+ [784]=5,
+ [785]=5,
+ [786]=5,
+ [787]=5,
+ [788]=5,
+ [789]=5,
+ [790]=5,
+ [791]=5,
+ [792]=5,
+ [793]=5,
+ [794]=5,
+ [795]=5,
+ [796]=5,
+ [797]=5,
+ [798]=5,
+ [799]=5,
+ [800]=5,
+ [801]=5,
+ [802]=5,
+ [803]=5,
+ [804]=5,
+ [805]=5,
+ [806]=5,
+ [807]=5,
+ [808]=5,
+ [809]=5,
+ [810]=5,
+ [811]=5,
+ [812]=5,
+ [813]=5,
+ [814]=5,
+ [815]=5,
+ [816]=5,
+ [817]=5,
+ [818]=5,
+ [819]=5,
+ [820]=5,
+ [821]=5,
+ [822]=5,
+ [823]=5,
+ [824]=5,
+ [825]=5,
+ [826]=5,
+ [827]=5,
+ [828]=5,
+ [829]=5,
+ [830]=5,
+ [831]=5,
+ [832]=5,
+ [833]=5,
+ [834]=5,
+ [835]=5,
+ [836]=5,
+ [837]=5,
+ [838]=5,
+ [839]=5,
+ [840]=5,
+ [841]=5,
+ [842]=5,
+ [843]=5,
+ [844]=5,
+ [845]=5,
+ [846]=5,
+ [847]=5,
+ [848]=5,
+ [849]=5,
+ [850]=5,
+ [851]=5,
+ [852]=5,
+ [853]=5,
+ [854]=5,
+ [855]=5,
+ [856]=5,
+ [857]=5,
+ [858]=5,
+ [859]=5,
+ [860]=5,
+ [861]=5,
+ [862]=5,
+ [863]=5,
+ [864]=5,
+ [865]=5,
+ [866]=5,
+ [867]=5,
+ [868]=5,
+ [869]=5,
+ [870]=5,
+ [871]=5,
+ [872]=5,
+ [873]=5,
+ [874]=5,
+ [875]=5,
+ [876]=5,
+ [877]=5,
+ [878]=5,
+ [879]=5,
+ [1155]=5,
+ [1156]=5,
+ [1157]=5,
+ [1158]=5,
+ [1159]=5,
+ [1425]=5,
+ [1426]=5,
+ [1427]=5,
+ [1428]=5,
+ [1429]=5,
+ [1430]=5,
+ [1431]=5,
+ [1432]=5,
+ [1433]=5,
+ [1434]=5,
+ [1435]=5,
+ [1436]=5,
+ [1437]=5,
+ [1438]=5,
+ [1439]=5,
+ [1440]=5,
+ [1441]=5,
+ [1442]=5,
+ [1443]=5,
+ [1444]=5,
+ [1445]=5,
+ [1446]=5,
+ [1447]=5,
+ [1448]=5,
+ [1449]=5,
+ [1450]=5,
+ [1451]=5,
+ [1452]=5,
+ [1453]=5,
+ [1454]=5,
+ [1455]=5,
+ [1456]=5,
+ [1457]=5,
+ [1458]=5,
+ [1459]=5,
+ [1460]=5,
+ [1461]=5,
+ [1462]=5,
+ [1463]=5,
+ [1464]=5,
+ [1465]=5,
+ [1466]=5,
+ [1467]=5,
+ [1468]=5,
+ [1469]=5,
+ [1471]=5,
+ [1473]=5,
+ [1474]=5,
+ [1476]=5,
+ [1477]=5,
+ [1479]=5,
  [1536]=4,
  [1537]=4,
  [1538]=4,
@@ -5699,6 +5867,17 @@
  [1917]=2,
  [1918]=2,
  [1919]=2,
+ [1958]=5,
+ [1959]=5,
+ [1960]=5,
+ [1961]=5,
+ [1962]=5,
+ [1963]=5,
+ [1964]=5,
+ [1965]=5,
+ [1966]=5,
+ [1967]=5,
+ [1968]=5,
  [1984]=6,
  [1985]=6,
  [1986]=6,
@@ -5758,6 +5937,27 @@
  [2040]=6,
  [2041]=6,
  [2042]=2,
+ [2070]=5,
+ [2071]=5,
+ [2072]=5,
+ [2073]=5,
+ [2075]=5,
+ [2076]=5,
+ [2077]=5,
+ [2078]=5,
+ [2079]=5,
+ [2080]=5,
+ [2081]=5,
+ [2082]=5,
+ [2083]=5,
+ [2085]=5,
+ [2086]=5,
+ [2087]=5,
+ [2089]=5,
+ [2090]=5,
+ [2091]=5,
+ [2092]=5,
+ [2093]=5,
  [2112]=3,
  [2113]=2,
  [2114]=2,
@@ -5783,6 +5983,9 @@
  [2134]=4,
  [2135]=4,
  [2136]=4,
+ [2137]=5,
+ [2138]=5,
+ [2139]=5,
  [2208]=2,
  [2209]=2,
  [2210]=2,
@@ -5804,9 +6007,339 @@
  [2226]=3,
  [2227]=2,
  [2228]=2,
+ [2230]=2,
+ [2231]=2,
+ [2232]=2,
+ [2233]=3,
+ [2234]=2,
+ [2235]=2,
+ [2236]=2,
+ [2237]=2,
+ [2260]=5,
+ [2261]=5,
+ [2262]=5,
+ [2263]=5,
+ [2264]=5,
+ [2265]=5,
+ [2266]=5,
+ [2267]=5,
+ [2268]=5,
+ [2269]=5,
+ [2270]=5,
+ [2271]=5,
+ [2272]=5,
+ [2273]=5,
+ [2274]=4,
+ [2275]=5,
+ [2276]=5,
+ [2277]=5,
+ [2278]=5,
+ [2279]=5,
+ [2280]=5,
+ [2281]=5,
+ [2282]=5,
+ [2283]=5,
+ [2284]=5,
+ [2285]=5,
+ [2286]=5,
+ [2287]=5,
+ [2288]=5,
+ [2289]=5,
+ [2290]=5,
+ [2291]=5,
+ [2292]=5,
+ [2293]=5,
+ [2294]=5,
+ [2295]=5,
+ [2296]=5,
+ [2297]=5,
+ [2298]=5,
+ [2299]=5,
+ [2300]=5,
+ [2301]=5,
+ [2302]=5,
+ [2303]=5,
+ [2304]=5,
+ [2305]=5,
+ [2306]=5,
+ [2362]=5,
+ [2364]=5,
+ [2369]=5,
+ [2370]=5,
+ [2371]=5,
+ [2372]=5,
+ [2373]=5,
+ [2374]=5,
+ [2375]=5,
+ [2376]=5,
+ [2381]=5,
+ [2385]=5,
+ [2386]=5,
+ [2387]=5,
+ [2388]=5,
+ [2389]=5,
+ [2390]=5,
+ [2391]=5,
+ [2402]=5,
+ [2403]=5,
+ [2433]=5,
+ [2492]=5,
+ [2497]=5,
+ [2498]=5,
+ [2499]=5,
+ [2500]=5,
+ [2509]=5,
+ [2530]=5,
+ [2531]=5,
+ [2561]=5,
+ [2562]=5,
+ [2620]=5,
+ [2625]=5,
+ [2626]=5,
+ [2631]=5,
+ [2632]=5,
+ [2635]=5,
+ [2636]=5,
+ [2637]=5,
+ [2641]=5,
+ [2672]=5,
+ [2673]=5,
+ [2677]=5,
+ [2689]=5,
+ [2690]=5,
+ [2748]=5,
+ [2753]=5,
+ [2754]=5,
+ [2755]=5,
+ [2756]=5,
+ [2757]=5,
+ [2759]=5,
+ [2760]=5,
+ [2765]=5,
+ [2786]=5,
+ [2787]=5,
+ [2817]=5,
+ [2876]=5,
+ [2879]=5,
+ [2881]=5,
+ [2882]=5,
+ [2883]=5,
+ [2884]=5,
+ [2893]=5,
+ [2902]=5,
+ [2914]=5,
+ [2915]=5,
+ [2946]=5,
+ [3008]=5,
+ [3021]=5,
+ [3072]=5,
+ [3134]=5,
+ [3135]=5,
+ [3136]=5,
+ [3142]=5,
+ [3143]=5,
+ [3144]=5,
+ [3146]=5,
+ [3147]=5,
+ [3148]=5,
+ [3149]=5,
+ [3157]=5,
+ [3158]=5,
+ [3170]=5,
+ [3171]=5,
+ [3201]=5,
+ [3260]=5,
+ [3263]=5,
+ [3270]=5,
+ [3276]=5,
+ [3277]=5,
+ [3298]=5,
+ [3299]=5,
+ [3329]=5,
+ [3393]=5,
+ [3394]=5,
+ [3395]=5,
+ [3396]=5,
+ [3405]=5,
+ [3426]=5,
+ [3427]=5,
+ [3530]=5,
+ [3538]=5,
+ [3539]=5,
+ [3540]=5,
+ [3542]=5,
+ [3633]=5,
+ [3636]=5,
+ [3637]=5,
+ [3638]=5,
+ [3639]=5,
+ [3640]=5,
+ [3641]=5,
+ [3642]=5,
+ [3655]=5,
+ [3656]=5,
+ [3657]=5,
+ [3658]=5,
+ [3659]=5,
+ [3660]=5,
+ [3661]=5,
+ [3662]=5,
+ [3761]=5,
+ [3764]=5,
+ [3765]=5,
+ [3766]=5,
+ [3767]=5,
+ [3768]=5,
+ [3769]=5,
+ [3771]=5,
+ [3772]=5,
+ [3784]=5,
+ [3785]=5,
+ [3786]=5,
+ [3787]=5,
+ [3788]=5,
+ [3789]=5,
+ [3864]=5,
+ [3865]=5,
+ [3893]=5,
+ [3895]=5,
+ [3897]=5,
+ [3953]=5,
+ [3954]=5,
+ [3955]=5,
+ [3956]=5,
+ [3957]=5,
+ [3958]=5,
+ [3959]=5,
+ [3960]=5,
+ [3961]=5,
+ [3962]=5,
+ [3963]=5,
+ [3964]=5,
+ [3965]=5,
+ [3966]=5,
+ [3968]=5,
+ [3969]=5,
+ [3970]=5,
+ [3971]=5,
+ [3972]=5,
+ [3974]=5,
+ [3975]=5,
+ [3981]=5,
+ [3982]=5,
+ [3983]=5,
+ [3984]=5,
+ [3985]=5,
+ [3986]=5,
+ [3987]=5,
+ [3988]=5,
+ [3989]=5,
+ [3990]=5,
+ [3991]=5,
+ [3993]=5,
+ [3994]=5,
+ [3995]=5,
+ [3996]=5,
+ [3997]=5,
+ [3998]=5,
+ [3999]=5,
+ [4000]=5,
+ [4001]=5,
+ [4002]=5,
+ [4003]=5,
+ [4004]=5,
+ [4005]=5,
+ [4006]=5,
+ [4007]=5,
+ [4008]=5,
+ [4009]=5,
+ [4010]=5,
+ [4011]=5,
+ [4012]=5,
+ [4013]=5,
+ [4014]=5,
+ [4015]=5,
+ [4016]=5,
+ [4017]=5,
+ [4018]=5,
+ [4019]=5,
+ [4020]=5,
+ [4021]=5,
+ [4022]=5,
+ [4023]=5,
+ [4024]=5,
+ [4025]=5,
+ [4026]=5,
+ [4027]=5,
+ [4028]=5,
+ [4038]=5,
+ [4141]=5,
+ [4142]=5,
+ [4143]=5,
+ [4144]=5,
+ [4146]=5,
+ [4147]=5,
+ [4148]=5,
+ [4149]=5,
+ [4150]=5,
+ [4151]=5,
+ [4153]=5,
+ [4154]=5,
+ [4157]=5,
+ [4158]=5,
+ [4184]=5,
+ [4185]=5,
+ [4190]=5,
+ [4191]=5,
+ [4192]=5,
+ [4209]=5,
+ [4210]=5,
+ [4211]=5,
+ [4212]=5,
+ [4226]=5,
+ [4229]=5,
+ [4230]=5,
+ [4237]=5,
+ [4253]=5,
+ [4957]=5,
+ [4958]=5,
+ [4959]=5,
+ [5906]=5,
+ [5907]=5,
+ [5908]=5,
+ [5938]=5,
+ [5939]=5,
+ [5940]=5,
+ [5970]=5,
+ [5971]=5,
+ [6002]=5,
+ [6003]=5,
+ [6071]=5,
+ [6072]=5,
+ [6073]=5,
+ [6074]=5,
+ [6075]=5,
+ [6076]=5,
+ [6077]=5,
+ [6086]=5,
+ [6089]=5,
+ [6090]=5,
+ [6091]=5,
+ [6092]=5,
+ [6093]=5,
+ [6094]=5,
+ [6095]=5,
+ [6096]=5,
+ [6097]=5,
+ [6098]=5,
+ [6099]=5,
+ [6109]=5,
  [6150]=4,
  [6151]=2,
  [6154]=2,
+ [6155]=5,
+ [6156]=5,
+ [6157]=5,
  [6158]=4,
  [6176]=2,
  [6177]=2,
@@ -5901,8 +6434,6 @@
  [6274]=4,
  [6275]=4,
  [6276]=4,
- [6277]=4,
- [6278]=4,
  [6279]=2,
  [6280]=2,
  [6281]=2,
@@ -5937,13 +6468,291 @@
  [6310]=2,
  [6311]=2,
  [6312]=2,
+ [6313]=5,
  [6314]=2,
+ [6432]=5,
+ [6433]=5,
+ [6434]=5,
+ [6439]=5,
+ [6440]=5,
+ [6450]=5,
+ [6457]=5,
+ [6458]=5,
+ [6459]=5,
+ [6679]=5,
+ [6680]=5,
+ [6742]=5,
+ [6744]=5,
+ [6745]=5,
+ [6746]=5,
+ [6747]=5,
+ [6748]=5,
+ [6749]=5,
+ [6750]=5,
+ [6752]=5,
+ [6754]=5,
+ [6757]=5,
+ [6758]=5,
+ [6759]=5,
+ [6760]=5,
+ [6761]=5,
+ [6762]=5,
+ [6763]=5,
+ [6764]=5,
+ [6771]=5,
+ [6772]=5,
+ [6773]=5,
+ [6774]=5,
+ [6775]=5,
+ [6776]=5,
+ [6777]=5,
+ [6778]=5,
+ [6779]=5,
+ [6780]=5,
+ [6783]=5,
+ [6832]=5,
+ [6833]=5,
+ [6834]=5,
+ [6835]=5,
+ [6836]=5,
+ [6837]=5,
+ [6838]=5,
+ [6839]=5,
+ [6840]=5,
+ [6841]=5,
+ [6842]=5,
+ [6843]=5,
+ [6844]=5,
+ [6845]=5,
+ [6912]=5,
+ [6913]=5,
+ [6914]=5,
+ [6915]=5,
+ [6964]=5,
+ [6966]=5,
+ [6967]=5,
+ [6968]=5,
+ [6969]=5,
+ [6970]=5,
+ [6972]=5,
+ [6978]=5,
+ [7019]=5,
+ [7020]=5,
+ [7021]=5,
+ [7022]=5,
+ [7023]=5,
+ [7024]=5,
+ [7025]=5,
+ [7026]=5,
+ [7027]=5,
+ [7040]=5,
+ [7041]=5,
+ [7074]=5,
+ [7075]=5,
+ [7076]=5,
+ [7077]=5,
+ [7080]=5,
+ [7081]=5,
+ [7083]=5,
+ [7142]=5,
+ [7144]=5,
+ [7145]=5,
+ [7149]=5,
+ [7151]=5,
+ [7152]=5,
+ [7153]=5,
+ [7212]=5,
+ [7213]=5,
+ [7214]=5,
+ [7215]=5,
+ [7216]=5,
+ [7217]=5,
+ [7218]=5,
+ [7219]=5,
+ [7222]=5,
+ [7223]=5,
+ [7376]=5,
+ [7377]=5,
+ [7378]=5,
+ [7380]=5,
+ [7381]=5,
+ [7382]=5,
+ [7383]=5,
+ [7384]=5,
+ [7385]=5,
+ [7386]=5,
+ [7387]=5,
+ [7388]=5,
+ [7389]=5,
+ [7390]=5,
+ [7391]=5,
+ [7392]=5,
+ [7394]=5,
+ [7395]=5,
+ [7396]=5,
+ [7397]=5,
+ [7398]=5,
+ [7399]=5,
+ [7400]=5,
+ [7405]=5,
+ [7412]=5,
+ [7416]=5,
+ [7417]=5,
+ [7616]=5,
+ [7617]=5,
+ [7618]=5,
+ [7619]=5,
+ [7620]=5,
+ [7621]=5,
+ [7622]=5,
+ [7623]=5,
+ [7624]=5,
+ [7625]=5,
+ [7626]=5,
+ [7627]=5,
+ [7628]=5,
+ [7629]=5,
+ [7630]=5,
+ [7631]=5,
+ [7632]=5,
+ [7633]=5,
+ [7634]=5,
+ [7635]=5,
+ [7636]=5,
+ [7637]=5,
+ [7638]=5,
+ [7639]=5,
+ [7640]=5,
+ [7641]=5,
+ [7642]=5,
+ [7643]=5,
+ [7644]=5,
+ [7645]=5,
+ [7646]=5,
+ [7647]=5,
+ [7648]=5,
+ [7649]=5,
+ [7650]=5,
+ [7651]=5,
+ [7652]=5,
+ [7653]=5,
+ [7654]=5,
+ [7655]=5,
+ [7656]=5,
+ [7657]=5,
+ [7658]=5,
+ [7659]=5,
+ [7660]=5,
+ [7661]=5,
+ [7662]=5,
+ [7663]=5,
+ [7664]=5,
+ [7665]=5,
+ [7666]=5,
+ [7667]=5,
+ [7668]=5,
+ [7669]=5,
+ [7675]=5,
+ [7676]=5,
+ [7677]=5,
+ [7678]=5,
+ [7679]=5,
  [8204]=4,
  [8205]=2,
+ [8239]=4,
  [8294]=4,
  [8295]=4,
  [8296]=4,
  [8297]=4,
+ [8400]=5,
+ [8401]=5,
+ [8402]=5,
+ [8403]=5,
+ [8404]=5,
+ [8405]=5,
+ [8406]=5,
+ [8407]=5,
+ [8408]=5,
+ [8409]=5,
+ [8410]=5,
+ [8411]=5,
+ [8412]=5,
+ [8417]=5,
+ [8421]=5,
+ [8422]=5,
+ [8423]=5,
+ [8424]=5,
+ [8425]=5,
+ [8426]=5,
+ [8427]=5,
+ [8428]=5,
+ [8429]=5,
+ [8430]=5,
+ [8431]=5,
+ [8432]=5,
+ [11503]=5,
+ [11504]=5,
+ [11505]=5,
+ [11647]=5,
+ [11744]=5,
+ [11745]=5,
+ [11746]=5,
+ [11747]=5,
+ [11748]=5,
+ [11749]=5,
+ [11750]=5,
+ [11751]=5,
+ [11752]=5,
+ [11753]=5,
+ [11754]=5,
+ [11755]=5,
+ [11756]=5,
+ [11757]=5,
+ [11758]=5,
+ [11759]=5,
+ [11760]=5,
+ [11761]=5,
+ [11762]=5,
+ [11763]=5,
+ [11764]=5,
+ [11765]=5,
+ [11766]=5,
+ [11767]=5,
+ [11768]=5,
+ [11769]=5,
+ [11770]=5,
+ [11771]=5,
+ [11772]=5,
+ [11773]=5,
+ [11774]=5,
+ [11775]=5,
+ [12330]=5,
+ [12331]=5,
+ [12332]=5,
+ [12333]=5,
+ [12334]=5,
+ [12335]=5,
+ [12441]=5,
+ [12442]=5,
+ [42607]=5,
+ [42612]=5,
+ [42613]=5,
+ [42614]=5,
+ [42615]=5,
+ [42616]=5,
+ [42617]=5,
+ [42618]=5,
+ [42619]=5,
+ [42620]=5,
+ [42621]=5,
+ [42654]=5,
+ [42655]=5,
+ [42736]=5,
+ [42737]=5,
+ [43014]=5,
+ [43019]=5,
+ [43045]=5,
+ [43046]=5,
  [43072]=2,
  [43073]=2,
  [43074]=2,
@@ -5996,6 +6805,120 @@
  [43121]=2,
  [43122]=1,
  [43123]=4,
+ [43204]=5,
+ [43205]=5,
+ [43232]=5,
+ [43233]=5,
+ [43234]=5,
+ [43235]=5,
+ [43236]=5,
+ [43237]=5,
+ [43238]=5,
+ [43239]=5,
+ [43240]=5,
+ [43241]=5,
+ [43242]=5,
+ [43243]=5,
+ [43244]=5,
+ [43245]=5,
+ [43246]=5,
+ [43247]=5,
+ [43248]=5,
+ [43249]=5,
+ [43302]=5,
+ [43303]=5,
+ [43304]=5,
+ [43305]=5,
+ [43306]=5,
+ [43307]=5,
+ [43308]=5,
+ [43309]=5,
+ [43335]=5,
+ [43336]=5,
+ [43337]=5,
+ [43338]=5,
+ [43339]=5,
+ [43340]=5,
+ [43341]=5,
+ [43342]=5,
+ [43343]=5,
+ [43344]=5,
+ [43345]=5,
+ [43392]=5,
+ [43393]=5,
+ [43394]=5,
+ [43443]=5,
+ [43446]=5,
+ [43447]=5,
+ [43448]=5,
+ [43449]=5,
+ [43452]=5,
+ [43493]=5,
+ [43561]=5,
+ [43562]=5,
+ [43563]=5,
+ [43564]=5,
+ [43565]=5,
+ [43566]=5,
+ [43569]=5,
+ [43570]=5,
+ [43573]=5,
+ [43574]=5,
+ [43587]=5,
+ [43596]=5,
+ [43644]=5,
+ [43696]=5,
+ [43698]=5,
+ [43699]=5,
+ [43700]=5,
+ [43703]=5,
+ [43704]=5,
+ [43710]=5,
+ [43711]=5,
+ [43713]=5,
+ [43756]=5,
+ [43757]=5,
+ [43766]=5,
+ [44005]=5,
+ [44008]=5,
+ [44013]=5,
+ [64286]=5,
+ [65056]=5,
+ [65057]=5,
+ [65058]=5,
+ [65059]=5,
+ [65060]=5,
+ [65061]=5,
+ [65062]=5,
+ [65063]=5,
+ [65064]=5,
+ [65065]=5,
+ [65066]=5,
+ [65067]=5,
+ [65068]=5,
+ [65069]=5,
+ [65070]=5,
+ [65071]=5,
+ [66045]=5,
+ [66272]=5,
+ [66422]=5,
+ [66423]=5,
+ [66424]=5,
+ [66425]=5,
+ [66426]=5,
+ [68097]=5,
+ [68098]=5,
+ [68099]=5,
+ [68101]=5,
+ [68102]=5,
+ [68108]=5,
+ [68109]=5,
+ [68110]=5,
+ [68111]=5,
+ [68152]=5,
+ [68153]=5,
+ [68154]=5,
+ [68159]=5,
  [68288]=2,
  [68289]=2,
  [68290]=2,
@@ -6033,6 +6956,8 @@
  [68322]=4,
  [68323]=4,
  [68324]=3,
+ [68325]=5,
+ [68326]=5,
  [68331]=2,
  [68332]=2,
  [68333]=2,
@@ -6063,6 +6988,497 @@
  [68525]=2,
  [68526]=2,
  [68527]=4,
+ [69633]=5,
+ [69688]=5,
+ [69689]=5,
+ [69690]=5,
+ [69691]=5,
+ [69692]=5,
+ [69693]=5,
+ [69694]=5,
+ [69695]=5,
+ [69696]=5,
+ [69697]=5,
+ [69698]=5,
+ [69699]=5,
+ [69700]=5,
+ [69701]=5,
+ [69702]=5,
+ [69759]=5,
+ [69760]=5,
+ [69761]=5,
+ [69811]=5,
+ [69812]=5,
+ [69813]=5,
+ [69814]=5,
+ [69817]=5,
+ [69818]=5,
+ [69888]=5,
+ [69889]=5,
+ [69890]=5,
+ [69927]=5,
+ [69928]=5,
+ [69929]=5,
+ [69930]=5,
+ [69931]=5,
+ [69933]=5,
+ [69934]=5,
+ [69935]=5,
+ [69936]=5,
+ [69937]=5,
+ [69938]=5,
+ [69939]=5,
+ [69940]=5,
+ [70003]=5,
+ [70016]=5,
+ [70017]=5,
+ [70070]=5,
+ [70071]=5,
+ [70072]=5,
+ [70073]=5,
+ [70074]=5,
+ [70075]=5,
+ [70076]=5,
+ [70077]=5,
+ [70078]=5,
+ [70090]=5,
+ [70091]=5,
+ [70092]=5,
+ [70191]=5,
+ [70192]=5,
+ [70193]=5,
+ [70196]=5,
+ [70198]=5,
+ [70199]=5,
+ [70206]=5,
+ [70367]=5,
+ [70371]=5,
+ [70372]=5,
+ [70373]=5,
+ [70374]=5,
+ [70375]=5,
+ [70376]=5,
+ [70377]=5,
+ [70378]=5,
+ [70400]=5,
+ [70401]=5,
+ [70460]=5,
+ [70464]=5,
+ [70502]=5,
+ [70503]=5,
+ [70504]=5,
+ [70505]=5,
+ [70506]=5,
+ [70507]=5,
+ [70508]=5,
+ [70512]=5,
+ [70513]=5,
+ [70514]=5,
+ [70515]=5,
+ [70516]=5,
+ [70712]=5,
+ [70713]=5,
+ [70714]=5,
+ [70715]=5,
+ [70716]=5,
+ [70717]=5,
+ [70718]=5,
+ [70719]=5,
+ [70722]=5,
+ [70723]=5,
+ [70724]=5,
+ [70726]=5,
+ [70835]=5,
+ [70836]=5,
+ [70837]=5,
+ [70838]=5,
+ [70839]=5,
+ [70840]=5,
+ [70842]=5,
+ [70847]=5,
+ [70848]=5,
+ [70850]=5,
+ [70851]=5,
+ [71090]=5,
+ [71091]=5,
+ [71092]=5,
+ [71093]=5,
+ [71100]=5,
+ [71101]=5,
+ [71103]=5,
+ [71104]=5,
+ [71132]=5,
+ [71133]=5,
+ [71219]=5,
+ [71220]=5,
+ [71221]=5,
+ [71222]=5,
+ [71223]=5,
+ [71224]=5,
+ [71225]=5,
+ [71226]=5,
+ [71229]=5,
+ [71231]=5,
+ [71232]=5,
+ [71339]=5,
+ [71341]=5,
+ [71344]=5,
+ [71345]=5,
+ [71346]=5,
+ [71347]=5,
+ [71348]=5,
+ [71349]=5,
+ [71351]=5,
+ [71453]=5,
+ [71454]=5,
+ [71455]=5,
+ [71458]=5,
+ [71459]=5,
+ [71460]=5,
+ [71461]=5,
+ [71463]=5,
+ [71464]=5,
+ [71465]=5,
+ [71466]=5,
+ [71467]=5,
+ [72752]=5,
+ [72753]=5,
+ [72754]=5,
+ [72755]=5,
+ [72756]=5,
+ [72757]=5,
+ [72758]=5,
+ [72760]=5,
+ [72761]=5,
+ [72762]=5,
+ [72763]=5,
+ [72764]=5,
+ [72765]=5,
+ [72767]=5,
+ [72850]=5,
+ [72851]=5,
+ [72852]=5,
+ [72853]=5,
+ [72854]=5,
+ [72855]=5,
+ [72856]=5,
+ [72857]=5,
+ [72858]=5,
+ [72859]=5,
+ [72860]=5,
+ [72861]=5,
+ [72862]=5,
+ [72863]=5,
+ [72864]=5,
+ [72865]=5,
+ [72866]=5,
+ [72867]=5,
+ [72868]=5,
+ [72869]=5,
+ [72870]=5,
+ [72871]=5,
+ [72874]=5,
+ [72875]=5,
+ [72876]=5,
+ [72877]=5,
+ [72878]=5,
+ [72879]=5,
+ [72880]=5,
+ [72882]=5,
+ [72883]=5,
+ [72885]=5,
+ [72886]=5,
+ [92912]=5,
+ [92913]=5,
+ [92914]=5,
+ [92915]=5,
+ [92916]=5,
+ [92976]=5,
+ [92977]=5,
+ [92978]=5,
+ [92979]=5,
+ [92980]=5,
+ [92981]=5,
+ [92982]=5,
+ [94095]=5,
+ [94096]=5,
+ [94097]=5,
+ [94098]=5,
+ [113821]=5,
+ [113822]=5,
+ [119143]=5,
+ [119144]=5,
+ [119145]=5,
+ [119163]=5,
+ [119164]=5,
+ [119165]=5,
+ [119166]=5,
+ [119167]=5,
+ [119168]=5,
+ [119169]=5,
+ [119170]=5,
+ [119173]=5,
+ [119174]=5,
+ [119175]=5,
+ [119176]=5,
+ [119177]=5,
+ [119178]=5,
+ [119179]=5,
+ [119210]=5,
+ [119211]=5,
+ [119212]=5,
+ [119213]=5,
+ [119362]=5,
+ [119363]=5,
+ [119364]=5,
+ [121344]=5,
+ [121345]=5,
+ [121346]=5,
+ [121347]=5,
+ [121348]=5,
+ [121349]=5,
+ [121350]=5,
+ [121351]=5,
+ [121352]=5,
+ [121353]=5,
+ [121354]=5,
+ [121355]=5,
+ [121356]=5,
+ [121357]=5,
+ [121358]=5,
+ [121359]=5,
+ [121360]=5,
+ [121361]=5,
+ [121362]=5,
+ [121363]=5,
+ [121364]=5,
+ [121365]=5,
+ [121366]=5,
+ [121367]=5,
+ [121368]=5,
+ [121369]=5,
+ [121370]=5,
+ [121371]=5,
+ [121372]=5,
+ [121373]=5,
+ [121374]=5,
+ [121375]=5,
+ [121376]=5,
+ [121377]=5,
+ [121378]=5,
+ [121379]=5,
+ [121380]=5,
+ [121381]=5,
+ [121382]=5,
+ [121383]=5,
+ [121384]=5,
+ [121385]=5,
+ [121386]=5,
+ [121387]=5,
+ [121388]=5,
+ [121389]=5,
+ [121390]=5,
+ [121391]=5,
+ [121392]=5,
+ [121393]=5,
+ [121394]=5,
+ [121395]=5,
+ [121396]=5,
+ [121397]=5,
+ [121398]=5,
+ [121403]=5,
+ [121404]=5,
+ [121405]=5,
+ [121406]=5,
+ [121407]=5,
+ [121408]=5,
+ [121409]=5,
+ [121410]=5,
+ [121411]=5,
+ [121412]=5,
+ [121413]=5,
+ [121414]=5,
+ [121415]=5,
+ [121416]=5,
+ [121417]=5,
+ [121418]=5,
+ [121419]=5,
+ [121420]=5,
+ [121421]=5,
+ [121422]=5,
+ [121423]=5,
+ [121424]=5,
+ [121425]=5,
+ [121426]=5,
+ [121427]=5,
+ [121428]=5,
+ [121429]=5,
+ [121430]=5,
+ [121431]=5,
+ [121432]=5,
+ [121433]=5,
+ [121434]=5,
+ [121435]=5,
+ [121436]=5,
+ [121437]=5,
+ [121438]=5,
+ [121439]=5,
+ [121440]=5,
+ [121441]=5,
+ [121442]=5,
+ [121443]=5,
+ [121444]=5,
+ [121445]=5,
+ [121446]=5,
+ [121447]=5,
+ [121448]=5,
+ [121449]=5,
+ [121450]=5,
+ [121451]=5,
+ [121452]=5,
+ [121461]=5,
+ [121476]=5,
+ [121499]=5,
+ [121500]=5,
+ [121501]=5,
+ [121502]=5,
+ [121503]=5,
+ [121505]=5,
+ [121506]=5,
+ [121507]=5,
+ [121508]=5,
+ [121509]=5,
+ [121510]=5,
+ [121511]=5,
+ [121512]=5,
+ [121513]=5,
+ [121514]=5,
+ [121515]=5,
+ [121516]=5,
+ [121517]=5,
+ [121518]=5,
+ [121519]=5,
+ [122880]=5,
+ [122881]=5,
+ [122882]=5,
+ [122883]=5,
+ [122884]=5,
+ [122885]=5,
+ [122886]=5,
+ [122888]=5,
+ [122889]=5,
+ [122890]=5,
+ [122891]=5,
+ [122892]=5,
+ [122893]=5,
+ [122894]=5,
+ [122895]=5,
+ [122896]=5,
+ [122897]=5,
+ [122898]=5,
+ [122899]=5,
+ [122900]=5,
+ [122901]=5,
+ [122902]=5,
+ [122903]=5,
+ [122904]=5,
+ [122907]=5,
+ [122908]=5,
+ [122909]=5,
+ [122910]=5,
+ [122911]=5,
+ [122912]=5,
+ [122913]=5,
+ [122915]=5,
+ [122916]=5,
+ [122918]=5,
+ [122919]=5,
+ [122920]=5,
+ [122921]=5,
+ [122922]=5,
+ [125136]=5,
+ [125137]=5,
+ [125138]=5,
+ [125139]=5,
+ [125140]=5,
+ [125141]=5,
+ [125142]=5,
+ [125184]=2,
+ [125185]=2,
+ [125186]=2,
+ [125187]=2,
+ [125188]=2,
+ [125189]=2,
+ [125190]=2,
+ [125191]=2,
+ [125192]=2,
+ [125193]=2,
+ [125194]=2,
+ [125195]=2,
+ [125196]=2,
+ [125197]=2,
+ [125198]=2,
+ [125199]=2,
+ [125200]=2,
+ [125201]=2,
+ [125202]=2,
+ [125203]=2,
+ [125204]=2,
+ [125205]=2,
+ [125206]=2,
+ [125207]=2,
+ [125208]=2,
+ [125209]=2,
+ [125210]=2,
+ [125211]=2,
+ [125212]=2,
+ [125213]=2,
+ [125214]=2,
+ [125215]=2,
+ [125216]=2,
+ [125217]=2,
+ [125218]=2,
+ [125219]=2,
+ [125220]=2,
+ [125221]=2,
+ [125222]=2,
+ [125223]=2,
+ [125224]=2,
+ [125225]=2,
+ [125226]=2,
+ [125227]=2,
+ [125228]=2,
+ [125229]=2,
+ [125230]=2,
+ [125231]=2,
+ [125232]=2,
+ [125233]=2,
+ [125234]=2,
+ [125235]=2,
+ [125236]=2,
+ [125237]=2,
+ [125238]=2,
+ [125239]=2,
+ [125240]=2,
+ [125241]=2,
+ [125242]=2,
+ [125243]=2,
+ [125244]=2,
+ [125245]=2,
+ [125246]=2,
+ [125247]=2,
+ [125248]=2,
+ [125249]=2,
+ [125250]=2,
+ [125251]=2,
+ [125252]=5,
+ [125253]=5,
+ [125254]=5,
+ [125255]=5,
+ [125256]=5,
+ [125257]=5,
+ [125258]=5,
+ [1042752]=5,
 }
 
 end -- closure
@@ -7548,7 +8964,7 @@
 local trace_loading=false trackers.register("fonts.loading",function(v) trace_loading=v end)
 local trace_mapping=false trackers.register("fonts.mapping",function(v) trace_mapping=v end)
 local report_fonts=logs.reporter("fonts","loading")
-local force_ligatures=true directives.register("fonts.mapping.forceligatures",function(v) force_ligatures=v end)
+local force_ligatures=false directives.register("fonts.mapping.forceligatures",function(v) force_ligatures=v end)
 local fonts=fonts or {}
 local mappings=fonts.mappings or {}
 fonts.mappings=mappings
@@ -7662,7 +9078,7 @@
   end
   mappings.overloads=o
 end
-function mappings.addtounicode(data,filename,checklookups)
+function mappings.addtounicode(data,filename,checklookups,forceligatures)
   local resources=data.resources
   local unicodes=resources.unicodes
   if not unicodes then
@@ -7851,22 +9267,26 @@
     end
   end
   if not collected then
-  elseif force_ligatures then
+  elseif forceligatures or force_ligatures then
     for i=1,#dlist do
       local du=dlist[i]
-      local u=collected[du] 
-      if u then
-        resolve(descriptions[du],u)
+      if du>=private or (du>=0xE000 and du<=0xF8FF) then
+        local u=collected[du] 
+        if u then
+          resolve(descriptions[du],u)
+        end
       end
     end
   else
     for i=1,#dlist do
       local du=dlist[i]
-      local glyph=descriptions[du]
-      if glyph.class=="ligature" and not glyph.unicode then
-        local u=collected[du] 
-        if u then
-           resolve(glyph,u)
+      if du>=private or (du>=0xE000 and du<=0xF8FF) then
+        local glyph=descriptions[du]
+        if glyph.class=="ligature" and not glyph.unicode then
+          local u=collected[du] 
+          if u then
+             resolve(glyph,u)
+          end
         end
       end
     end
@@ -11857,8 +13277,10 @@
   local points=shape.points
   if points then
     local nofpoints=#points
-    local h=nofpoints+1
-    local width=dowidth and glyph.width 
+    local h=nofpoints+2 
+    local l=nofpoints+1
+    local dw=0
+    local dl=0
     for i=1,#deltas do
       local deltaset=deltas[i]
       local xvalues=deltaset.xvalues
@@ -11883,10 +13305,17 @@
                 p[2]=p[2]+factor*y
               end
             end
-          elseif width then 
-            local x=xvalues[d+1]
-            if x then
-              width=width+factor*x
+          elseif dowidth then
+            if d==h then
+              local x=xvalues[i]
+              if x then
+                dw=dw+factor*x
+              end
+            elseif d==l then
+              local x=xvalues[i]
+              if x then
+                dl=dl+factor*x
+              end
             end
           end
         end
@@ -11906,16 +13335,21 @@
             end
           end
         end
-        if width then
+        if dowidth then
           local x=xvalues[h]
           if x then
-            width=width+factor*x
+            dw=dw+factor*x
           end
+          local x=xvalues[l]
+          if x then
+            dl=dl+factor*x
+          end
         end
       end
     end
-    if width then
-      glyph.width=width
+    if dowidth then
+      local width=glyph.width or 0
+      glyph.width=width+dw-dl
     end
   else
     report("no points for glyph %a",glyph.name)
@@ -12668,7 +14102,7 @@
     local data={}
     local tuples={}
     local glyphdata=fontdata.glyphs
-    local dowidth=fontdata.variabledata.hvarwidths
+    local dowidth=not fontdata.variabledata.hvarwidths
     if bittest(flags,0x0001) then
       for i=1,nofglyphs+1 do
         data[i]=dataoffset+readulong(f)
@@ -20191,6 +21625,10 @@
     end
   end
 end
+local getspaceboth=getboth
+function injections.installgetspaceboth(gb)
+  getspaceboth=gb or getboth
+end
 local function injectspaces(head)
   if not triggers then
     return head,false
@@ -20211,9 +21649,9 @@
     factor=getthreshold(font)
   end
   for n in traverse_id(glue_code,tonut(head)) do
-    local prev,next=getboth(n)
-    local prevchar=ischar(prev)
-    local nextchar=ischar(next)
+    local prev,next=getspaceboth(n)
+    local prevchar=prev and ischar(prev)
+    local nextchar=next and ischar(next)
     if nextchar then
       local font=getfont(next)
       local trig=triggers[font]
@@ -24021,9 +25459,9 @@
                     if type(kern)~="table" then
                       left[k]=kern
                     elseif single then
-                      left[k]=v[3]
+                      left[k]=kern[3]
                     else
-                      local one=v[1]
+                      local one=kern[1]
                       if one then
                         left[k]=one[3]
                       end
@@ -26079,7 +27517,7 @@
   local tounicode=fonts.mappings.tounicode16
   function otf.getactualtext(s)
     return
-      "/Span << /ActualText <feff"..n.."> >> BDC",
+      "/Span << /ActualText <feff"..s.."> >> BDC",
       "EMC"
   end
 end

Modified: trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-math.tex
===================================================================
--- trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-math.tex	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/texmf-dist/tex/generic/context/luatex/luatex-math.tex	2017-05-19 22:21:26 UTC (rev 44436)
@@ -13,6 +13,9 @@
 %D approach (and thereby far from the \CONTEXT\ way). This file is mainly meant for
 %D Boguslaw Jackowski.
 
+%D In the perspective of the TUG Lucida Opentype project Bruno Voisin checked the code
+%D and definitions below and suggested some improvements.
+
 % we provide a remap feature
 
 \ifdefined\directlua
@@ -42,6 +45,10 @@
    \font\tenbf   = file:lmroman10-bold.otf:+liga;+kern;+tlig;+trep         at 10pt
    \font\tenbi   = file:lmroman10-bolditalic.otf:+liga;+kern;+tlig;+trep   at 10pt
    %
+   \font\tenos   = file:lmroman10-regular.otf:+onum;+liga;+kern;+tlig;+trep at 10pt
+   \font\sevenos = file:lmroman7-regular.otf:+onum;+liga;+kern;+tlig;+trep  at  7pt
+   \font\fiveos  = file:lmroman5-regular.otf:+onum;+liga;+kern;+tlig;+trep  at  5pt
+   %
    \font\mathfonttextupright         = file:latinmodern-math.otf:script=math;ssty=0;mathsize=yes at 10pt
    \font\mathfontscriptupright       = file:latinmodern-math.otf:script=math;ssty=1;mathsize=yes at  7pt
    \font\mathfontscriptscriptupright = file:latinmodern-math.otf:script=math;ssty=2;mathsize=yes at  5pt
@@ -50,6 +57,10 @@
    \scriptfont       0 = \mathfontscriptupright
    \scriptscriptfont 0 = \mathfontscriptscriptupright
    %
+   \textfont         1 = \tenos
+   \scriptfont       1 = \sevenos
+   \scriptscriptfont 1 = \fiveos
+   %
    \tenrm}
 
 \def\lucidabright
@@ -57,12 +68,16 @@
    \font\sevenrm = file:lucidabrightot.otf:+liga;+kern;+tlig;+trep at  7pt
    \font\fiverm  = file:lucidabrightot.otf:+liga;+kern;+tlig;+trep at  5pt
    %
-   \font\tentt   = file:lucidasanstypewriterot.otf                            at 10pt
-   \font\tensl   = file:lucidabrightot.otf:slant=0.2;+liga;+kern;+tlig;+trep  at 10pt
-   \font\tenit   = file:lucidabrightot-italic.otf:+liga;+kern;+tlig;+trep     at 10pt
-   \font\tenbf   = file:lucidabrightot-demi.otf:+liga;+kern;+tlig;+trep       at 10pt
-   \font\tenbi   = file:lucidabrightot-demiitalic.otf:+liga;+kern;+tlig;+trep at 10pt
+   \font\tentt   = file:lucidasanstypewriterot.otf                             at 10pt
+   \font\tensl   = file:lucidabrightot.otf:slant=0.167;+liga;+kern;+tlig;+trep at 10pt
+   \font\tenit   = file:lucidabrightot-italic.otf:+liga;+kern;+tlig;+trep      at 10pt
+   \font\tenbf   = file:lucidabrightot-demi.otf:+liga;+kern;+tlig;+trep        at 10pt
+   \font\tenbi   = file:lucidabrightot-demiitalic.otf:+liga;+kern;+tlig;+trep  at 10pt
    %
+   \font\tenos   = file:lucidabrightot.otf:+onum;+liga;+kern;+tlig;+trep at 10pt
+   \font\sevenos = file:lucidabrightot.otf:+onum;+liga;+kern;+tlig;+trep at  7pt
+   \font\fiveos  = file:lucidabrightot.otf:+onum;+liga;+kern;+tlig;+trep at  5pt
+   %
    \font\mathfonttextupright         = file:lucidabrightmathot.otf:script=math;ssty=0;mathsize=yes at 10pt
    \font\mathfontscriptupright       = file:lucidabrightmathot.otf:script=math;ssty=1;mathsize=yes at  7pt
    \font\mathfontscriptscriptupright = file:lucidabrightmathot.otf:script=math;ssty=2;mathsize=yes at  5pt
@@ -71,6 +86,10 @@
    \scriptfont       0 = \mathfontscriptupright
    \scriptscriptfont 0 = \mathfontscriptscriptupright
    %
+   \textfont         1 = \tenos
+   \scriptfont       1 = \sevenos
+   \scriptscriptfont 1 = \fiveos
+   %
    \tenrm}
 
 \ifdefined\directlua
@@ -84,7 +103,6 @@
 \fi
 
 \newtoks\everymathrm
-\newtoks\everymathmit
 \newtoks\everymathcal
 \newtoks\everymathit
 \newtoks\everymathsl
@@ -92,6 +110,8 @@
 \newtoks\everymathbi
 \newtoks\everymathtt
 
+% the following commands switch text as well as math
+
 \def\rm{\fam0\relax\the\everymathrm\relax\tenrm\relax}
 \def\it{\fam0\relax\the\everymathit\relax\tenit\relax}
 \def\sl{\fam0\relax\the\everymathsl\relax\tensl\relax}
@@ -99,13 +119,10 @@
 \def\bi{\fam0\relax\the\everymathbi\relax\tenbi\relax}
 \def\tt{\fam0\relax\the\everymathtt\relax\tentt\relax}
 
-\let\mit     \relax % use names or \Uchar or define a vector
-\let\cal     \relax % idem, i'm not in the mood for this now
-\let\oldstyle\relax % no longer misuse of math mode
-
 % tex is fast enough for this kind of assignments:
 
 \everymathrm {%
+    % codes
     \Umathcode"0041="0"0"0041%
     \Umathcode"0042="0"0"0042%
     \Umathcode"0043="0"0"0043%
@@ -216,18 +233,69 @@
     \Umathcode"03F5="0"0"03F5%
     \Umathcode"2202="0"0"2202%
     \Umathcode"2207="0"0"2207%
+    % commands
+    \Umathchardef\Alpha     "0"0"000391%
+    \Umathchardef\Beta      "0"0"000392%
+    \Umathchardef\Gamma     "0"0"000393%
+    \Umathchardef\Delta     "0"0"000394%
+    \Umathchardef\Epsilon   "0"0"000395%
+    \Umathchardef\Zeta      "0"0"000396%
+    \Umathchardef\Eta       "0"0"000397%
+    \Umathchardef\Theta     "0"0"000398%
+    \Umathchardef\Iota      "0"0"000399%
+    \Umathchardef\Kappa     "0"0"00039A%
+    \Umathchardef\Lambda    "0"0"00039B%
+    \Umathchardef\Mu        "0"0"00039C%
+    \Umathchardef\Nu        "0"0"00039D%
+    \Umathchardef\Xi        "0"0"00039E%
+    \Umathchardef\Omicron   "0"0"00039F%
+    \Umathchardef\Pi        "0"0"0003A0%
+    \Umathchardef\Rho       "0"0"0003A1%
+    \Umathchardef\Sigma     "0"0"0003A3%
+    \Umathchardef\Tau       "0"0"0003A4%
+    \Umathchardef\Upsilon   "0"0"0003A5%
+    \Umathchardef\Phi       "0"0"0003A6%
+    \Umathchardef\Chi       "0"0"0003A7%
+    \Umathchardef\Psi       "0"0"0003A8%
+    \Umathchardef\Omega     "0"0"0003A9%
+    \Umathchardef\alpha     "0"0"0003B1%
+    \Umathchardef\beta      "0"0"0003B2%
+    \Umathchardef\gamma     "0"0"0003B3%
+    \Umathchardef\delta     "0"0"0003B4%
+    \Umathchardef\varepsilon"0"0"0003B5%
+    \Umathchardef\zeta      "0"0"0003B6%
+    \Umathchardef\eta       "0"0"0003B7%
+    \Umathchardef\theta     "0"0"0003B8%
+    \Umathchardef\iota      "0"0"0003B9%
+    \Umathchardef\kappa     "0"0"0003BA%
+    \Umathchardef\lambda    "0"0"0003BB%
+    \Umathchardef\mu        "0"0"0003BC%
+    \Umathchardef\nu        "0"0"0003BD%
+    \Umathchardef\xi        "0"0"0003BE%
+    \Umathchardef\omicron   "0"0"0003BF%
+    \Umathchardef\pi        "0"0"0003C0%
+    \Umathchardef\rho       "0"0"0003C1%
+    \Umathchardef\varsigma  "0"0"0003C2%
+    \Umathchardef\sigma     "0"0"0003C3%
+    \Umathchardef\tau       "0"0"0003C4%
+    \Umathchardef\upsilon   "0"0"0003C5%
+    \Umathchardef\varphi    "0"0"0003C6%
+    \Umathchardef\chi       "0"0"0003C7%
+    \Umathchardef\psi       "0"0"0003C8%
+    \Umathchardef\omega     "0"0"0003C9%
+    \Umathchardef\vartheta  "0"0"0003D1%
+    \Umathchardef\phi       "0"0"0003D5%
+    \Umathchardef\varpi     "0"0"0003D6%
+    \Umathchardef\varkappa  "0"0"0003F0%
+    \Umathchardef\varrho    "0"0"0003F1%
+    \Umathchardef\epsilon   "0"0"0003F5%
+    \Umathchardef\varTheta  "0"0"0003F4%
+    \Umathchardef\digamma   "0"0"0003DC%
     \relax
 }
 
-\everymathmit {%
-    % not done
-}
-
-\everymathcal {%
-    % not done
-}
-
 \everymathit {%
+    % codes
     \Umathcode"0041="0"0"1D434%
     \Umathcode"0042="0"0"1D435%
     \Umathcode"0043="0"0"1D436%
@@ -338,6 +406,64 @@
     \Umathcode"03F5="0"0"1D716%
     \Umathcode"2202="0"0"1D715%
     \Umathcode"2207="0"0"1D6FB%
+    % commands
+    \Umathchardef\Alpha     "0"0"01D6E2%
+    \Umathchardef\Beta      "0"0"01D6E3%
+    \Umathchardef\Gamma     "0"0"01D6E4%
+    \Umathchardef\Delta     "0"0"01D6E5%
+    \Umathchardef\Epsilon   "0"0"01D6E6%
+    \Umathchardef\Zeta      "0"0"01D6E7%
+    \Umathchardef\Eta       "0"0"01D6E8%
+    \Umathchardef\Theta     "0"0"01D6E9%
+    \Umathchardef\Iota      "0"0"01D6EA%
+    \Umathchardef\Kappa     "0"0"01D6EB%
+    \Umathchardef\Lambda    "0"0"01D6EC%
+    \Umathchardef\Mu        "0"0"01D6ED%
+    \Umathchardef\Nu        "0"0"01D6EE%
+    \Umathchardef\Xi        "0"0"01D6EF%
+    \Umathchardef\Omicron   "0"0"01D6F0%
+    \Umathchardef\Pi        "0"0"01D6F1%
+    \Umathchardef\Rho       "0"0"01D6F2%
+    \Umathchardef\Sigma     "0"0"01D6F4%
+    \Umathchardef\Tau       "0"0"01D6F5%
+    \Umathchardef\Upsilon   "0"0"01D6F6%
+    \Umathchardef\Phi       "0"0"01D6F7%
+    \Umathchardef\Chi       "0"0"01D6F8%
+    \Umathchardef\Psi       "0"0"01D6F9%
+    \Umathchardef\Omega     "0"0"01D6FA%
+    \Umathchardef\alpha     "0"0"01D6FC%
+    \Umathchardef\beta      "0"0"01D6FD%
+    \Umathchardef\gamma     "0"0"01D6FE%
+    \Umathchardef\delta     "0"0"01D6FF%
+    \Umathchardef\varepsilon"0"0"01D700%
+    \Umathchardef\zeta      "0"0"01D701%
+    \Umathchardef\eta       "0"0"01D702%
+    \Umathchardef\theta     "0"0"01D703%
+    \Umathchardef\iota      "0"0"01D704%
+    \Umathchardef\kappa     "0"0"01D705%
+    \Umathchardef\lambda    "0"0"01D706%
+    \Umathchardef\mu        "0"0"01D707%
+    \Umathchardef\nu        "0"0"01D708%
+    \Umathchardef\xi        "0"0"01D709%
+    \Umathchardef\omicron   "0"0"01D70A%
+    \Umathchardef\pi        "0"0"01D70B%
+    \Umathchardef\rho       "0"0"01D70C%
+    \Umathchardef\varsigma  "0"0"01D70D%
+    \Umathchardef\sigma     "0"0"01D70E%
+    \Umathchardef\tau       "0"0"01D70F%
+    \Umathchardef\upsilon   "0"0"01D710%
+    \Umathchardef\varphi    "0"0"01D711%
+    \Umathchardef\chi       "0"0"01D712%
+    \Umathchardef\psi       "0"0"01D713%
+    \Umathchardef\omega     "0"0"01D714%
+    \Umathchardef\epsilon   "0"0"01D716%
+    \Umathchardef\vartheta  "0"0"01D717%
+    \Umathchardef\varkappa  "0"0"01D718%
+    \Umathchardef\phi       "0"0"01D719%
+    \Umathchardef\varrho    "0"0"01D71A%
+    \Umathchardef\varpi     "0"0"01D71B%
+    \Umathchardef\varTheta  "0"0"01D6F3%
+    \Umathchardef\digamma   "0"0"0003DC%
     \relax
 }
 
@@ -346,6 +472,7 @@
 }
 
 \everymathbf {%
+    % codes
     \Umathcode"0030="0"0"1D7CE%
     \Umathcode"0031="0"0"1D7CF%
     \Umathcode"0032="0"0"1D7D0%
@@ -466,10 +593,69 @@
     \Umathcode"03F5="0"0"1D6DC%
     \Umathcode"2202="0"0"1D6DB%
     \Umathcode"2207="0"0"1D6C1%
+    % commands
+    \Umathchardef\Alpha     "0"0"01D6A8%
+    \Umathchardef\Beta      "0"0"01D6A9%
+    \Umathchardef\Gamma     "0"0"01D6AA%
+    \Umathchardef\Delta     "0"0"01D6AB%
+    \Umathchardef\Epsilon   "0"0"01D6AC%
+    \Umathchardef\Zeta      "0"0"01D6AD%
+    \Umathchardef\Eta       "0"0"01D6AE%
+    \Umathchardef\Theta     "0"0"01D6AF%
+    \Umathchardef\Iota      "0"0"01D6B0%
+    \Umathchardef\Kappa     "0"0"01D6B1%
+    \Umathchardef\Lambda    "0"0"01D6B2%
+    \Umathchardef\Mu        "0"0"01D6B3%
+    \Umathchardef\Nu        "0"0"01D6B4%
+    \Umathchardef\Xi        "0"0"01D6B5%
+    \Umathchardef\Omicron   "0"0"01D6B6%
+    \Umathchardef\Pi        "0"0"01D6B7%
+    \Umathchardef\Rho       "0"0"01D6B8%
+    \Umathchardef\Sigma     "0"0"01D6BA%
+    \Umathchardef\Tau       "0"0"01D6BB%
+    \Umathchardef\Upsilon   "0"0"01D6BC%
+    \Umathchardef\Phi       "0"0"01D6BD%
+    \Umathchardef\Chi       "0"0"01D6BE%
+    \Umathchardef\Psi       "0"0"01D6BF%
+    \Umathchardef\Omega     "0"0"01D6C0%
+    \Umathchardef\alpha     "0"0"01D6C2%
+    \Umathchardef\beta      "0"0"01D6C3%
+    \Umathchardef\gamma     "0"0"01D6C4%
+    \Umathchardef\delta     "0"0"01D6C5%
+    \Umathchardef\varepsilon"0"0"01D6C6%
+    \Umathchardef\zeta      "0"0"01D6C7%
+    \Umathchardef\eta       "0"0"01D6C8%
+    \Umathchardef\theta     "0"0"01D6C9%
+    \Umathchardef\iota      "0"0"01D6CA%
+    \Umathchardef\kappa     "0"0"01D6CB%
+    \Umathchardef\lambda    "0"0"01D6CC%
+    \Umathchardef\mu        "0"0"01D6CD%
+    \Umathchardef\nu        "0"0"01D6CE%
+    \Umathchardef\xi        "0"0"01D6CF%
+    \Umathchardef\omicron   "0"0"01D6D0%
+    \Umathchardef\pi        "0"0"01D6D1%
+    \Umathchardef\rho       "0"0"01D6D2%
+    \Umathchardef\varsigma  "0"0"01D6D3%
+    \Umathchardef\sigma     "0"0"01D6D4%
+    \Umathchardef\tau       "0"0"01D6D5%
+    \Umathchardef\upsilon   "0"0"01D6D6%
+    \Umathchardef\varphi    "0"0"01D6D7%
+    \Umathchardef\chi       "0"0"01D6D8%
+    \Umathchardef\psi       "0"0"01D6D9%
+    \Umathchardef\omega     "0"0"01D6DA%
+    \Umathchardef\epsilon   "0"0"01D6DC%
+    \Umathchardef\vartheta  "0"0"01D6DD%
+    \Umathchardef\varkappa  "0"0"01D6DE%
+    \Umathchardef\phi       "0"0"01D6DF%
+    \Umathchardef\varrho    "0"0"01D6E0%
+    \Umathchardef\varpi     "0"0"01D6E1%
+    \Umathchardef\varTheta  "0"0"01D6B9%
+    \Umathchardef\digamma   "0"0"01D7CA%
     \relax
 }
 
 \everymathbi {%
+    % codes
     \Umathcode"0030="0"0"1D7CE%
     \Umathcode"0031="0"0"1D7CF%
     \Umathcode"0032="0"0"1D7D0%
@@ -590,6 +776,64 @@
     \Umathcode"03F5="0"0"1D750%
     \Umathcode"2202="0"0"1D74F%
     \Umathcode"2207="0"0"1D735%
+    % commands
+    \Umathchardef\Alpha     "0"0"01D71C%
+    \Umathchardef\Beta      "0"0"01D71D%
+    \Umathchardef\Gamma     "0"0"01D71E%
+    \Umathchardef\Delta     "0"0"01D71F%
+    \Umathchardef\Epsilon   "0"0"01D720%
+    \Umathchardef\Zeta      "0"0"01D721%
+    \Umathchardef\Eta       "0"0"01D722%
+    \Umathchardef\Theta     "0"0"01D723%
+    \Umathchardef\Iota      "0"0"01D724%
+    \Umathchardef\Kappa     "0"0"01D725%
+    \Umathchardef\Lambda    "0"0"01D726%
+    \Umathchardef\Mu        "0"0"01D727%
+    \Umathchardef\Nu        "0"0"01D728%
+    \Umathchardef\Xi        "0"0"01D729%
+    \Umathchardef\Omicron   "0"0"01D72A%
+    \Umathchardef\Pi        "0"0"01D72B%
+    \Umathchardef\Rho       "0"0"01D72C%
+    \Umathchardef\Sigma     "0"0"01D72E%
+    \Umathchardef\Tau       "0"0"01D72F%
+    \Umathchardef\Upsilon   "0"0"01D730%
+    \Umathchardef\Phi       "0"0"01D731%
+    \Umathchardef\Chi       "0"0"01D732%
+    \Umathchardef\Psi       "0"0"01D733%
+    \Umathchardef\Omega     "0"0"01D734%
+    \Umathchardef\alpha     "0"0"01D736%
+    \Umathchardef\beta      "0"0"01D737%
+    \Umathchardef\gamma     "0"0"01D738%
+    \Umathchardef\delta     "0"0"01D739%
+    \Umathchardef\varepsilon"0"0"01D73A%
+    \Umathchardef\zeta      "0"0"01D73B%
+    \Umathchardef\eta       "0"0"01D73C%
+    \Umathchardef\theta     "0"0"01D73D%
+    \Umathchardef\iota      "0"0"01D73E%
+    \Umathchardef\kappa     "0"0"01D73F%
+    \Umathchardef\lambda    "0"0"01D740%
+    \Umathchardef\mu        "0"0"01D741%
+    \Umathchardef\nu        "0"0"01D742%
+    \Umathchardef\xi        "0"0"01D743%
+    \Umathchardef\omicron   "0"0"01D744%
+    \Umathchardef\pi        "0"0"01D745%
+    \Umathchardef\rho       "0"0"01D746%
+    \Umathchardef\varsigma  "0"0"01D747%
+    \Umathchardef\sigma     "0"0"01D748%
+    \Umathchardef\tau       "0"0"01D749%
+    \Umathchardef\upsilon   "0"0"01D74A%
+    \Umathchardef\varphi    "0"0"01D74B%
+    \Umathchardef\chi       "0"0"01D74C%
+    \Umathchardef\psi       "0"0"01D74D%
+    \Umathchardef\omega     "0"0"01D74E%
+    \Umathchardef\epsilon   "0"0"01D750%
+    \Umathchardef\vartheta  "0"0"01D751%
+    \Umathchardef\varkappa  "0"0"01D752%
+    \Umathchardef\phi       "0"0"01D753%
+    \Umathchardef\varrho    "0"0"01D754%
+    \Umathchardef\varpi     "0"0"01D755%
+    \Umathchardef\varTheta  "0"0"01D72D%
+    \Umathchardef\digamma   "0"0"01D7CA%
     \relax
 }
 
@@ -597,6 +841,75 @@
     % not done
 }
 
+% Nothing special here:
+
+\let\mit\it
+
+% We use a special family for this, not that oldstyle in math makes
+% much sense, it's more that in good old tex oldstyle was taken from
+% math fonts. So, just something compatible:
+
+\def\oldstyle{\fam1\relax\tenos\relax}
+
+% Again a text and math one and it had better be used grouped.
+
+\def\cal{\fam0\relax\the\everymathcal\relax\tenit\relax}
+
+\everymathcal {%
+    \Umathcode"0041="0"0"1D49C% A
+    \Umathcode"0042="0"0"0212C% B
+    \Umathcode"0043="0"0"1D49E% C
+    \Umathcode"0044="0"0"1D49F% D
+    \Umathcode"0045="0"0"02130% E
+    \Umathcode"0046="0"0"02131% F
+    \Umathcode"0047="0"0"1D4A2% G
+    \Umathcode"0048="0"0"0210B% H
+    \Umathcode"0049="0"0"02110% I
+    \Umathcode"004A="0"0"1D4A5% J
+    \Umathcode"004B="0"0"1D4A6% K
+    \Umathcode"004C="0"0"02112% L
+    \Umathcode"004D="0"0"02133% M
+    \Umathcode"004E="0"0"1D4A9% N
+    \Umathcode"004F="0"0"1D4AA% O
+    \Umathcode"0050="0"0"1D4AB% P
+    \Umathcode"0051="0"0"1D4AC% Q
+    \Umathcode"0052="0"0"0211B% R
+    \Umathcode"0053="0"0"1D4AE% S
+    \Umathcode"0054="0"0"1D4AF% T
+    \Umathcode"0055="0"0"1D4B0% U
+    \Umathcode"0056="0"0"1D4B1% V
+    \Umathcode"0057="0"0"1D4B2% W
+    \Umathcode"0058="0"0"1D4B3% X
+    \Umathcode"0059="0"0"1D4B4% Y
+    \Umathcode"005A="0"0"1D4B5% Z
+    \Umathcode"0061="0"0"1D4B6% a
+    \Umathcode"0062="0"0"1D4B7% b
+    \Umathcode"0063="0"0"1D4B8% c
+    \Umathcode"0064="0"0"1D4B9% d
+    \Umathcode"0065="0"0"0212F% e
+    \Umathcode"0066="0"0"1D4BB% f
+    \Umathcode"0067="0"0"0210A% g
+    \Umathcode"0068="0"0"1D4BD% h
+    \Umathcode"0069="0"0"1D4BE% i
+    \Umathcode"006A="0"0"1D4BF% j
+    \Umathcode"006B="0"0"1D4C0% k
+    \Umathcode"006C="0"0"1D4C1% l
+    \Umathcode"006D="0"0"1D4C2% m
+    \Umathcode"006E="0"0"1D4C3% n
+    \Umathcode"006F="0"0"02134% o
+    \Umathcode"0070="0"0"1D4C5% p
+    \Umathcode"0071="0"0"1D4C6% q
+    \Umathcode"0072="0"0"1D4C7% r
+    \Umathcode"0073="0"0"1D4C8% s
+    \Umathcode"0074="0"0"1D4C9% t
+    \Umathcode"0075="0"0"1D4CA% u
+    \Umathcode"0076="0"0"1D4CB% v
+    \Umathcode"0077="0"0"1D4CC% w
+    \Umathcode"0078="0"0"1D4CD% x
+    \Umathcode"0079="0"0"1D4CE% y
+    \Umathcode"007A="0"0"1D4CF% z
+}
+
 \Udelcode  "00021 = "0 "00021
 \Udelcode  "00028 = "0 "00028
 \Udelcode  "00028 = "0 "00028
@@ -1831,6 +2144,44 @@
 \def\Zeta                      {\Umathchar  "0"0"000396 }
 \def\zeta                      {\Umathchar  "0"0"0003B6 }
 
+%D The following are suggested by Bruno. As I don't use plain and as the above are
+%D taken from text unicode greek I suppose his list is better:
+
+\def\alpha                     {\Umathchar  "0"0"01D6FC }
+\def\beta                      {\Umathchar  "0"0"01D6FD }
+\def\chi                       {\Umathchar  "0"0"01D712 }
+\def\delta                     {\Umathchar  "0"0"01D6FF }
+\def\digamma                   {\Umathchar  "0"0"0003DC }
+\def\epsilon                   {\Umathchar  "0"0"01D716 }
+\def\eta                       {\Umathchar  "0"0"01D702 }
+\def\gamma                     {\Umathchar  "0"0"01D6FE }
+\def\iota                      {\Umathchar  "0"0"01D704 }
+\def\kappa                     {\Umathchar  "0"0"01D705 }
+\def\lambda                    {\Umathchar  "0"0"01D706 }
+\def\mu                        {\Umathchar  "0"0"01D707 }
+\def\nu                        {\Umathchar  "0"0"01D708 }
+\def\omega                     {\Umathchar  "0"0"01D714 }
+\def\omicron                   {\Umathchar  "0"0"01D70A }
+\def\phi                       {\Umathchar  "0"0"01D719 }
+\def\pi                        {\Umathchar  "0"0"01D70B }
+\def\psi                       {\Umathchar  "0"0"01D713 }
+\def\rho                       {\Umathchar  "0"0"01D70C }
+\def\sigma                     {\Umathchar  "0"0"01D70E }
+\def\tau                       {\Umathchar  "0"0"01D70F }
+\def\theta                     {\Umathchar  "0"0"01D703 }
+\def\upsilon                   {\Umathchar  "0"0"01D710 }
+\def\varepsilon                {\Umathchar  "0"0"01D700 }
+\def\varkappa                  {\Umathchar  "0"0"01D718 }
+\def\varphi                    {\Umathchar  "0"0"01D711 }
+\def\varpi                     {\Umathchar  "0"0"01D71B }
+\def\varrho                    {\Umathchar  "0"0"01D71A }
+\def\varsigma                  {\Umathchar  "0"0"01D70D }
+\def\vartheta                  {\Umathchar  "0"0"01D717 }
+\def\xi                        {\Umathchar  "0"0"01D709 }
+\def\zeta                      {\Umathchar  "0"0"01D701 }
+
+\def\varTheta                  {\Umathchar  "0"0"0003F4 }
+
 % a few definitions:
 
 \def\sqrt     {\Uroot "0 "221A{}}
@@ -1883,4 +2234,22 @@
 \def\k#1{#1^^^^0328} % not in plain
 \def\b#1{#1^^^^0331}
 
+% for Bruno, when he tests this file with xetex:
+
+\ifdefined\directlua \else
+
+    \catcode`@=11
+
+    \def\sqrt{\Uradical "0 "221A }
+
+    \def\root#1\of
+      {\setbox\rootbox\hbox\bgroup
+          $\m at th\scriptscriptstyle{#1}$%
+       \egroup
+       \mathpalette\r@@t}
+
+    \catcode`@=12
+
+\fi
+
 \endinput

Modified: trunk/Master/tlpkg/bin/tlpkginfo
===================================================================
--- trunk/Master/tlpkg/bin/tlpkginfo	2017-05-19 21:41:05 UTC (rev 44435)
+++ trunk/Master/tlpkg/bin/tlpkginfo	2017-05-19 22:21:26 UTC (rev 44436)
@@ -375,7 +375,7 @@
 
   # ...and except for context, and plenty more...
   } elsif ($pkg eq "context") {
-    $tds_path = "/home/ftp/mirror/www.pragma-ade.nl/context/beta/cont-tmf.zip";
+    $tds_path = "/home/ftp/mirror/www.pragma-ade.nl/context/current/cont-tmf.zip";
 
   } elsif ($pkg eq "cmexb") {
     # as with enctex case



More information about the tex-live-commits mailing list