OSDN Git Service

Tentative fix of ltj-cctbreg.sty.
authorHironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
Tue, 4 Dec 2012 22:30:34 +0000 (07:30 +0900)
committerHironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
Tue, 4 Dec 2012 22:30:34 +0000 (07:30 +0900)
src/ltj-cctbreg.sty

index 90f6612..3cd0375 100644 (file)
 \fi                             %</LaTeX>
 
 % LS = Size of storage reserved for luatex-pkg.
 \fi                             %</LaTeX>
 
 % LS = Size of storage reserved for luatex-pkg.
-\chardef\ltj@cctb@lower@stor@size=32768
+\chardef\ltj@cctb@lower@stor@size=16384
+
+% LL = (upper bound of cctb index used by luatexbase.sty and luatex.sty) - 1
+\chardef\ltj@cctb@limit=32766
 
 %-------------------
 
 
 %-------------------
 
 
 %-------------------
 
 
 %-------------------
 
+\begingroup
+\endlinechar=13
+\catcode`\_=12
+\gdef\newluatexcatcodetable#1{%
+  \ifnum\lltxb@catcodetable@alloc<\ltj@cctb@limit\relax
+    \global\advance\lltxb@catcodetable@alloc\tw@
+    \allocationnumber\lltxb@catcodetable@alloc
+    \global\chardef#1\allocationnumber
+    \luatexinitcatcodetable\allocationnumber
+    \begingroup\escapechar\m@ne
+    \luatexbase@directlua{luatexbase.catcodetabledef_from_tex(
+      '\luatexluaescapestring{\string#1}', '\number\allocationnumber')}%
+    \endgroup
+    \wlog{\string#1=\string\luatexcatcodetable\the\allocationnumber}%
+  \else
+    \errmessage{No room for a new \string\luatexcatcodetable}%
+  \fi}
+\endgroup
+
+%-------------------
+
 % The luatex package stores its preset settings to registers 1, 3, 5, 7
 % and new user allocations go to odd number 9, 11, 13, etc.; registers
 % with even number are reserved for the "category code table stack".
 % The luatex package stores its preset settings to registers 1, 3, 5, 7
 % and new user allocations go to odd number 9, 11, 13, etc.; registers
 % with even number are reserved for the "category code table stack".