OSDN Git Service

Merge branch 'master' into vert_vrt2
[luatex-ja/luatexja.git] / src / luatexja-compat.sty
index e066ad3..a8d27a9 100644 (file)
   \expandafter\let\csname ifltj@in@latex\expandafter\endcsname
     \csname iftrue\endcsname
   \NeedsTeXFormat{LaTeX2e}
-  \ProvidesPackage{luatexja-compat}[2011/04/01 v0.1]
+  \ProvidesPackage{luatexja-compat}[2017/05/05 Compatibility with pTeX]
 \fi                             %</LaTeX>
 
-%% If the engine is pTeX, then load the module for it and exit.
-\edef\ltj@@tempa{\string\kansuji}
-\edef\ltj@@tempb{\meaning\kansuji}
-\ifx\ltj@@tempa\ltj@@tempb      %<*pTeX>
-  \let\ltj@@compat@pTeX=t
-  \ifltj@in@latex                 %<*LaTeX>
-    \RequirePackage{luatexja-compat-ptex}[2011/04/01]
-  \else                           %<*!LaTeX>
-    \input luatexja-compat-ptex.sty %
-  \fi                             %</LaTeX>
-  \ltj@compat@AtEnd
-\expandafter\endinput\fi\relax  %</pTeX>
-
 % Load core module if not yet.
 \ifx\luatexjacoreLoaded\@undefined
   \ifltj@in@latex                 %<*LaTeX>
-    \RequirePackage{luatexja-core}[2011/04/01]
+    \RequirePackage{luatexja-core}
   \else                           %<*!LaTeX>
     \input luatexja-core.sty %
   \fi                             %</LaTeX>
 % not yet implemented.
 
 %%------------------
-%! これ以降に LuaTeX 用の compat の内容を入れる.
-\RequireLuaModule{luatexja.jisx0208} %% JIS X 0208 => unicode のテーブル
-\RequireLuaModule{luatexja.compat}
+\RequireLuaTeXjaSubmodule{compat}
 
 \def\euc{\ltj@code@conv{euc}}
 \def\kuten{\ltj@code@conv{kuten}}
 \def\ucs{\ltj@code@conv{ucs}}
 
 \def\ltj@code@conv#1{%
-  \directlua{ luatexja._cc_next = luatexja.compat.from_#1 }%
-  \ltj@code@convA
-}
-\def\ltj@code@convA{%
-  \expandafter\expandafter\expandafter
-   \ltj@code@convB\ltj@grab@num
-}
-\def\ltj@code@convB#1{%
-  \directlua{ luatexja._cc_next(\ltj@safe@num{#1}) }%
+  \directlua{luatexja.compat.from_#1(token.scan_int())}%
 }
 
 \def\kansuji{%
-  \expandafter\expandafter\expandafter
-   \ltj@kansujiA\ltj@grab@num
+  \directlua{luatexja.compat.to_kansuji(token.scan_int())}%
 }
-\def\ltj@kansujiA#1{%
-  \directlua{ luatexja.compat.to_kansuji(\ltj@safe@num{#1}) }%
-}
-\define@key[ltj]{japaram}{kansujichar}{%
-  \expandafter\ltj@@set@stack#1:{ksj}{0}{0x7FFFFFFF}}
+
+\define@key[ltj]{japaram}{kansujichar}{\ltj@@set@stack{KSJ}{0}{0x7FFFFFFF}#1 }
 
 \ltjsetparameter{kansujichar={0,`〇}}
 \ltjsetparameter{kansujichar={1,`一}}
 \ltjsetparameter{kansujichar={7,`七}}
 \ltjsetparameter{kansujichar={8,`八}}
 \ltjsetparameter{kansujichar={9,`九}}
+\ltj@@decl@array@param{kansujichar}
 
 \ifltj@in@latex
   \newcommand\printglossary{\@input@{\jobname.gls}}