OSDN Git Service

Support \ltj@std(mc|gt)font and luatexja.cfg.
[luatex-ja/luatexja.git] / src / ltjsclasses / ltjspf.cls
index 47c788f..facc1d4 100644 (file)
@@ -38,7 +38,7 @@
 %%   Right brace   \}     Tilde         \~}
 \NeedsTeXFormat{LaTeX2e}
 \ProvidesClass{ltjspf}
-  [2011/10/03 ]
+  [2013/06/06 ]
 \RequirePackage{luatexja}
 \newif\if@restonecol
 \newif\if@titlepage
 \setlength{\pdfpageheight}{\@tempdimb}
 \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax
 \ifmingoth
-  \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] psft:Ryumin-Light:jfm=min}{}
-  \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] psft:GothicBBB-Medium:jfm=min}{}
+  \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] \ltj@stdmcfont:jfm=min}{}
+  \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] \ltj@stdgtfont:jfm=min}{}
 \else
   \ifptexjis
-    \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] psft:Ryumin-Light:jfm=jis}{}
-    \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] psft:GothicBBB-Medium:jfm=jis}{}
+    \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] \ltj@stdmcfont:jfm=jis}{}
+    \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] \ltj@stdgtfont:jfm=jis}{}
   \else
-    \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] psft:Ryumin-Light:jfm=ujis}{}
-    \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] psft:GothicBBB-Medium:jfm=ujis}{}
+    \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.903375] \ltj@stdmcfont:jfm=ujis}{}
+    \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.903375] \ltj@stdgtfont:jfm=ujis}{}
   \fi
 \fi
 \DeclareFontShape{JY3}{mc}{bx}{n}{<->ssub*gt/m/n}{}
         {\not@math@alphabet\ttfamily\mathtt
          \romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
 %%
-\def\reDeclareMathAlphabet#1#2#3{%
-  \edef\@tempa{\expandafter\@gobble\string#2}%
-  \edef\@tempb{\expandafter\@gobble\string#3}%
-  \edef\@tempc{\string @\expandafter\@gobbletwo\string#2}%
-  \ifx\@tempc\@tempa%
-    \edef\@tempa{\expandafter\@gobbletwo\string#2}%
-    \edef\@tempb{\expandafter\@gobbletwo\string#3}%
-  \fi
-  \begingroup
-    \let\protect\noexpand
-    \def\@tempaa{\relax}%
-    \expandafter\ifx\csname RDMAorg@\@tempa\endcsname\relax
-      \edef\@tempaa{\expandafter\def\expandafter\noexpand%
-        \csname RDMAorg@\@tempa\endcsname{%
-          \expandafter\noexpand\csname\@tempa\endcsname}}%
-    \fi
-    \def\@tempbb{\relax}%
-    \expandafter\ifx\csname RDMAorg@\@tempb\endcsname\relax
-      \edef\@tempbb{\expandafter\def\expandafter\noexpand%
-        \csname RDMAorg@\@tempb\endcsname{%
-          \expandafter\noexpand\csname\@tempb\endcsname}}%
-    \fi
-    \edef\@tempc{\@tempaa\@tempbb}%
-  \expandafter\endgroup\@tempc%
-  \edef#1{\noexpand\protect\expandafter\noexpand\csname%
-    \expandafter\@gobble\string#1\space\space\endcsname}%
-  \expandafter\edef\csname\expandafter\@gobble\string#1\space\space\endcsname%
-    {\noexpand\DualLang@mathalph@bet%
-      {\expandafter\noexpand\csname RDMAorg@\@tempa\endcsname}%
-      {\expandafter\noexpand\csname RDMAorg@\@tempb\endcsname}%
-  }%
-}
-\@onlypreamble\reDeclareMathAlphabet
-\def\DualLang@mathalph@bet#1#2{%
-  \relax\ifmmode
-    \ifx\math@bgroup\bgroup%     2e normal style     (\mathrm{...})
-      \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard
-    \else
-      \ifx\math@bgroup\relax%    2e two letter style (\rm->\mathrm)
-        \let\DualLang@Mfontsw\DLMfontsw@oldstyle
-      \else
-        \ifx\math@bgroup\@empty% 2.09 oldlfont style ({\mathrm ...})
-          \let\DualLang@Mfontsw\DLMfontsw@oldlfont
-        \else%                   panic! assume 2e normal style
-          \bgroup\let\DualLang@Mfontsw\DLMfontsw@standard
-        \fi
-      \fi
-    \fi
-  \else
-    \let\DualLang@Mfontsw\@firstoftwo
-  \fi
-  \DualLang@Mfontsw{#1}{#2}%
-}
-\def\DLMfontsw@standard#1#2#3{#1{#2{#3}}\egroup}
-\def\DLMfontsw@oldstyle#1#2{#1\relax\@fontswitch\relax{#2}}
-\def\DLMfontsw@oldlfont#1#2{#1\relax#2\relax}
-\if@compatibility\else
-  \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n}
-  \DeclareSymbolFontAlphabet{\mathmc}{mincho}
-  \SetSymbolFont{mincho}{bold}{JY3}{gt}{m}{n}
-  \jfam\symmincho
-  \DeclareMathAlphabet{\mathgt}{JY3}{gt}{m}{n}
-\fi
 \AtBeginDocument{%
-  \reDeclareMathAlphabet{\mathrm}{\@mathrm}{\@mathmc}
-  \reDeclareMathAlphabet{\mathbf}{\@mathbf}{\@mathgt}}
+  \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+  \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
 \ltjsetparameter{jaxspmode={`〒,2}}
 \ltjsetparameter{alxspmode={`+,3}}
 \ltjsetparameter{alxspmode={`\%,3}}
         \begingroup \@svsechd \endgroup
         \unskip
         \@tempskipa #1\relax
-        \hskip -\@tempskipa
+        \hskip -\@tempskipa\@inhibitglue
       \else
         \clubpenalty \@clubpenalty
         \everypar{}%
   \parindent 1\zw
   \noindent
   \llap{\@makefnmark\hskip0.3\zw}#1}
-\def\Shou#1{\hbox{$\m@th$%
+\protected\def\@inhibitglue{\directlua{luatexja.jfmglue.create_beginpar_node()}}
+\def\@item[#1]{%
+  \if@noparitem
+    \@donoparitem
+  \else
+    \if@inlabel
+      \indent \par
+    \fi
+    \ifhmode
+      \unskip\unskip \par
+    \fi
+    \if@newlist
+      \if@nobreak
+        \@nbitem
+      \else
+        \addpenalty\@beginparpenalty
+        \addvspace\@topsep
+        \addvspace{-\parskip}%
+      \fi
+    \else
+      \addpenalty\@itempenalty
+      \addvspace\itemsep
+    \fi
+    \global\@inlabeltrue
+  \fi
+  \everypar{%
+    \@minipagefalse
+    \global\@newlistfalse
+    \if@inlabel
+      \global\@inlabelfalse
+      {\setbox\z@\lastbox
+       \ifvoid\z@
+         \kern-\itemindent
+       \fi}%
+      \box\@labels
+      \penalty\z@
+    \fi
+    \if@nobreak
+      \@nobreakfalse
+      \clubpenalty \@M
+    \else
+      \clubpenalty \@clubpenalty
+      \everypar{}%
+    \fi\@inhibitglue}%
+  \if@noitemarg
+    \@noitemargfalse
+    \if@nmbrlist
+      \refstepcounter\@listctr
+    \fi
+  \fi
+  \sbox\@tempboxa{\makelabel{#1}}%
+  \global\setbox\@labels\hbox{%
+    \unhbox\@labels
+    \hskip \itemindent
+    \hskip -\labelwidth
+    \hskip -\labelsep
+    \ifdim \wd\@tempboxa >\labelwidth
+      \box\@tempboxa
+    \else
+      \hbox to\labelwidth {\unhbox\@tempboxa}%
+    \fi
+    \hskip \labelsep}%
+  \ignorespaces}
+\def\@gnewline #1{%
+  \ifvmode
+    \@nolnerr
+  \else
+    \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null
+    \inhibitglue \ignorespaces
+  \fi}
+\def\小#1{\hbox{$\m@th$%
   \csname S@\f@size\endcsname
   \fontsize\sf@size\z@
   \math@fontsfalse\selectfont
   #1}}
-\def\UeShou#1{{\sbox\z@ T\vbox to\ht0{\Shou{#1}\vss}}}
+\def\上小#1{{\sbox\z@ T\vbox to\ht0{\小{#1}\vss}}}
 \def\cmrTeX{%
   \ifdim \fontdimen\@ne\font >\z@
     T\kern-.25em\lower.5ex\hbox{E}\kern-.125emX\@
   \fi}
 \def\cmrLaTeX{%
   \ifdim \fontdimen\@ne\font >\z@
-    L\kern-.32em\UeShou{A}\kern-.22em\cmrTeX
+    L\kern-.32em\上小{A}\kern-.22em\cmrTeX
   \else
-    L\kern-.36em\UeShou{A}\kern-.15em\cmrTeX
+    L\kern-.36em\上小{A}\kern-.15em\cmrTeX
   \fi}
 \def\sfTeX{T\kern-.1em\lower.4ex\hbox{E}\kern-.07emX\@}
-\def\sfLaTeX{L\kern-.25em\UeShou{A}\kern-.08em\sfTeX}
+\def\sfLaTeX{L\kern-.25em\上小{A}\kern-.08em\sfTeX}
 \def\ptmTeX{%
   \ifdim \fontdimen\@ne\font >\z@
     T\kern-.12em\lower.37ex\hbox{E}\kern-.02emX\@
   \fi}
 \def\ptmLaTeX{%
   \ifdim \fontdimen\@ne\font >\z@
-    L\kern-.2em\UeShou{A}\kern-.1em\ptmTeX
+    L\kern-.2em\上小{A}\kern-.1em\ptmTeX
   \else
-    L\kern-.3em\UeShou{A}\kern-.1em\ptmTeX
+    L\kern-.3em\上小{A}\kern-.1em\ptmTeX
   \fi}
 \def\pncTeX{%
   \ifdim \fontdimen\@ne\font >\z@
   \fi}
 \def\pncLaTeX{%
   \ifdim \fontdimen\@ne\font >\z@
-    L\kern-.3em\UeShou{A}\kern-.1em\pncTeX
+    L\kern-.3em\上小{A}\kern-.1em\pncTeX
   \else
-    L\kern-.3em\UeShou{A}\kern-.1em\pncTeX
+    L\kern-.3em\上小{A}\kern-.1em\pncTeX
   \fi}
 \def\pplTeX{%
   \ifdim \fontdimen\@ne\font >\z@
   \fi}
 \def\pplLaTeX{%
   \ifdim \fontdimen\@ne\font >\z@
-    L\kern-.27em\UeShou{A}\kern-.12em\pplTeX
+    L\kern-.27em\上小{A}\kern-.12em\pplTeX
   \else
-    L\kern-.3em\UeShou{A}\kern-.15em\pplTeX
+    L\kern-.3em\上小{A}\kern-.15em\pplTeX
   \fi}
 \def\ugmTeX{%
   \ifdim \fontdimen\@ne\font >\z@
   \fi}
 \def\ugmLaTeX{%
   \ifdim \fontdimen\@ne\font >\z@
-    L\kern-.2em\UeShou{A}\kern-.13em\ugmTeX
+    L\kern-.2em\上小{A}\kern-.13em\ugmTeX
   \else
-    L\kern-.3em\UeShou{A}\kern-.13em\ugmTeX
+    L\kern-.3em\上小{A}\kern-.13em\ugmTeX
   \fi}
 \DeclareRobustCommand{\TeX}{%
   \def\@tempa{cmr}%
 \def\pLaTeX{p\LaTeX}
 \def\pLaTeXe{p\LaTeXe}
 \def\AmSTeX{\protect\AmS-\protect\TeX{}}
-\DeclareRobustCommand{\BibTeX}{B\kern-.05em\Shou{I\kern-.025em B}%
+\DeclareRobustCommand{\BibTeX}{B\kern-.05em\{I\kern-.025em B}%
   \ifx\f@family\cmr\kern-.08em\else\kern-.15em\fi\TeX}
 \DeclareRobustCommand{\SliTeX}{%
-  S\kern-.06emL\kern-.18em\UeShou{I}\kern -.03em\TeX}
+  S\kern-.06emL\kern-.18em\上小{I}\kern -.03em\TeX}
 \newcommand{\prepartname}{\if@english Part~\else 第\fi}
 \newcommand{\postpartname}{\if@english\else 部\fi}
 \newcommand{\presectionname}{}%  第
 \newcommand{\tablename}{Table~}
 \newcommand{\appendixname}{\if@english Appendix~\else 付録\fi}
 \newcommand{\abstractname}{\if@english Abstract\else 概要\fi}
-\newif\ifSeireki \Seirekitrue
-\def\Seireki{\Seirekitrue}
-\def\Wareki{\Seirekifalse}
+\newif\if西暦 \西暦true
+\def\西暦{\西暦true}
+\def\和暦{\西暦false}
 \newcount\heisei \heisei\year \advance\heisei-1988\relax
 \def\today{%
   \if@english
       July\or August\or September\or October\or November\or December\fi
       \space\number\day, \number\year
   \else
-    \ifSeireki
+    \if西暦
       \number\year 年
       \number\month 月
       \number\day 日