OSDN Git Service

Support \ltj@std(mc|gt)font and luatexja.cfg.
[luatex-ja/luatexja.git] / src / ltjsclasses / ltjspf.cls
index 7c4bde4..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
       &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup
     \tabskip\z@skip\cr
     }}
-\DeclareOption{disablejfam}{\@enablejfamfalse}
+\DeclareOption{disablejfam}{%
+  \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}}
 \newif\ifdraft
 \DeclareOption{draft}{\drafttrue \setlength\overfullrule{5pt}}
 \DeclareOption{final}{\draftfalse \setlength\overfullrule{0pt}}
-\newif\ifwinjis
-\winjisfalse
 \newif\ifmingoth
 \mingothfalse
 \newif\ifjisfont
 \jisfontfalse
-\newif\if@jsc@uplatex
-\@jsc@uplatexfalse
+\newif\ifptexjis
+\ptexjisfalse
+\DeclareOption{winjis}{%
+  \ClassWarningNoLine{\@currname}{The class option 'winjis' is obsolete}}
+\DeclareOption{uplatex}{%
+  \ClassWarningNoLine{\@currname}{The class option 'uplatex' is obsolete}}
 \DeclareOption{mingoth}{\mingothtrue}
-\DeclareOption{winjis}{\winjistrue}
+\DeclareOption{ptexjis}{\ptexjistrue}
 \DeclareOption{jis}{\jisfonttrue}
-\DeclareOption{uplatex}{\@jsc@uplatextrue\winjisfalse}
 \newif\ifpapersize
 \papersizefalse
 \DeclareOption{papersize}{\papersizetrue}
   \setlength\paperheight{\paperwidth}
   \setlength\paperwidth {\@tempdima}
 \fi
-\setlength{\@tempdima}{\paperwidth}
-\setlength{\@tempdimb}{\paperheight}
-\iftombow
-  \advance \@tempdima 2in
-  \advance \@tempdimb 2in
-\fi
-\setlength{\pdfpagewidth}{\@tempdima}
-\setlength{\pdfpageheight}{\@tempdimb}
 \def\n@baseline{14.554375}
 \def\inv@mag{1}
 \ifnum\@ptsize=-2
 \fi
 \setlength\paperwidth{\inv@mag\paperwidth}%
 \setlength\paperheight{\inv@mag\paperheight}%
+\setlength{\@tempdima}{\paperwidth}
+\setlength{\@tempdimb}{\paperheight}
+\iftombow
+  \advance \@tempdima 2in
+  \advance \@tempdimb 2in
+\fi
+\setlength{\pdfpagewidth}{\@tempdima}
+\setlength{\pdfpageheight}{\@tempdimb}
+\expandafter\let\csname JY3/mc/m/n/10\endcsname\relax
+\ifmingoth
+  \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] \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] \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}{}
 \DeclareFontShape{JY3}{gt}{bx}{n}{<->ssub*gt/m/n}{}
 \DeclareFontShape{JY3}{mc}{m}{it}{<->ssub*mc/m/n}{}
 \DeclareRobustCommand\ttfamily
         {\not@math@alphabet\ttfamily\mathtt
          \romanfamily\ttdefault\kanjifamily\gtdefault\selectfont}
-\def\textmc#1{\relax\ifmmode\hbox\fi{\mcfamily #1}}
-\def\textgt#1{\relax\ifmmode\hbox\fi{\gtfamily #1}}
-%% \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}}
+%%
+\AtBeginDocument{%
+  \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}
+  \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}%
 \ltjsetparameter{jaxspmode={`〒,2}}
 \ltjsetparameter{alxspmode={`+,3}}
 \ltjsetparameter{alxspmode={`\%,3}}
 \setlength{\oddsidemargin}{\paperwidth}
 \addtolength{\oddsidemargin}{-\fullwidth}
 \setlength{\oddsidemargin}{.5\oddsidemargin}
-\iftombow
-  \addtolength{\oddsidemargin}{-1in}
-\else
-  \addtolength{\oddsidemargin}{-\inv@mag in}
-\fi
+\addtolength{\oddsidemargin}{-1in}
 \setlength{\evensidemargin}{\oddsidemargin}
 \if@mparswitch
   \addtolength{\evensidemargin}{\fullwidth}
 \fi
 \setlength\marginparwidth{\paperwidth}
 \addtolength\marginparwidth{-\oddsidemargin}
-\addtolength\marginparwidth{-\inv@mag in}
+\addtolength\marginparwidth{-1in}
 \addtolength\marginparwidth{-\textwidth}
 \addtolength\marginparwidth{-1cm}
 \addtolength\marginparwidth{-\marginparsep}
 \addtolength\topmargin{-\headsep}
 \addtolength\topmargin{-\footskip}
 \setlength\topmargin{0.5\topmargin}
-\iftombow
-  \addtolength\topmargin{-1in}
-\else
-  \addtolength\topmargin{-\inv@mag in}
-\fi
+\addtolength\topmargin{-1in}
 {\footnotesize\global\setlength\footnotesep{\baselineskip}}
 \setlength\footnotesep{0.7\footnotesep}
 \setlength{\skip\footins}{16\p@ \@plus 5\p@ \@minus 2\p@}
         \begingroup \@svsechd \endgroup
         \unskip
         \@tempskipa #1\relax
-        \hskip -\@tempskipa
+        \hskip -\@tempskipa\@inhibitglue
       \else
         \clubpenalty \@clubpenalty
-        \everypar{\everyparhook}%
-      \fi\everyparhook}%
+        \everypar{}%
+      \fi}%
   \else
     \par \nobreak
     \vskip \@tempskipa
   \parindent 1\zw
   \noindent
   \llap{\@makefnmark\hskip0.3\zw}#1}
-\def\@inhibitglue{%
-  \futurelet\@let@token\@@inhibitglue}
-\def\@@inhibitglue{%
-  \ifx\@let@token「
-    \inhibitglue
-  \else
-    \ifx\@let@token(
-      \inhibitglue
-    \else
-      \ifx\@let@token『
-        \inhibitglue
-      \else
-        \ifx\@let@token[
-          \inhibitglue
-        \fi
-      \fi
-    \fi
-  \fi}
-\let\everyparhook=\@inhibitglue
-\AtBeginDocument{\everypar{\everyparhook}}
-\def\@doendpe{%
-  \@endpetrue
-  \def\par{%
-    \@restorepar\everypar{\everyparhook}\par\@endpefalse}%
-  \everypar{{\setbox\z@\lastbox}\everypar{\everyparhook}\@endpefalse\everyparhook}}
+\protected\def\@inhibitglue{\directlua{luatexja.jfmglue.create_beginpar_node()}}
 \def\@item[#1]{%
   \if@noparitem
     \@donoparitem
       \clubpenalty \@M
     \else
       \clubpenalty \@clubpenalty
-      \everypar{\everyparhook}%
-    \fi\everyparhook}%
+      \everypar{}%
+    \fi\@inhibitglue}%
   \if@noitemarg
     \@noitemargfalse
     \if@nmbrlist
     \fi
     \hskip \labelsep}%
   \ignorespaces}
-\def\@afterheading{%
-  \@nobreaktrue
-  \everypar{%
-    \if@nobreak
-      \@nobreakfalse
-      \clubpenalty \@M
-      \if@afterindent \else
-        {\setbox\z@\lastbox}%
-      \fi
-    \else
-      \clubpenalty \@clubpenalty
-      \everypar{\everyparhook}%
-    \fi\everyparhook}}
 \def\@gnewline #1{%
   \ifvmode
     \@nolnerr
     \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null
     \inhibitglue \ignorespaces
   \fi}
-\def\Shou#1{\hbox{$\m@th$%
+\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 日