%% \ltj@gobble@glue <glue>
%! 次に続くグルー値を(2 回展開で)読み捨てる.
\def\ltj@gobble@glue{
- \directlua{token.scan_glue()}
+ \directlua{node.free(token.scan_glue())}
}
%% \ltj@gobble@dimen <dimen>
local g = mc[bc][ac]
if g then
if g[1] then
- return node_copy(g[1]), g.ratio, false, false, false
+ local k = node_new(id_kern, 1); setfield(k, 'kern', g[1])
+ set_attr(k, attr_icflag, FROM_JFM)
+ return k, g.ratio, false, false, false
else
- local f = node_new(id_glue)
- set_attr(f, attr_icflag, g.priority)
- setglue(f, g.width, g.stretch, g.shrink)
- return f, g.ratio, g.kanjiskip_natural, g.kanjiskip_stretch, g.kanjiskip_shrink
+ local f = node_new(id_glue)
+ set_attr(f, attr_icflag, g.priority)
+ setglue(f, g.width, g.stretch, g.shrink)
+ return f, g.ratio, g.kanjiskip_natural, g.kanjiskip_stretch, g.kanjiskip_shrink
end
end
return false, 0
}
end
for k,w in pairs(v.kern) do
- local g = node_new(id_kern, 1)
- setfield(g, 'kern', w[1])
- set_attr(g, attr_icflag, FROM_JFM)
- v[k] = {g, ratio=w[2]/sz}
+ v[k] = {w[1], ratio=w[2]/sz}
end
end
v.glue, v.kern = nil, nil