X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Faddons%2Fluatexja-adjust.sty;h=d357799f36fff8f02aaa8c626d2c7489b89db4f2;hb=ae77474c1513fdada9dde1a239c0c11fc9c112c0;hp=0e10c4577992145518eb150119fd952276f421b0;hpb=fb084ffd85cb3fc25ddb6fb6a82d470e9d32d816;p=luatex-ja%2Fluatexja.git diff --git a/src/addons/luatexja-adjust.sty b/src/addons/luatexja-adjust.sty index 0e10c45..d357799 100644 --- a/src/addons/luatexja-adjust.sty +++ b/src/addons/luatexja-adjust.sty @@ -64,13 +64,14 @@ \expandafter\let\csname ifltj@in@latex\expandafter\endcsname \csname iftrue\endcsname \NeedsTeXFormat{LaTeX2e} - \ProvidesPackage{luatexja-adjust}[2016/04/03] + \ProvidesPackage{luatexja-adjust}[2016/05/15] \fi % % Load core module if not yet. +% xkeyval.sty is already required in luatexja.sty. \ifx\luatexjacoreLoaded\@undefined \ifltj@in@latex %<*LaTeX> - \RequirePackage{luatexja}[2013/05/14] + \RequirePackage{luatexja}[2016/05/15] \else %<*!LaTeX> \input luatexja.sty % \fi % @@ -91,12 +92,38 @@ \fi % enable/disable ``advanced'' line adjustment -\protected\def\ltjdisableadjust{\directlua{luatexja.adjust.disable_cb()}} -\protected\def\ltjenableadjust{\directlua{luatexja.adjust.enable_cb()}} +% 1: lineend (aw_step1) +% 2: priority (aw_step2) +% 3: all + +\newcount\ltjadj@status +\define@key[ltj]{adjust}{all}[]{\ltjadj@status=3 } +\define@boolkey[ltj]{adjust}{lineend}[true]{% + \ifltj@adjust@lineend + \ifodd\ltjadj@status\else\advance\ltjadj@status\@ne\fi + \else + \ifodd\ltjadj@status\advance\ltjadj@status\m@ne\fi + \fi\relax} +\define@boolkey[ltj]{adjust}{priority}[true]{% + \ifltj@adjust@priority + \ifnum\ltjadj@status>1\else\advance\ltjadj@status2\fi + \else + \ifnum\ltjadj@status>1\advance\ltjadj@status-2\fi + \fi\relax} +\protected\def\@@ltjenableadjust[#1]{% + \setkeys[ltj]{adjust}{#1}% + \directlua{luatexja.adjust.enable_cb(\the\ltjadj@status)}\ignorespaces +} +\protected\def\ltjdisableadjust{\ltjenableadjust*[]} +\protected\def\ltjenableadjust{% + \ltx@ifnextchar*{\ltjadj@status\z@\ltx@firstoftwo{\@ltjenableadjust}}{\@ltjenableadjust}} +\protected\def\@ltjenableadjust{% + \ltx@ifnextchar[{\@@ltjenableadjust}{\@@ltjenableadjust[all]}}%] + \ltjenableadjust % there is also a key for \ltjsetparameter, for same effect \define@boolkey[ltj]{japaram}{adjust}[true]{% - \ifltj@japaram@adjust\ltjenableadjust\else\ltjdisableadjust\fi + \ifltj@japaram@adjust\ltjenableadjust\else\ltjdisableadjust\fi\relax }