From: Hironori Kitagawa Date: Sun, 28 Aug 2022 22:59:54 +0000 (+0900) Subject: LuaTeX 1.08.0 have sufficient node.direct.{get,set}XXX helpers X-Git-Tag: 20221002.0~9^2~1 X-Git-Url: http://git.osdn.jp/view?a=commitdiff_plain;h=1206841249c323d08663c32f42dbfa7988ffdcd8;p=luatex-ja%2Fluatexja.git LuaTeX 1.08.0 have sufficient node.direct.{get,set}XXX helpers --- diff --git a/src/ltj-adjust.lua b/src/ltj-adjust.lua index 568e123..89ad781 100644 --- a/src/ltj-adjust.lua +++ b/src/ltj-adjust.lua @@ -24,7 +24,7 @@ local getwidth = node.direct.getwidth local getdepth = node.direct.getdepth local setfield = node.direct.setfield local setpenalty = node.direct.setpenalty -local setglue = luatexja.setglue +local setglue = node.direct.setglue local setkern = node.direct.setkern local setlist = node.direct.setlist diff --git a/src/ltj-jfmglue.lua b/src/ltj-jfmglue.lua index eb1834d..ed7ab6d 100644 --- a/src/ltj-jfmglue.lua +++ b/src/ltj-jfmglue.lua @@ -3,7 +3,7 @@ -- luatexbase.provides_module({ name = 'luatexja.jfmglue', - date = '2022-08-18', + date = '2022-08-29', description = 'Insertion process of JFM glues, [x]kanjiskip and others', }) luatexja.jfmglue = luatexja.jfmglue or {} @@ -24,14 +24,14 @@ local getid = node.direct.getid local getfont = node.direct.getfont local getlist = node.direct.getlist local getchar = node.direct.getchar -local getglue = luatexja.getglue +local getglue = node.direct.getglue local getsubtype = node.direct.getsubtype local getshift = node.direct.getshift local getwidth = node.direct.getwidth local getdepth = node.direct.getdepth local getpenalty = node.direct.getpenalty local setfield = node.direct.setfield -local setglue = luatexja.setglue +local setglue = node.direct.setglue local setshift = node.direct.setshift local if_lang_ja do @@ -804,7 +804,6 @@ do return round(r/2.^(64*ro)), ro end end - local getglue = luatexja.getglue calc_ja_ja_aux = function (gb, ga, db, da) if luatexja.jfmglue.diffmet_rule ~= math.two_pleft and diffmet_rule ~= math.two_pright and luatexja.jfmglue.diffmet_rule ~= math.two_paverage then diff --git a/src/ltj-lineskip.lua b/src/ltj-lineskip.lua index 10e7ef5..107ee80 100644 --- a/src/ltj-lineskip.lua +++ b/src/ltj-lineskip.lua @@ -22,7 +22,7 @@ local getheight = node.direct.getheight local texget = tex.get local node_getglue = node.getglue -local setglue = luatexja.setglue +local setglue = node.direct.setglue local setsubtype = node.direct.setsubtype local function copy_glue (new_glue, old_glue_name, subtype, new_w) setsubtype(new_glue, subtype) diff --git a/src/ltj-ruby.lua b/src/ltj-ruby.lua index f09376c..047b53a 100644 --- a/src/ltj-ruby.lua +++ b/src/ltj-ruby.lua @@ -3,7 +3,7 @@ -- luatexbase.provides_module({ name = 'luatexja.ruby', - date = '2022-08-14', + date = '2022-08-29', description = 'Ruby annotation', }) luatexja.ruby = {} @@ -26,7 +26,7 @@ local getdepth = node.direct.getdepth local getwhd = node.direct.getwhd local getvalue = node.direct.getdata local setfield = node.direct.setfield -local setglue = luatexja.setglue +local setglue = node.direct.setglue local setkern = node.direct.setkern local setnext = node.direct.setnext local setshift = node.direct.setshift diff --git a/src/luatexja.lua b/src/luatexja.lua index 54838de..e8f4053 100644 --- a/src/luatexja.lua +++ b/src/luatexja.lua @@ -39,36 +39,6 @@ do return node_inherit_attr(node_new(id, subtype), b, a) end end -do - local dnode = node.direct - local setfield = dnode.setfield - luatexja.setglue = node.direct.setglue or - function(g,w,st,sh,sto,sho) - setfield(g,'width', w or 0); setfield(g,'stretch',st or 0); setfield(g,'shrink', sh or 0) - setfield(g,'stretch_order',sto or 0) - setfield(g,'shrink_order', sho or 0) - end - for _,v in pairs({'char', 'depth', 'dir', 'font', 'height', 'kern', 'lang', 'next', - 'nucleus', 'offsets', 'penalty', 'shift', 'sub', 'subtype', 'sup'}) do - if not dnode['set'..v] then - dnode['set'..v] = function(n, ...) return setfield(n, v, ...) end - end - end - local getfield = dnode.getfield - luatexja.getglue = node.direct.getglue or - function(g) - return getfield(g,'width'), getfield(g,'stretch'), getfield(g,'shrink'), - getfield(g,'stretch_order'), getfield(g,'shrink_order') - end - for _,v in pairs({'box', 'components', 'char', 'depth', 'font', 'height', 'kern', 'lang', - 'list', 'next', 'nucleus', 'offsets', 'penalty', 'prev', 'shift', 'sub', - 'subtype', 'sup', 'whd', 'width', 'dir'}) do - if not dnode['get'..v] then - dnode['get'..v] = function(n, ...) return getfield(n, v, ...) end - end - end -end - --- 以下は全ファイルで共有される定数 local icflag_table = {} diff --git a/tool/test_exist_nodelib.tex b/tool/test_exist_nodelib.tex new file mode 100644 index 0000000..2d9ee7c --- /dev/null +++ b/tool/test_exist_nodelib.tex @@ -0,0 +1,104 @@ +\catcode`\{=1 \catcode`\}=2 +\directlua{ +kpse.set_program_name('luatex') +print() print("LUATEX: ", tex.luatexversion, _VERSION) + +function test(c) + if not node[c] then print ('not imple: node.' .. c) end +end +test "direct" +test "free" +test "get_attribute" +test "getglue" +test "id" +test "insert_after" +test "is_node" +test "mlist_to_hlist" +test "new" +test "next" +test "set_attribute" +test "slide" +test "subtype" +test "tail" +test "traverse" +test "type" +test "write" + +function test(c) + if not node.direct[c] then print ('not imple: node.direct.' .. c) end +end + +test "copy" +test "copy_list" +test "dimensions" +test "end_of_math" +test "flush_list" +test "free" +test "get_attribute" +test "getattributelist" +test "getbox" +test "getchar" +test "getcomponents" +test "getdata" +test "getdepth" +test "getdir" +test "getfield" +test "getfont" +test "getglue" +test "getheight" +test "getid" +test "getkern" +test "getlang" +test "getlist" +test "getnext" +test "getnucleus" +test "getoffsets" +test "getpenalty" +test "getprev" +test "getshift" +test "getsub" +test "getsubtype" +test "getsup" +test "getwhd" +test "getwidth" +test "has_attribute" +test "hpack" +test "insert_after" +test "insert_before" +test "last_node" +test "new" +test "rangedimensions" +test "remove" +test "set_attribute" +test "setattributelist" +test "setchar" +test "setdata" +test "setdepth" +test "setdir" +test "setfield" +test "setfont" +test "setglue" +test "setheight" +test "setkern" +test "setlang" +test "setlist" +test "setnext" +test "setnucleus" +test "setoffsets" +test "setpenalty" +test "setshift" +test "setsub" +test "setsubtype" +test "setsup" +test "setwhd" +test "setwidth" +test "tail" +test "todirect" +test "tonode" +test "traverse" +test "traverse_id" +test "unset_attribute" +test "vpack" +test "write" +} +\end