X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fluatexja-core.sty;h=37e4b298bff1fff385b5fed5aacc82e4962054c4;hb=585461cded7dfa2f12d7a53097095bdc21b774de;hp=0352e1e55689197425211ba455df8999c5a00dd0;hpb=c004010f7a45f5e5c0d46556fe9065515d6bd60a;p=luatex-ja%2Fluatexja.git diff --git a/src/luatexja-core.sty b/src/luatexja-core.sty index 0352e1e..37e4b29 100644 --- a/src/luatexja-core.sty +++ b/src/luatexja-core.sty @@ -146,7 +146,7 @@ \newluatexattribute\jfam % index for current jfam \newluatexattribute\ltj@dir - +\newlanguage\ltj@@japanese \ltj@dir=0 \ltj@icflag=0 \ltj@origchar=0 @@ -201,16 +201,17 @@ %%%%%%%% \jfont\CS={...:...;jfm=metric;...}, \globaljfont \protected\def\jfont{% - \afterassignment\ltj@@jfont\directlua{luatexja.jfont.jfontdefX(false)}} + \afterassignment\ltj@@jfont\directlua{luatexja.jfont.jfontdefX(false, 'yoko')}} \protected\def\globaljfont{% - \afterassignment\ltj@@jfont\directlua{luatexja.jfont.jfontdefX(true)}} -\def\ltj@@jfont{\directlua{luatexja.jfont.jfontdefY('yoko')}} + \afterassignment\ltj@@jfont\directlua{luatexja.jfont.jfontdefX(true, 'yoko')}} +\def\ltj@@jfont{\directlua{luatexja.jfont.jfontdefY()}} %%%%%%%% \tfont\CS={...:...;jfm=metric;...}, \globaltfont -\protected\def\tfont{\afterassignment\ltj@@tfont\directlua{luatexja.jfont.jfontdefX(false)}} +\protected\def\tfont{% + \afterassignment\ltj@@tfont\directlua{luatexja.jfont.jfontdefX(false, 'tate')}} \protected\def\globaltfont{% - \afterassignment\ltj@@tfont\directlua{luatexja.jfont.jfontdefX(true)}} -\def\ltj@@tfont{\directlua{luatexja.jfont.jfontdefY('tate')}} + \afterassignment\ltj@@tfont\directlua{luatexja.jfont.jfontdefX(true, 'tate')}} +\def\ltj@@tfont{\directlua{luatexja.jfont.jfontdefY()}} %%%%%%%% \zw, \zh @@ -438,6 +439,7 @@ \ltj@@decl@array@param{boxdir} \def\ltjgetparameter#1{% \directlua{luatexja.base.start_time_measure('get_par')}% + % stop call is moved in luatexja.lua \ifcsname ltj@@array@param/#1\endcsname \expandafter\ltx@firstoftwo \else @@ -448,11 +450,9 @@ } \def\ltj@@getparam@one#1{% \directlua{luatexja.ext_get_parameter_unary('#1')}% - \directlua{luatexja.base.stop_time_measure('get_par')}% }% \def\ltj@@getparam@two#1#2{% \directlua{luatexja.ext_get_parameter_binary('#1', \ltj@safe@num@or{nil}{#2})}% - \directlua{luatexja.base.stop_time_measure('get_par')}% } %%%%%%%% \ltjalchar, \ltjjachar @@ -553,9 +553,12 @@ \yoko %%%% insert -%\let\orig@insert=\insert -%\protected\def\insert{\begingroup\afterassignment\ltj@@insert@A\ltj@tempcnta} -%\protected\def\ltj@@insert@A{\orig@insert\ltj@tempcnta\bgroup\aftergroup\endgroup\let\next} +\let\orig@insert=\insert +\protected\def\insert{\begingroup\afterassignment\ltj@@insert@A\ltj@tempcnta} +\protected\def\ltj@@insert@A{\orig@insert\ltj@tempcnta\bgroup + \aftergroup\ltj@@insert@B\let\next} +\protected\def\ltj@@insert@B{\directlua{luatexja.direction.populate_insertion_dir_whatsit()}\endgroup} + %%%% vadjust \let\ltj@@orig@vadjust=\vadjust \protected\def\vadjust{% @@ -572,7 +575,7 @@ 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 @@ -582,20 +585,19 @@ \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