OSDN Git Service

Renamed \{k,a}char to \ltj{ja,al}char.
authorHironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
Thu, 17 Nov 2011 22:40:40 +0000 (07:40 +0900)
committerHironori Kitagawa <h_kitagawa2001@yahoo.co.jp>
Thu, 17 Nov 2011 22:40:40 +0000 (07:40 +0900)
src/luatexja-core.sty
src/luatexja-fontspec.sty
src/luatexja/base.lua
test/test09-fontspec.pdf
test/test09-fontspec.tex

index e11927c..666a6fe 100644 (file)
   \directlua{ltj.ext_get_parameter_binary('#1', \ltj@safe@num{#2})}%
 }
 
-%%%%%%%% \achar<number>, \kchar<number>
+%%%%%%%% \ltjalchar<number>, \ltjjachar<number>
 \let\ltj@@origchar=\char
-\protected\def\kchar{\afterassignment\ltj@@kchar\ltj@tempcnta}
-\def\ltj@@kchar{{%
+\protected\def\ltj@alljachar{\relax
     \csname ltj@kcat0\endcsname=0
     \csname ltj@kcat1\endcsname=0
     \csname ltj@kcat2\endcsname=0
     \csname ltj@kcat3\endcsname=0
     \csname ltj@kcat4\endcsname=0
     \csname ltj@kcat5\endcsname=0
-    \csname ltj@kcat6\endcsname=0
-    \ltj@@origchar\ltj@tempcnta}}
-\protected\def\achar{\afterassignment\ltj@@achar\ltj@tempcnta}
-\def\ltj@@achar{{%
+    \csname ltj@kcat6\endcsname=0 }
+\protected\def\ltj@allalchar{\relax
     \csname ltj@kcat0\endcsname="7FFFFFFF %"
     \csname ltj@kcat1\endcsname="7FFFFFFF %"
     \csname ltj@kcat2\endcsname="7FFFFFFF %"
     \csname ltj@kcat3\endcsname="7FFFFFFF %"
     \csname ltj@kcat4\endcsname="7FFFFFFF %"
     \csname ltj@kcat5\endcsname="7FFFFFFF %"
-    \csname ltj@kcat6\endcsname="7FFFFFFF %"
-    \ltj@@origchar\ltj@tempcnta}}
-
+    \csname ltj@kcat6\endcsname="7FFFFFFF }%"
+\protected\def\ltj@backup@kcat{\edef\ltj@restore@kcat{%
+    \csname ltj@kcat0\endcsname=\expandafter\the\csname ltj@kcat0\endcsname\relax
+    \csname ltj@kcat1\endcsname=\expandafter\the\csname ltj@kcat1\endcsname\relax
+    \csname ltj@kcat2\endcsname=\expandafter\the\csname ltj@kcat2\endcsname\relax
+    \csname ltj@kcat3\endcsname=\expandafter\the\csname ltj@kcat3\endcsname\relax
+    \csname ltj@kcat4\endcsname=\expandafter\the\csname ltj@kcat4\endcsname\relax
+    \csname ltj@kcat5\endcsname=\expandafter\the\csname ltj@kcat5\endcsname\relax
+    \csname ltj@kcat6\endcsname=\expandafter\the\csname ltj@kcat6\endcsname\relax}}
+\let\ltj@restore@kcat=\relax
+
+\protected\def\ltjjachar{\afterassignment\ltj@@kchar\ltj@tempcnta}
+\def\ltj@@kchar{{\directlua{tex.globaldefs = 0}\ltj@alljachar\ltj@@origchar\ltj@tempcnta}}
+\protected\def\ltjalchar{\afterassignment\ltj@@achar\ltj@tempcnta}
+\def\ltj@@achar{{\directlua{tex.globaldefs = 0}\ltj@allalchar\ltj@@origchar\ltj@tempcnta}}
 
 
 
index c4b8421..7e5bfd8 100644 (file)
@@ -15,7 +15,7 @@
  \else
   \ifcat \active\noexpand#8%
    \ifx\add@flag\@ne %
-    \expandafter\def\csname\UTFencname\string#8\endcsname{\achar"#1#2#3#4\relax}%
+    \expandafter\def\csname\UTFencname\string#8\endcsname{\ltjalchar"#1#2#3#4\relax}%
     \ifx\unDeFiNed@#8%
      \ifx\cf@encoding\UTFencname
       \DeclareTextCommand{#8}{OT1}{\undefined}%
@@ -46,7 +46,7 @@
    \ifx\add@flag\@ne %
     \edef\tmp@name{\expandafter\string\csname\UTFencname\endcsname
       \expandafter\string\csname#8\endcsname}%
-    \expandafter\def\csname\tmp@name\endcsname{\achar"#1#2#3#4\relax}%
+    \expandafter\def\csname\tmp@name\endcsname{\ltjalchar"#1#2#3#4\relax}%
     \ifx\cf@encoding\UTFencname
      \expandafter\DeclareTextCommand\expandafter
        {\csname#8\endcsname}{OT1}{\undefined}%
  \ifx @#4\relax
   \UTFacc@warning@{insufficient hex digits #7 for #6-\string#8#9}%
  \else
-  \def\UTFchar{\achar"#1#2#3#4\relax}%
+  \def\UTFchar{\ltjalchar"#1#2#3#4\relax}%
   \expandafter\expandafter\expandafter\declare@utf@composite
   \expandafter\expandafter\expandafter
    {\expandafter\csname#6\endcsname}{\UTFchar}{#8}{#9}\relax
  \fi}
-%\gdef\add@UTF@accent#1#2#3{#2\achar"#1\relax}
-\gdef\add@UTF@accent#1#2#3{\ifx\relax#2\relax\achar"#3\else
- \ifx\ #2\relax\achar"#3\else
- \expandafter\ifx\UTF@space#2\relax\achar"#3\else
- \ifx~#2\achar"#3\else#2\achar"#1\fi\fi\fi\fi\relax}
-\gdef\add@UTF@accents#1#2#3{#2\achar"#1\achar"#3\relax}
+%\gdef\add@UTF@accent#1#2#3{#2\ltjalchar"#1\relax}
+\gdef\add@UTF@accent#1#2#3{\ifx\relax#2\relax\ltjalchar"#3\else
+ \ifx\ #2\relax\ltjalchar"#3\else
+ \expandafter\ifx\UTF@space#2\relax\ltjalchar"#3\else
+ \ifx~#2\ltjalchar"#3\else#2\ltjalchar"#1\fi\fi\fi\fi\relax}
+\gdef\add@UTF@accents#1#2#3{#2\ltjalchar"#1\ltjalchar"#3\relax}
 }
 %% End of patch for xunicode.sty "
 
index bf24ba6..3d23d5f 100644 (file)
@@ -14,6 +14,8 @@ local ltb = luatexbase
 local tostring = tostring
 local node, table, tex, token = node, table, tex, token
 
+local cat_lp = luatexbase.catcodetables['latex-package']
+
 -------------------- 
 
 public_name = 'luatexja'
@@ -430,5 +432,12 @@ if not _M.debug or _M.debug == _G.debug then
   end
 end
 
+-------------------- getting next token
+cstemp = nil
+function get_cs(s)
+   cstemp = token.csname_name(token.get_next())
+   tex.sprint(cat_lp,'\\' .. s)
+end
+
 -------------------- all done
 -- EOF
index c83a6f6..150b008 100644 (file)
Binary files a/test/test09-fontspec.pdf and b/test/test09-fontspec.pdf differ
index a8a9c05..61ea15c 100644 (file)
 \subsection{unicode}
 
 設定依存:「\char"201C」「\char"010F」%"
-常に和文:「\kchar"201C」「\kchar"010F」%"
-常に欧文:「\achar"201C」「\achar"010F」%"
+常に和文:「\ltjjachar"201C」「\ltjjachar"010F」%"
+常に欧文:「\ltjalchar"201C」「\ltjalchar"010F」%"
 
-{\tracingall\let\char=\achar\textquotedblleft}あ\textquotedblleft あ%
-{\let\char=\kchar\textquotedblleft}あ“あ
+{\tracingall\let\char=\ltjalchar\textquotedblleft}あ\textquotedblleft あ%
+{\let\char=\ltjjachar\textquotedblleft}あ“あ
 
 \begin{itemize}
 \item hoge
 \begin{itemize}
-\item hoge\textendash\kchar"2013\achar"2013
+\item hoge\textendash\ltjjachar"2013\ltjalchar"2013
 \begin{itemize}
 \item hoge
 \begin{itemize}
-\item hoge\textperiodcentered\kchar"00B7\achar"00B7・
+\item hoge|\textperiodcentered|\ltjjachar"00B7|\ltjalchar"00B7|・|
 \end{itemize}
 \end{itemize}
 \end{itemize}