X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjspf.cls;h=fefbdd21c2e77ba30051f09af32dca24e77cfd56;hb=0f0921ced2b53537326ad20ce546020b3cae2670;hp=7731e21384792e16773d048cfcfc16286fccc2e5;hpb=a00707b2e63677c80cd11953798fbf418b3800af;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjspf.cls b/src/ltjspf.cls index 7731e21..fefbdd2 100644 --- a/src/ltjspf.cls +++ b/src/ltjspf.cls @@ -38,7 +38,7 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{ltjspf} - [2016/08/03 ltjsclasses ] + [2017/03/06 ltjsclasses ] \def\jsc@clsname{ltjspf} \RequirePackage{luatexja} \newif\if@restonecol @@ -98,7 +98,6 @@ \newif\if@slide \@slidefalse \def\jsc@magscale{1} -\DeclareOption{slide}{\@slidetrue\def\jsc@magscale{3.583}\@landscapetrue\@titlepagetrue} \DeclareOption{8pt} {\def\jsc@magscale{0.833}}% 1.2^(-1) \DeclareOption{9pt} {\def\jsc@magscale{0.913}}% 1.2^(-0.5} \DeclareOption{10pt}{\def\jsc@magscale{1}} @@ -217,13 +216,18 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \DeclareOption{winjis}{% \ClassWarningNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `winjis' option}} \DeclareOption{uplatex}{% - \ClassWarningNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `uplatex' option}} + \ClassErrorNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `uplatex' option}} +\DeclareOption{autodetect-engine}{% + \ClassWarningNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `autodetect-engine' option}} \DeclareOption{mingoth}{\mingothtrue} \DeclareOption{ptexjis}{\ptexjistrue} \DeclareOption{jis}{\jisfonttrue} \newif\if@english \@englishfalse \DeclareOption{english}{\@englishtrue} +\newif\if@jslogo \@jslogotrue +\DeclareOption{jslogo}{\@jslogotrue} +\DeclareOption{nojslogo}{\@jslogofalse} \ExecuteOptions{a4paper,twoside,twocolumn,notitlepage,fleqn,final} \ProcessOptions \if@slide @@ -246,9 +250,10 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \ifdim\jsc@mpt=1.0954\p@ \renewcommand{\@ptsize}{1}\else \ifdim\jsc@mpt=1.2\p@ \renewcommand{\@ptsize}{2}\else \renewcommand{\@ptsize}{-20}\fi\fi -\if@ltjs@mag@xreal\RequirePackage{type1cm} +\if@ltjs@mag@xreal \ifdim\jsc@mpt=\p@\else \expandafter\let\csname OT1/cmr/m/n/10\endcsname\relax + \expandafter\let\csname TU/lmr/m/n/10\endcsname\relax \expandafter\let\csname OMX/cmex/m/n/10\endcsname\relax \newluafunction\ltjs@@magnify@font@calc \begingroup\catcode`\%=12\relax @@ -256,11 +261,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% local getdimen, mpt=tex.getdimen, tex.getdimen('jsc@mpt')/65536 local t = lua.get_functions_table() t[\the\ltjs@@magnify@font@calc] = function() - tex.sprint(math.floor(0.5+mpt*getdimen('dimen@'))) + tex.sprint(-2,math.floor(0.5+mpt*getdimen('dimen@'))) end function luatexja.ltjs_unmagnify_fsize(a) local s = luatexja.print_scaled(math.floor(0.5+a/mpt*65536)) - tex.sprint( (s:match('%.0$')) and s:sub(1,-3) or s ) + tex.sprint(-2, (s:match('%.0$')) and s:sub(1,-3) or s ) end } \endgroup @@ -268,7 +273,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \def\@tempa{#1}\def\@tempb{#2}% \ifx\@tempb\@empty \edef\@tempb{ scaled\directlua{% - tex.sprint(math.floor(0.5+\jsc@magscale*1000)) + tex.sprint(-2,math.floor(0.5+\jsc@magscale*1000)) }}% \else \dimen@\@tempb\relax @@ -286,20 +291,31 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \expandafter\endgroup\@tempa } \fi\fi -\newlength{\stockwidth} -\newlength{\stockheight} -\setlength{\stockwidth}{\paperwidth} -\setlength{\stockheight}{\paperheight} +\def\jsc@smallskip{\vspace\jsc@smallskipamount} +\newskip\jsc@smallskipamount +\jsc@smallskipamount=3\jsc@mpt plus 1\jsc@mpt minus 1\jsc@mpt \iftombow + \newlength{\stockwidth} + \newlength{\stockheight} + \setlength{\stockwidth}{\paperwidth} + \setlength{\stockheight}{\paperheight} \advance \stockwidth 2in \advance \stockheight 2in -\fi -\ifdefined\pdfpagewidth - \setlength{\pdfpagewidth}{\stockwidth} - \setlength{\pdfpageheight}{\stockheight} + \ifdefined\pdfpagewidth + \setlength{\pdfpagewidth}{\stockwidth} + \setlength{\pdfpageheight}{\stockheight} + \else + \setlength{\pagewidth}{\stockwidth} + \setlength{\pageheight}{\stockheight} + \fi \else - \setlength{\pagewidth}{\stockwidth} - \setlength{\pageheight}{\stockheight} + \ifdefined\pdfpagewidth + \setlength{\pdfpagewidth}{\paperwidth} + \setlength{\pdfpageheight}{\paperheight} + \else + \setlength{\pagewidth}{\paperwidth} + \setlength{\pageheight}{\paperheight} + \fi \fi \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax \ifmingoth @@ -458,11 +474,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \@lowpenalty 51 \@medpenalty 151 \@highpenalty 301 -\setlength\topskip{10\jsc@mpt} +\setlength\topskip{1.38\zh}%% from 10\jsc@mpt (2016-08-17) \if@slide \setlength\headheight{0\jsc@mpt} \else - \setlength\headheight{2\topskip} + \setlength\headheight{20\jsc@mpt}%% from 2\topskip (2016-08-17); from \topskip (2003-06-26) \fi \setlength\footskip{9\jsc@mmm} \setlength\headsep{9\jsc@mmm} @@ -504,7 +520,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \if@slide \addtolength\topmargin{-\headheight} \else - \addtolength\topmargin{-\topskip} + \addtolength\topmargin{-10\jsc@mpt}%% from -\topskip (2016-10-08); from -\headheight (2003-06-26) \fi \addtolength\topmargin{-\headsep} \addtolength\topmargin{-\footskip} @@ -711,7 +727,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \begingroup \@svsechd \endgroup \unskip \@tempskipa #1\relax - \hskip -\@tempskipa\@inhibitglue + \hskip -\@tempskipa\ltjfakeparbegin \else \clubpenalty \@clubpenalty \everypar{}% @@ -722,7 +738,9 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \@afterheading \fi \if@slide - {\vskip-6\jsc@mpt\maybeblue\hrule height0\jsc@mpt depth1\jsc@mpt\vskip7\jsc@mpt\relax}% + {\vskip\if@twocolumn-5\jsc@mpt\else-6\jsc@mpt\fi + \maybeblue\hrule height0\jsc@mpt depth1\jsc@mpt + \vskip\if@twocolumn 4\jsc@mpt\else 7\jsc@mpt\fi\relax} \fi \par % 2000-12-18 \ignorespaces} @@ -808,7 +826,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \fi \if@twocolumn \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% - {\z@}{\z@}% + {\z@}{\if@slide .4\Cvs \else \z@ \fi}% {\normalfont\normalsize\headfont}} \else \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% @@ -818,27 +836,33 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \fi \if@twocolumn \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% - {\z@}{\z@}% + {\z@}{\if@slide .4\Cvs \else \z@ \fi}% {\normalfont\normalsize\headfont}} \else \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% {\Cvs \@plus.5\Cdp \@minus.2\Cdp}% - {\z@}% + {\if@slide .5\Cvs \@plus.3\Cdp \else \z@ \fi}% {\normalfont\normalsize\headfont}} \fi \if@twocolumn \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% - {\z@}{-1\zw}% 改行せず 1\zw のアキ + {\z@}{\if@slide .4\Cvs \else -1\zw\fi}% 改行せず 1\zw のアキ {\normalfont\normalsize\headfont}} \else \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% {0.5\Cvs \@plus.5\Cdp \@minus.2\Cdp}% - {-1\zw}% 改行せず 1\zw のアキ + {\if@slide .5\Cvs \@plus.3\Cdp \else -1\zw\fi}% 改行せず 1\zw のアキ + {\normalfont\normalsize\headfont}} +\fi +\if@twocolumn + \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% + {\z@}{\if@slide .4\Cvs \@plus.3\Cdp \else -1\zw\fi}% + {\normalfont\normalsize\headfont}} +\else + \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% + {\z@}{\if@slide .5\Cvs \@plus.3\Cdp \else -1\zw\fi}% {\normalfont\normalsize\headfont}} \fi -\newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% - {\z@}{-1\zw}% - {\normalfont\normalsize\headfont}} \if@slide \setlength\leftmargini{1\zw} \else @@ -950,7 +974,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \@restonecolfalse\newpage \fi \thispagestyle{empty}% - \setcounter{page}\@ne + \ifodd\c@page\setcounter{page}\@ne\else\setcounter{page}\z@\fi }% {\if@restonecol\twocolumn \else \newpage \fi \if@twoside\else @@ -1208,10 +1232,6 @@ class has defined the old font commands like\MessageBreak \def\footnote{\inhibitglue\footnotes@ve} \let\footnotemarks@ve=\footnotemark \def\footnotemark{\inhibitglue\footnotemarks@ve} -\renewcommand\@makefnmark{% - \unless\ifnum\ltjgetparameter{direction}=3 - \hbox{}\hbox{\@textsuperscript{\normalfont\@thefnmark}}\hbox{}% - \else\hbox{\yoko \@textsuperscript{\normalfont\@thefnmark}}\fi} \def\thefootnote{\ifnum\c@footnote>\z@\leavevmode\lower.5ex\hbox{*}\@arabic\c@footnote\fi} \renewcommand{\footnoterule}{% \kern-3\jsc@mpt @@ -1241,7 +1261,7 @@ class has defined the old font commands like\MessageBreak \parindent 1\zw \noindent \llap{\@makefnmark\hskip0.3\zw}#1} -\protected\def\@inhibitglue{\directlua{luatexja.jfmglue.create_beginpar_node()}} +\let\@inhibitglue=\ltjfakeparbegin \def\@item[#1]{% \if@noparitem \@donoparitem @@ -1284,7 +1304,7 @@ class has defined the old font commands like\MessageBreak \else \clubpenalty \@clubpenalty \everypar{}% - \fi\@inhibitglue}% + \fi\ltjfakeparbegin}% \if@noitemarg \@noitemargfalse \if@nmbrlist @@ -1309,19 +1329,20 @@ class has defined the old font commands like\MessageBreak \@nolnerr \else \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null - \inhibitglue \ignorespaces + \inhibitglue\ignorespaces \fi} -\IfFileExists{jslogo.sty}{% +\IfFileExists{jslogo.sty}{}{\@jslogofalse}% +\if@jslogo \RequirePackage{jslogo} \def\小{\jslg@small} \def\上小{\jslg@uppersmall} -}{% -\def\小##1{\hbox{$\m@th$% +\else +\def\小#1{\hbox{$\m@th$% \csname S@\f@size\endcsname \fontsize\sf@size\z@ \math@fontsfalse\selectfont - ##1}} -\def\上小##1{{\sbox\z@ T\vbox to\ht0{\小{##1}\vss}}} + #1}} +\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\@ @@ -1446,7 +1467,7 @@ class has defined the old font commands like\MessageBreak \ifx\f@family\cmr\kern-.08em\else\kern-.15em\fi\TeX} \DeclareRobustCommand{\SliTeX}{% S\kern-.06emL\kern-.18em\上小{I}\kern -.03em\TeX} -} +\fi \newcommand{\prepartname}{\if@english Part~\else 第\fi} \newcommand{\postpartname}{\if@english\else 部\fi} \newcommand{\presectionname}{}% 第 @@ -1485,6 +1506,8 @@ class has defined the old font commands like\MessageBreak \hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script} \pagestyle{headings} \pagenumbering{arabic} +\fnfixbottomtrue % 2017-02-19 +\IfFileExists{stfloats.sty}{\RequirePackage{stfloats}\fnbelowfloat}{} \if@twocolumn \twocolumn \sloppy @@ -1498,7 +1521,7 @@ class has defined the old font commands like\MessageBreak \renewcommand\familydefault{\sfdefault} \raggedright \ltj@setpar@global - \ltjsetxkanjiskip{0.1em}\relax + \ltjsetxkanjiskip0.1em\relax \fi \endinput %%