X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjarticle.cls;h=3a08f1680c03054c67c8ddebf6e024ee34354cae;hb=3fae82d64b193c794fdf2f1262d80bddc98ce5a8;hp=a0d58f182296104d00c2d4ea0dfa42206c207107;hpb=3c2f5346fa635e1423ccd51441927a754e26a392;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjarticle.cls b/src/ltjarticle.cls index a0d58f1..3a08f16 100644 --- a/src/ltjarticle.cls +++ b/src/ltjarticle.cls @@ -21,25 +21,9 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) %% File: ltjclasses.dtx -%% \CharacterTable -%% {Upper-case \A\B\C\D\E\F\G\H\I\J\K\L\M\N\O\P\Q\R\S\T\U\V\W\X\Y\Z -%% Lower-case \a\b\c\d\e\f\g\h\i\j\k\l\m\n\o\p\q\r\s\t\u\v\w\x\y\z -%% Digits \0\1\2\3\4\5\6\7\8\9 -%% Exclamation \! Double quote \" Hash (number) \# -%% Dollar \$ Percent \% Ampersand \& -%% Acute accent \' Left paren \( Right paren \) -%% Asterisk \* Plus \+ Comma \, -%% Minus \- Point \. Solidus \/ -%% Colon \: Semicolon \; Less than \< -%% Equals \= Greater than \> Question mark \? -%% Commercial at \@ Left bracket \[ Backslash \\ -%% Right bracket \] Circumflex \^ Underscore \_ -%% Grave accent \` Left brace \{ Vertical bar \| -%% Right brace \} Tilde \~} -%% \NeedsTeXFormat{LaTeX2e} \ProvidesClass{ltjarticle} - [2013/06/06 v1.6-ltj-2 + [2018/10/08 v1.8-ltj-16 Standard LuaLaTeX-ja class] \RequirePackage{luatexja} \newcounter{@paper} @@ -104,8 +88,8 @@ \tombowtrue \tombowdatetrue \setlength{\@tombowwidth}{.1\p@}% \@bannertoken{% - \jobname\space:\space\number\year/\number\month/\number\day - (\number\hour:\number\minute)} + \jobname\space(\number\year-\two@digits\month-\two@digits\day + \space\two@digits\hour:\two@digits\minute)}% \maketombowbox} \DeclareOption{tombo}{% \tombowtrue \tombowdatefalse @@ -115,10 +99,9 @@ \tombowtrue \tombowdatefalse \setlength{\@tombowwidth}{\z@}% \maketombowbox} -%% \DeclareOption{tate}{% -%% \AtBeginDocument{\tate\message{《縦組モード》}% -%% \adjustbaseline}% -%% } +\DeclareOption{tate}{% + \tate\AtBeginDocument{\message{《縦組モード》}\adjustbaseline}% +} \DeclareOption{oneside}{\@twosidefalse} \DeclareOption{twoside}{\@twosidetrue} \DeclareOption{onecolumn}{\@twocolumnfalse} @@ -139,15 +122,10 @@ \if@compatibility \@mathrmmctrue \else - \DeclareOption{disablejfam}{% - \ClassWarningNoLine{\@currname}{The class option 'disablejfam' is obsolete}} \DeclareOption{mathrmmc}{\@mathrmmctrue} \fi \DeclareOption{draft}{\setlength\overfullrule{5pt}} \DeclareOption{final}{\setlength\overfullrule{0pt}} -\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final} -\ProcessOptions\relax -\input{ltjsize1\@ptsize.clo} \directlua{luatexbase.add_to_callback('luatexja.load_jfm', function (ji, jn) ji.chars['parbdd'] = 0; return ji end, 'ltj.jclasses_load_jfm', 1)} @@ -157,20 +135,39 @@ \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.962216] \ltj@stdgtfont:jfm=min;jfmvar=goth}{} \ltjglobalsetparameter{differentjfm=both} \directlua{luatexbase.remove_from_callback('luatexja.load_jfm', 'ltj.jclasses_load_jfm')} +\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final} +\ProcessOptions\relax +\input{ltjsize1\@ptsize.clo} +\def\Cjascale{0.962216} \if@stysize \setlength\columnsep{2\Cwd} \else \setlength\columnsep{10\p@} \fi \setlength\columnseprule{0\p@} -\setlength{\@tempdima}{\paperwidth} -\setlength{\@tempdimb}{\paperheight} \iftombow - \advance \@tempdima 2in - \advance \@tempdimb 2in + \newlength{\stockwidth} + \newlength{\stockheight} + \setlength{\stockwidth}{\paperwidth} + \setlength{\stockheight}{\paperheight} + \advance \stockwidth 2in + \advance \stockheight 2in + \ifdefined\pdfpagewidth + \setlength{\pdfpagewidth}{\stockwidth} + \setlength{\pdfpageheight}{\stockheight} + \else + \setlength{\pagewidth}{\stockwidth} + \setlength{\pageheight}{\stockheight} + \fi +\else + \ifdefined\pdfpagewidth + \setlength{\pdfpagewidth}{\paperwidth} + \setlength{\pdfpageheight}{\paperheight} + \else + \setlength{\pagewidth}{\paperwidth} + \setlength{\pageheight}{\paperheight} + \fi \fi -\setlength{\pdfpagewidth}{\@tempdima} -\setlength{\pdfpageheight}{\@tempdimb} \setlength\lineskip{1\p@} \setlength\normallineskip{1\p@} \renewcommand{\baselinestretch}{} @@ -189,6 +186,26 @@ \renewcommand{\floatpagefraction}{.5} \renewcommand{\dbltopfraction}{.7} \renewcommand{\dblfloatpagefraction}{.5} +\def\pltx@cleartorightpage{\clearpage\if@twoside + \unless\ifodd\numexpr\c@page+\ltjgetparameter{direction}\relax + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} +\def\pltx@cleartoleftpage{\clearpage\if@twoside + \ifodd\numexpr\c@page+\ltjgetparameter{direction}\relax + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} +\def\pltx@cleartooddpage{\clearpage\if@twoside + \ifodd\c@page\else + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} +\def\pltx@cleartoevenpage{\clearpage\if@twoside + \ifodd\c@page + \hbox{}\thispagestyle{empty}\newpage + \if@twocolumn\hbox{}\newpage\fi + \fi\fi} \def\ps@plain{\let\@mkboth\@gobbletwo \let\ps@jpl@in\ps@plain \let\@oddhead\@empty @@ -280,7 +297,7 @@ \@restonecolfalse\newpage \fi \thispagestyle{empty}% - \setcounter{page}\@ne + \ifodd\c@page\setcounter{page}\@ne\else\setcounter{page}\z@\fi %% 2017/02/15 }% {\if@restonecol\twocolumn \else \newpage \fi \if@twoside\else @@ -290,7 +307,7 @@ \fi \def\p@thanks#1{\footnotemark \protected@xdef\@thanks{\@thanks - \protect{\noindent$\m@th^\thefootnote$~#1\protect\par}}} + \protect{\noindent\hbox{\yoko$\m@th^\thefootnote$}#1\protect\par}}} \if@titlepage \newcommand{\maketitle}{\begin{titlepage}% \let\footnotesize\small @@ -328,10 +345,10 @@ \newcommand{\maketitle}{\par \begingroup \renewcommand{\thefootnote}{\fnsymbol{footnote}}% - \def\@makefnmark{\hbox{\ifydir $\m@th^{\@thefnmark}$ + \def\@makefnmark{\hbox{\unless\ifnum\ltjgetparameter{direction}=3 $\m@th^{\@thefnmark}$ \else\hbox{\yoko$\m@th^{\@thefnmark}$}\fi}}% \long\def\@makefntext##1{\parindent 1em\noindent - \hbox to1.8em{\hss$\m@th^{\@thefnmark}$}##1}% + \hb@xt@1.8em{\hss$\m@th^{\@thefnmark}$}##1}% \if@twocolumn \ifnum \col@number=\@ne \@maketitle \else \twocolumn[\@maketitle]% @@ -346,6 +363,7 @@ \setcounter{footnote}{0}% \global\let\thanks\relax \global\let\maketitle\relax + \global\let\@maketitle\relax \global\let\p@thanks\relax \global\let\@thanks\@empty \global\let\@author\@empty @@ -411,7 +429,9 @@ \thesubsubsection.\@arabic\c@paragraph} \renewcommand{\thesubparagraph}{% \theparagraph.\@arabic\c@subparagraph} -\newcommand{\part}{\par\addvspace{4ex}% +\newcommand{\part}{% + \if@noskipsec \leavevmode \fi + \par\addvspace{4ex}% \@afterindenttrue \secdef\@part\@spart} \def\@part[#1]#2{% @@ -424,7 +444,7 @@ \fi \markboth{}{}% {\parindent\z@\raggedright - \interlinepenalty\@M\reset@font + \interlinepenalty\@M\normalfont \ifnum \c@secnumdepth >\m@ne \Large\bfseries\prepartname\thepart\postpartname \par\nobreak @@ -433,29 +453,29 @@ \nobreak\vskip3ex\@afterheading} \def\@spart#1{{% \parindent\z@\raggedright - \interlinepenalty\@M\reset@font + \interlinepenalty\@M\normalfont \huge\bfseries#1\par}% \nobreak\vskip3ex\@afterheading} \newcommand{\section}{\@startsection{section}{1}{\z@}% {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}% {.5\Cvs \@plus.3\Cvs}% - {\reset@font\Large\bfseries}} + {\normalfont\Large\bfseries}} \newcommand{\subsection}{\@startsection{subsection}{2}{\z@}% {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}% {.5\Cvs \@plus.3\Cvs}% - {\reset@font\large\bfseries}} + {\normalfont\large\bfseries}} \newcommand{\subsubsection}{\@startsection{subsubsection}{3}{\z@}% {1.5\Cvs \@plus.5\Cvs \@minus.2\Cvs}% {.5\Cvs \@plus.3\Cvs}% - {\reset@font\normalsize\bfseries}} + {\normalfont\normalsize\bfseries}} \newcommand{\paragraph}{\@startsection{paragraph}{4}{\z@}% {3.25ex \@plus 1ex \@minus .2ex}% {-1em}% - {\reset@font\normalsize\bfseries}} + {\normalfont\normalsize\bfseries}} \newcommand{\subparagraph}{\@startsection{subparagraph}{5}{\z@}% {3.25ex \@plus 1ex \@minus .2ex}% {-1em}% - {\reset@font\normalsize\bfseries}} + {\normalfont\normalsize\bfseries}} \newcommand{\appendix}{\par \setcounter{section}{0}% \setcounter{subsection}{0}% @@ -496,8 +516,8 @@ {\ifnum \@enumdepth >\thr@@\@toodeep\else \advance\@enumdepth\@ne \edef\@enumctr{enum\romannumeral\the\@enumdepth}% - \list{\csname label\@enumctr\endcsname}{% - \iftdir + \expandafter \list \csname label\@enumctr\endcsname{% + \ifnum\ltjgetparameter{direction}=3 \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip \else\topsep\z@\fi \parskip\z@ \itemsep\z@ \parsep\z@ @@ -511,7 +531,7 @@ \fi}{\endlist} \newcommand{\labelitemi}{\textbullet} \newcommand{\labelitemii}{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 {\textcircled{~}} \else {\normalfont\bfseries\textendash} @@ -523,9 +543,8 @@ {\ifnum \@itemdepth >\thr@@\@toodeep\else \advance\@itemdepth\@ne \edef\@itemitem{labelitem\romannumeral\the\@itemdepth}% - \expandafter - \list{\csname \@itemitem\endcsname}{% - \iftdir + \expandafter \list \csname \@itemitem\endcsname{% + \ifnum\ltjgetparameter{direction}=3 \ifnum \@listdepth=\@ne \topsep.5\normalbaselineskip \else\topsep\z@\fi \parskip\z@ \itemsep\z@ \parsep\z@ @@ -538,7 +557,7 @@ \fi}{\endlist} \newenvironment{description} {\list{}{\labelwidth\z@ \itemindent-\leftmargin - \iftdir + \ifnum\ltjgetparameter{direction}=3 \leftmargin\leftskip \advance\leftmargin3\Cwd \rightmargin\rightskip \labelsep=1\zw \itemsep\z@ @@ -592,15 +611,15 @@ \setlength\belowcaptionskip{0\p@} \long\def\@makecaption#1#2{% \vskip\abovecaptionskip - \iftdir\sbox\@tempboxa{#1\hskip1\zw#2}% + \ifnum\ltjgetparameter{direction}=3 \sbox\@tempboxa{#1\hskip1\zw#2}% \else\sbox\@tempboxa{#1: #2}% \fi \ifdim \wd\@tempboxa >\hsize - \iftdir #1\hskip1\zw#2\relax\par + \ifnum\ltjgetparameter{direction}=3 #1\hskip1\zw#2\relax\par \else #1: #2\relax\par\fi \else \global \@minipagefalse - \hbox to\hsize{\hfil\box\@tempboxa\hfil}% + \hb@xt@\hsize{\hfil\box\@tempboxa\hfil}% \fi \vskip\belowcaptionskip} \setlength\arraycolsep{5\p@} @@ -612,6 +631,7 @@ \setlength\fboxsep{3\p@} \setlength\fboxrule{.4\p@} \renewcommand{\theequation}{\@arabic\c@equation} +\unless\ifltj@disablejfam \if@compatibility\else \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n} \DeclareSymbolFontAlphabet{\mathmc}{mincho} @@ -625,6 +645,7 @@ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt} }% \fi +\fi \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} @@ -643,7 +664,7 @@ \newdimen\toclineskip \setlength\toclineskip{\z@} \newdimen\@lnumwidth -\def\numberline#1{\hbox to\@lnumwidth{#1\hfil}} +\def\numberline#1{\hb@xt@\@lnumwidth{#1\hfil}} \def\@dottedtocline#1#2#3#4#5{% \ifnum #1>\c@tocdepth \else \vskip\toclineskip \@plus.2\p@ @@ -652,19 +673,21 @@ \interlinepenalty\@M \leavevmode \@lnumwidth #3\relax - \advance\leftskip \@lnumwidth \hbox{}\hskip -\leftskip + \advance\leftskip \@lnumwidth \null\nobreak\hskip -\leftskip {#4}\nobreak \leaders\hbox{$\m@th \mkern \@dotsep mu.\mkern \@dotsep mu$}% \hfill\nobreak \hb@xt@\@pnumwidth{\hss\normalfont \normalcolor #5}% \par}% \fi} +\providecommand*\protected@file@percent{} \def\addcontentsline#1#2#3{% \protected@write\@auxout {\let\label\@gobble \let\index\@gobble \let\glossary\@gobble \@temptokena{\thepage}}% {\string\@writefile{#1}% - {\protect\contentsline{#2}{#3}{\the\@temptokena}}}% + {\protect\contentsline{#2}{#3}{\the\@temptokena}% +\protected@file@percent}}% } \newcommand{\tableofcontents}{% \section*{\contentsname @@ -681,7 +704,7 @@ {\leavevmode\large\bfseries \setlength\@lnumwidth{4\zw}% #1\hfil\nobreak - \hbox to\@pnumwidth{\hss#2}}\par + \hb@xt@\@pnumwidth{\hss#2}}\par \nobreak \if@compatibility \global\@nobreaktrue @@ -698,7 +721,7 @@ \leavevmode\bfseries \setlength\@lnumwidth{1.5em}% \advance\leftskip\@lnumwidth \hskip-\leftskip - #1\nobreak\hfil\nobreak\hbox to\@pnumwidth{\hss#2}\par + #1\nobreak\hfil\nobreak\hb@xt@\@pnumwidth{\hss#2}\par \endgroup \fi} \newcommand*{\l@subsection} {\@dottedtocline{2}{1.5em}{2.3em}} @@ -706,14 +729,14 @@ \newcommand*{\l@paragraph} {\@dottedtocline{4}{7.0em}{4.1em}} \newcommand*{\l@subparagraph} {\@dottedtocline{5}{10em}{5em}} \newcommand{\listoffigures}{% - \section*{\listfigurename - \@mkboth{\listfigurename}{\listfigurename}}% + \section*{\listfigurename}% + \@mkboth{\listfigurename}{\listfigurename}% \@starttoc{lof}% } \newcommand*{\l@figure}{\@dottedtocline{1}{1.5em}{2.3em}} \newcommand{\listoftables}{% - \section*{\listtablename - \@mkboth{\listtablename}{\listtablename}}% + \section*{\listtablename}% + \@mkboth{\listtablename}{\listtablename}% \@starttoc{lot}% } \let\l@table\l@figure @@ -721,7 +744,7 @@ \setlength\bibindent{1.5em} \newcommand{\newblock}{\hskip .11em\@plus.33em\@minus.07em} \newenvironment{thebibliography}[1] -{\section*{\refname\@mkboth{\refname}{\refname}}% +{\section*{\refname}\@mkboth{\refname}{\refname}% \list{\@biblabel{\@arabic\c@enumiv}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth @@ -741,11 +764,11 @@ \let\@openbib@code\@empty \newenvironment{theindex} {\if@twocolumn\@restonecolfalse\else\@restonecoltrue\fi - \columnseprule\z@ \columnsep 35\p@ \twocolumn[\section*{\indexname}]% \@mkboth{\indexname}{\indexname}% \thispagestyle{jpl@in}\parindent\z@ \parskip\z@ \@plus .3\p@\relax + \columnseprule\z@ \columnsep 35\p@ \let\item\@idxitem} {\if@restonecol\onecolumn\else\clearpage\fi} \newcommand{\@idxitem}{\par\hangindent 40\p@} @@ -754,24 +777,24 @@ \newcommand{\indexspace}{\par \vskip 10\p@ \@plus5\p@ \@minus3\p@\relax} \renewcommand{\footnoterule}{% \kern-3\p@ - \hrule width .4\columnwidth - \kern 2.6\p@} + \hrule\@width.4\columnwidth + \kern2.6\p@} \newcommand\@makefntext[1]{\parindent 1em - \noindent\hbox to 1.8em{\hss\@makefnmark}#1} -\newif\if西暦 \西暦false + \noindent\hb@xt@ 1.8em{\hss\@makefnmark}#1} +\newif\if西暦 \西暦true \def\西暦{\西暦true} \def\和暦{\西暦false} \newcount\heisei \heisei\year \advance\heisei-1988\relax \def\today{{% - \iftdir + \ifnum\ltjgetparameter{direction}=3 \if西暦 - \kansuji\number\year 年 - \kansuji\number\month 月 - \kansuji\number\day 日 + \kansuji\year 年 + \kansuji\month 月 + \kansuji\day 日 \else - 平成\ifnum\heisei=1 元年\else\kansuji\number\heisei 年\fi - \kansuji\number\month 月 - \kansuji\number\day 日 + 平成\ifnum\heisei=1 元年\else\kansuji\heisei 年\fi + \kansuji\month 月 + \kansuji\day 日 \fi \else \if西暦 @@ -798,6 +821,8 @@ \pagestyle{plain} \pagenumbering{arabic} \raggedbottom +\fnfixbottomtrue % 2017-02-19 +\IfFileExists{stfloats.sty}{\RequirePackage{stfloats}\fnbelowfloat}{} \if@twocolumn \twocolumn \sloppy @@ -809,6 +834,8 @@ \else \@mparswitchfalse \fi +\AtBeginOfPackageFile*{ftnright}{\let\ltjt@orig@@makefntext=\@makefntext} +\AtEndOfPackageFile*{ftnright}{\let\@makefntext=\ltjt@orig@@makefntext} \endinput %% %% End of file `ltjarticle.cls'.