OSDN Git Service

Target release date: 2019-03-28
[luatex-ja/luatexja.git] / src / luatexja-core.sty
index 317820e..e57739d 100644 (file)
@@ -65,7 +65,7 @@
   \expandafter\let\csname ifltj@in@latex\expandafter\endcsname
     \csname iftrue\endcsname
   \NeedsTeXFormat{LaTeX2e}
-  \ProvidesPackage{luatexja-core}[2016/05/15 Core of LuaTeX-ja]
+  \ProvidesPackage{luatexja-core}[2017/11/12 Core of LuaTeX-ja]
 \fi                             %</LaTeX>
 
 %% Load prerequisite packages.
@@ -79,6 +79,8 @@
   \RequirePackage{pdftexcmds} [2011/11/29] % v0.20
   \RequirePackage{xkeyval}    [2012/10/14] % v2.6b
   \RequirePackage{atbegshi}
+  \RequirePackage{etoolbox}
+  \AtBeginShipoutInit
   \IfFileExists{everyhook.sty}{\RequirePackage{everyhook}\ltj@everyhook@availtrue}{}
 \else                           %<*!LaTeX>
   \input luatexbase.sty
 \expandafter\endinput\fi\relax
 
 %% Check LuaTeX version.
-\ifnum\luatexversion<85
+\ifnum\luatexversion<100
   \@PackageError{luatexja-core}
     {This LuaTeX engine is too old for this package;\MessageBreak
-     at least beta-0.85.0 is needed}
+     at least 1.0.0 is needed}
     {Package loading is aborted now.\MessageBreak}
 \expandafter\endinput\fi\relax
 
 
 %%%%%%%% Load all sub-packages.
 \ifltj@in@latex                 %<*LaTeX>
-  \RequirePackage{ltj-base}   [2016/05/15]
+  \RequirePackage{ltj-base}
 \else                           %<*!LaTeX>
   \input ltj-base.sty %
 \fi                             %</LaTeX>
 \newluafunction\ltj@restore@globaldefs@inner
 \newluafunction\ltj@@ihb@inner
 \newluafunction\ltj@@fakeparbegin@inner
+\newluafunction\ltj@@fakeboxbdd@inner
 \directlua{
   local t = lua.get_functions_table()
   t[\the\ltj@reset@globaldefs@inner] 
      = function() tex.globaldefs = luatexja.global_temp end
   t[\the\ltj@@ihb@inner] = luatexja.jfmglue.create_inhibitglue_node
   t[\the\ltj@@fakeparbegin@inner] = luatexja.jfmglue.create_beginpar_node
+  t[\the\ltj@@fakeboxbdd@inner] = luatexja.jfmglue.create_boxbdd_node
 }
 \protected\def\ltj@reset@globaldefs{\luafunction\ltj@reset@globaldefs@inner}
 \protected\def\ltj@restore@globaldefs{\luafunction\ltj@restore@globaldefs@inner}
 \protected\def\inhibitglue{\ifhmode\relax\luafunction\ltj@@ihb@inner\fi}
 \protected\def\ltjfakeparbegin{\ifhmode\relax\luafunction\ltj@@fakeparbegin@inner\fi}
+\protected\def\ltjfakeboxbdd{\ifhmode\relax\luafunction\ltj@@fakeboxbdd@inner\fi}
 
 
 %%%%%%%% \ltjdefcharrange<name>{100-200,3000-,5000,...}
 \define@key[ltj]{japaram}{jacharrange}{\expandafter\ltj@@scrange#1,,}
 \def\ltj@@scrange#1,{%
   \edef\ltj@temp{#1}%
-  \ifx\ltj@temp\empty\let\next=\relax\else\let\next=\ltj@@scrange
+  \ifx\ltj@temp\empty\let\ltj@@next=\relax\else\let\ltj@@next=\ltj@@scrange
     \directlua{luatexja.charrange.toggle_char_range(%
       luatexja.is_global,\ltj@safe@num@or{nil}{#1})}%
-  \fi\next
+  \fi\ltj@@next
 }
 
 \protected\def\ltj@setpar@global{%
 \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}
+  \aftergroup\ltj@@insert@B\let\ltj@@next}
 \protected\def\ltj@@insert@B{\directlua{luatexja.direction.populate_insertion_dir_whatsit()}\endgroup}
 
 %%%% vadjust
 \protected\def\vadjust{%
   \ltj@@orig@vadjust\bgroup
   \directlua{luatexja.direction.set_list_direction_hook('adj')}%
-  \aftergroup\ltj@@vadjust@check@dir\let\next}
+  \aftergroup\ltj@@vadjust@check@dir\let\ltj@@next}
 \protected\def\ltj@@vadjust@check@dir{%
   \directlua{luatexja.direction.check_adjust_direction()}%
 }
 %%------------------ Load module for the format
 
 \ifltj@in@latex                 %<*LaTeX>
-  \RequirePackage{ltj-latex}[2016/05/15]
+  \RequirePackage{ltj-latex}
 \else\ifltj@in@plain            %<*plain>
   \input ltj-plain.sty %
 \fi\fi                          %</LaTeX|plain>