\newluatexattribute\ltj@curtfnt % index for ``current vertical Japanese font''
\newluatexattribute\ltj@origchar %
\newluatexattribute\ltj@charclass %
+\newluatexattribute\ltj@charcode %
\newluatexattribute\ltj@autospc % attribute for autospacing
\newluatexattribute\ltj@autoxspc % attribute for autoxspacing
\newluatexattribute\ltj@yablshift % attribute for yalbaselineshift
luatexja.stack.mmode = -tex.nest[tex.nest.ptr].mode
}$%
}
-\ifltj@everyhook@avail
+\ifltj@everyhook@avail% using everyhook package
\PushPreHook{hbox}{%
\directlua{luatexja.direction.set_list_direction_hook()}%
\aftergroup\ltj@@reset@badness
\aftergroup\ltj@@reset@badness
}
\else
- {\catcode`\!=0\catcode`\\=12
- !@PackageWarningNoLine{luatexja-core}{%
- I will use \everyhbox and \everyvbox directly !MessageBreak
- for supporting multiple directions, !MessageBreak
- since everyhook.sty is not available}}
- \everyhbox{%
+ \let\ltj@@everyhbox=\everyhbox\let\ltj@@everyvbox=\everyvbox
+ \newtoks\ltj@@i@everyhbox\newtoks\ltj@@i@everyvbox
+ \let\everyhbox=\ltj@@i@everyhbox\let\everyvbox=\ltj@@i@everyvbox
+ \ltj@@everyhbox{%
\directlua{luatexja.direction.set_list_direction_hook()}%
\aftergroup\ltj@@reset@badness
- }
- \everyvbox{%
+ \the\ltj@@i@everyhbox}
+ \ltj@@everyvbox{%
\directlua{luatexja.direction.set_list_direction_hook()}%
\aftergroup\ltj@@reset@badness
- }
+ \the\ltj@@i@everyvbox}
\fi
+
\protected\def\ltj@@reset@badness{%
\directlua{%
if luatexja.global_temp then