OSDN Git Service

get rid of attr_orig_char
[luatex-ja/luatexja.git] / src / ltj-direction.lua
index 8ddc3b3..e29503b 100644 (file)
@@ -1066,6 +1066,11 @@ do
          setfield(db, 'head', db_head)
       end
    end
+
+   local shipout_temp =  node_new(id_hlist)
+   set_attr(shipout_temp, attr_dir, dir_yoko)
+   tex_set_attr('global', attr_dir, 0)
+
    finalize_inner = function (box)
       for n in traverse(getlist(box)) do
          local nid = getid(n)
@@ -1080,7 +1085,17 @@ do
       end
    end
    local getbox = tex.getbox
+   local setbox, copy = Dnode.setbox, Dnode.copy
    function luatexja.direction.finalize()
-      finalize_inner(to_direct(tex.getbox("AtBeginShipoutBox")))
+      local a = to_direct(tex.getbox("AtBeginShipoutBox"))
+      local a_dir = get_box_dir(a, dir_yoko)
+      if a_dir~=dir_yoko then
+         local b = create_dir_node(a, a_dir, dir_yoko, false)
+         setfield(b, 'head', a); a = b
+      end
+      setfield(shipout_temp, 'head', a)
+      finalize_inner(shipout_temp)
+      setbox('global', "AtBeginShipoutBox", copy(getlist(shipout_temp)))
+      setfield(shipout_temp, 'head',nil)
    end
 end