diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua')
-rw-r--r-- | Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua | 44 |
1 files changed, 31 insertions, 13 deletions
diff --git a/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua b/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua index c4d6536046a..2a68b1c180d 100644 --- a/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua +++ b/Master/texmf-dist/tex/generic/context/luatex/luatex-basics-gen.lua @@ -63,15 +63,19 @@ logs = { } callbacks = { - register = function(n,f) return callback.register(n,f) end, + register = function(n,f) + return callback.register(n,f) + end, } -utilities = { - storage = { - allocate = function(t) return t or { } end, - mark = function(t) return t or { } end, - }, +utilities = utilities or { } utilities.storage = { + allocate = function(t) + return t or { } + end, + mark = function(t) + return t or { } + end, } characters = characters or { @@ -88,12 +92,10 @@ local remapper = { otf = "opentype fonts", ttf = "truetype fonts", ttc = "truetype fonts", - dfont = "truetype fonts", -- "truetype dictionary", cid = "cid maps", cidmap = "cid maps", - fea = "font feature files", - pfa = "type1 fonts", -- this is for Khaled, in ConTeXt we don't use this! - pfb = "type1 fonts", -- this is for Khaled, in ConTeXt we don't use this! + -- fea = "font feature files", -- no longer supported + pfb = "type1 fonts", -- needed for vector loading afm = "afm", } @@ -355,12 +357,28 @@ end -- +-- function table.setmetatableindex(t,f) +-- if type(t) ~= "table" then +-- f = f or t +-- t = { } +-- end +-- setmetatable(t,{ __index = f }) +-- return t +-- end + function table.setmetatableindex(t,f) if type(t) ~= "table" then - f = f or t - t = { } + f, t = t, { } + end + local m = getmetatable(t) + if f == "table" then + f = function(t,k) local v = { } t[k] = v return v end + end + if m then + m.__index = f + else + setmetatable(t,{ __index = f }) end - setmetatable(t,{ __index = f }) return t end |