diff options
author | Philipp Gesang <phg42.2a@gmail.com> | 2014-05-18 08:50:21 +0200 |
---|---|---|
committer | Philipp Gesang <phg42.2a@gmail.com> | 2014-05-18 08:50:21 +0200 |
commit | d7fc0762b087bcfae22823dc77844db89009a563 (patch) | |
tree | 289c9968c13d16ea195a705db1701b62a4731274 /src/luaotfload-basics-nod.lua | |
parent | d435ea827827dcb4494ddff8583e5b15d27625b4 (diff) | |
download | luaotfload-d7fc0762b087bcfae22823dc77844db89009a563.tar.gz |
[fontloader] sync with Context as of 2014-05-18
Diffstat (limited to 'src/luaotfload-basics-nod.lua')
-rw-r--r-- | src/luaotfload-basics-nod.lua | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/src/luaotfload-basics-nod.lua b/src/luaotfload-basics-nod.lua index 50a1e86..373dab5 100644 --- a/src/luaotfload-basics-nod.lua +++ b/src/luaotfload-basics-nod.lua @@ -54,22 +54,33 @@ nodes.handlers = { } local nodecodes = { } for k,v in next, node.types () do nodecodes[string.gsub(v,"_","")] = k end local whatcodes = { } for k,v in next, node.whatsits() do whatcodes[string.gsub(v,"_","")] = k end local glyphcodes = { [0] = "character", "glyph", "ligature", "ghost", "left", "right" } +local disccodes = { [0] = "discretionary", "explicit", "automatic", "regular", "first", "second" } nodes.nodecodes = nodecodes nodes.whatcodes = whatcodes nodes.whatsitcodes = whatcodes nodes.glyphcodes = glyphcodes +nodes.disccodes = disccodes local free_node = node.free local remove_node = node.remove local new_node = node.new local traverse_id = node.traverse_id -local math_code = nodecodes.math - nodes.handlers.protectglyphs = node.protect_glyphs nodes.handlers.unprotectglyphs = node.unprotect_glyphs +local math_code = nodecodes.math +local end_of_math = node.end_of_math + +function node.end_of_math(n) + if n.id == math_code and n.subtype == 1 then + return n + else + return end_of_math(n) + end +end + function nodes.remove(head, current, free_too) local t = current head, current = remove_node(head,current) |