From: Hironori Kitagawa Date: Thu, 11 Feb 2021 09:08:11 +0000 (+0900) Subject: Fix #41556 X-Git-Tag: 20210214.0~6 X-Git-Url: http://git.osdn.jp/view?a=commitdiff_plain;h=33b01b7614c0a8bf6f8aa72d7821502a9ad46e78;p=luatex-ja%2Fluatexja.git Fix #41556 --- diff --git a/src/ltj-jfmglue.lua b/src/ltj-jfmglue.lua index 019e24a..7437492 100644 --- a/src/ltj-jfmglue.lua +++ b/src/ltj-jfmglue.lua @@ -3,7 +3,7 @@ -- luatexbase.provides_module({ name = 'luatexja.jfmglue', - date = '2020-12-22', + date = '2021-02-11', description = 'Insertion process of JFM glues, [x]kanjiskip and others', }) luatexja.jfmglue = luatexja.jfmglue or {} @@ -347,8 +347,7 @@ function calc_np_aux_glyph_common(lp, acc_flag) local lx=lp while lx do local lai = get_attr_icflag(lx) - if lx==last or lai>=PACKED then - lp=lx; break + if lx==last or lai>=PACKED then break else local lid = getid(lx) if lid==id_glyph and not if_lang_ja(lx) then @@ -368,19 +367,20 @@ function calc_np_aux_glyph_common(lp, acc_flag) else -- アクセントは上下にシフトされている setfield(lx, 'shift', getfield(lx, 'shift') + (has_attr(lx,attr_ablshift) or 0)) end - lx = node_next(node_next(lx)) + set_attr(lx, attr_icflag, PROCESSED) + lx = node_next(lx); set_attr(lx, attr_icflag, PROCESSED) + lx = node_next(lx); set_attr(lx, attr_icflag, PROCESSED) elseif ls==0 then Np.last = lx; lx = node_next(lx) elseif (ls==3) or (lai==ITALIC) then Np.last = lx; set_attr(lx, attr_icflag, IC_PROCESSED); lx = node_next(lx) - else - lp=lx; break + else break end - else - lp=lx; break + else break end end end + lp=lx local r if adj_depth>node_depth then r = node_new(id_rule,3)