X-Git-Url: http://git.osdn.net/view?a=blobdiff_plain;f=src%2Fltjreport.cls;h=94a61e3b390c0c8d45b95afd0a5f00de06f7686b;hb=e570c6fd6f877ba419c1163e6b12fb5511a1c130;hp=6d1b491d310718cf0575df1cc70fea12a75e02a6;hpb=5875ad249178b01c2c64f99ba800894cb538d57c;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjreport.cls b/src/ltjreport.cls index 6d1b491..94a61e3 100644 --- a/src/ltjreport.cls +++ b/src/ltjreport.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{ltjreport} - [2013/06/06 v1.6-ltj-2 + [2020/01/13 v1.8e-ltj-17 Standard LuaLaTeX-ja class] \RequirePackage{luatexja} \newcounter{@paper} @@ -49,6 +33,7 @@ \newif\if@titlepage \@titlepagetrue \newif\if@openright +\newif\if@openleft \hour\time \divide\hour by 60\relax \@tempcnta\hour \multiply\@tempcnta 60\relax \minute\time \advance\minute-\@tempcnta @@ -105,8 +90,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 @@ -117,8 +102,7 @@ \setlength{\@tombowwidth}{\z@}% \maketombowbox} \DeclareOption{tate}{% - \AtBeginDocument{\tate\message{《縦組モード》}% - \adjustbaseline}% + \tate\AtBeginDocument{\message{《縦組モード》}\adjustbaseline}% } \DeclareOption{oneside}{\@twosidefalse} \DeclareOption{twoside}{\@twosidetrue} @@ -128,8 +112,9 @@ \DeclareOption{notitlepage}{\@titlepagefalse} \if@compatibility \else -\DeclareOption{openright}{\@openrighttrue} -\DeclareOption{openany}{\@openrightfalse} +\DeclareOption{openright}{\@openrighttrue\@openleftfalse} +\DeclareOption{openleft}{\@openlefttrue\@openrightfalse} +\DeclareOption{openany}{\@openrightfalse\@openleftfalse} \fi \DeclareOption{leqno}{\input{leqno.clo}} \DeclareOption{fleqn}{\input{fleqn.clo}} @@ -145,15 +130,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,openany} -\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)} @@ -163,20 +143,40 @@ \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')} +\DeclareOption{disablejfam}{} +\ExecuteOptions{a4paper,10pt,oneside,onecolumn,final,openany} +\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}{} @@ -195,6 +195,31 @@ \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} +\if@openleft + \let\cleardoublepage\pltx@cleartoleftpage +\else\if@openright + \let\cleardoublepage\pltx@cleartorightpage +\fi\fi \def\ps@plain{\let\@mkboth\@gobbletwo \let\ps@jpl@in\ps@plain \let\@oddhead\@empty @@ -294,7 +319,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 @@ -304,7 +329,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 @@ -342,10 +367,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]% @@ -360,6 +385,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 @@ -431,7 +457,8 @@ \newcommand{\@chapapp}{\prechaptername} \newcommand{\@chappos}{\postchaptername} \newcommand{\part}{% - \if@openright \cleardoublepage \else \clearpage \fi + \if@openleft \cleardoublepage \else + \if@openright \cleardoublepage \else \clearpage \fi \fi \thispagestyle{empty}% \if@twocolumn\onecolumn\@tempswatrue\else\@tempswafalse\fi \null\vfil @@ -446,7 +473,7 @@ \fi \markboth{}{}% {\centering - \interlinepenalty\@M\reset@font + \interlinepenalty\@M\normalfont \ifnum \c@secnumdepth >-2\relax \huge\bfseries\prepartname\thepart\postpartname \par\vskip20\p@ @@ -455,14 +482,21 @@ \@endpart} \def\@spart#1{{% \centering - \interlinepenalty\@M\reset@font + \interlinepenalty\@M\normalfont \Huge\bfseries#1\par}% \@endpart} \def\@endpart{\vfil\newpage - \if@twoside\null\thispagestyle{empty}\newpage\fi + \if@twoside + \if@openleft %% \if@openleft added (2017/02/15) + \null\thispagestyle{empty}\newpage + \else\if@openright %% \if@openright added (2016/12/18) + \null\thispagestyle{empty}\newpage + \fi\fi %% added (2016/12/18, 2017/02/15) + \fi \if@tempswa\twocolumn\fi} \newcommand{\chapter}{% - \if@openright\cleardoublepage\else\clearpage\fi + \if@openleft \cleardoublepage \else + \if@openright \cleardoublepage \else \clearpage \fi \fi \thispagestyle{jpl@in}% \global\@topnum\z@ \@afterindenttrue @@ -484,7 +518,7 @@ \vskip2\Cvs {\parindent\z@ \raggedright - \reset@font\huge\bfseries + \normalfont\huge\bfseries \leavevmode \ifnum \c@secnumdepth >\m@ne \setlength\@tempdima{\linewidth}% @@ -502,30 +536,30 @@ \vskip2\Cvs {\parindent\z@ \raggedright - \reset@font\huge\bfseries + \normalfont\huge\bfseries \leavevmode \setlength\@tempdima{\linewidth}% \vtop{\hsize\@tempdima#1}}\vskip3\Cvs} \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{chapter}{0}% \setcounter{section}{0}% @@ -568,8 +602,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@ @@ -581,23 +615,23 @@ \usecounter{\@enumctr}% \def\makelabel##1{\hss\llap{##1}}}% \fi}{\endlist} -\newcommand{\labelitemi}{\textbullet} +\newcommand{\labelitemi}{\labelitemfont \textbullet} \newcommand{\labelitemii}{% - \iftdir - {\textcircled{~}} + \ifnum\ltjgetparameter{direction}=3 + {\labelitemfont \textcircled{~}} \else - {\normalfont\bfseries\textendash} + {\labelitemfont \bfseries\textendash} \fi } -\newcommand{\labelitemiii}{\textasteriskcentered} -\newcommand{\labelitemiv}{\textperiodcentered} +\newcommand{\labelitemiii}{\labelitemfont \textasteriskcentered} +\newcommand{\labelitemiv}{\labelitemfont \textperiodcentered} +\newcommand\labelitemfont{\normalfont} \renewenvironment{itemize} {\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@ @@ -610,7 +644,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@ @@ -666,15 +700,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@} @@ -688,6 +722,7 @@ \@addtoreset{equation}{chapter} \renewcommand{\theequation}{% \ifnum\c@chapter>\z@\thechapter.\fi \@arabic\c@equation} +\unless\ifltj@disablejfam \if@compatibility\else \DeclareSymbolFont{mincho}{JY3}{mc}{m}{n} \DeclareSymbolFontAlphabet{\mathmc}{mincho} @@ -701,6 +736,7 @@ \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt} }% \fi +\fi \DeclareOldFontCommand{\mc}{\normalfont\mcfamily}{\mathmc} \DeclareOldFontCommand{\gt}{\normalfont\gtfamily}{\mathgt} \DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm} @@ -719,7 +755,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@ @@ -728,19 +764,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}}% + \@temptokena{\thepage}}% {\string\@writefile{#1}% - {\protect\contentsline{#2}{#3}{\the\@temptokena}}}% + {\protect\contentsline{#2}{#3}{\the\@temptokena}% +\protected@file@percent}}% } \newcommand{\tableofcontents}{% \if@twocolumn\@restonecoltrue\onecolumn @@ -760,7 +798,7 @@ {\leavevmode\large\bfseries \setlength\@lnumwidth{4\zw}% #1\hfil\nobreak - \hbox to\@pnumwidth{\hss#2}}\par + \hb@xt@\@pnumwidth{\hss#2}}\par \nobreak \global\@nobreaktrue \everypar{\global\@nobreakfalse\everypar{}}% @@ -775,7 +813,7 @@ \leavevmode\bfseries \setlength\@lnumwidth{4\zw}% \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 \penalty\@highpenalty \endgroup \fi} @@ -787,8 +825,8 @@ \newcommand{\listoffigures}{% \if@twocolumn\@restonecoltrue\onecolumn \else\@restonecolfalse\fi - \chapter*{\listfigurename - \@mkboth{\listfigurename}{\listfigurename}}% + \chapter*{\listfigurename}% + \@mkboth{\listfigurename}{\listfigurename}% \@starttoc{lof}% \if@restonecol\twocolumn\fi } @@ -796,8 +834,8 @@ \newcommand{\listoftables}{% \if@twocolumn\@restonecoltrue\onecolumn \else\@restonecolfalse\fi - \chapter*{\listtablename - \@mkboth{\listtablename}{\listtablename}}% + \chapter*{\listtablename}% + \@mkboth{\listtablename}{\listtablename}% \@starttoc{lot}% \if@restonecol\twocolumn\fi } @@ -806,7 +844,7 @@ \setlength\bibindent{1.5em} \newcommand{\newblock}{\hskip .11em\@plus.33em\@minus.07em} \newenvironment{thebibliography}[1] -{\chapter*{\bibname\@mkboth{\bibname}{\bibname}}% +{\chapter*{\bibname}\@mkboth{\bibname}{\bibname}% \list{\@biblabel{\@arabic\c@enumiv}}% {\settowidth\labelwidth{\@biblabel{#1}}% \leftmargin\labelwidth @@ -826,11 +864,11 @@ \let\@openbib@code\@empty \newenvironment{theindex} {\if@twocolumn\@restonecolfalse\else\@restonecoltrue\fi - \columnseprule\z@ \columnsep 35\p@ \twocolumn[\@makeschapterhead{\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@} @@ -839,36 +877,45 @@ \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@} \@addtoreset{footnote}{chapter} \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 - \if西暦 - \kansuji\number\year 年 - \kansuji\number\month 月 - \kansuji\number\day 日 +\def\pltx@today@year@#1{% + \ifnum\numexpr\year-#1=1 元\else + \ifnum\ltjgetparameter{direction}=3 + \kansuji\numexpr\year-#1\relax \else - 平成\ifnum\heisei=1 元年\else\kansuji\number\heisei 年\fi - \kansuji\number\month 月 - \kansuji\number\day 日 + \number\numexpr\year-#1\relax\nobreak \fi + \fi 年 +} +\def\pltx@today@year{% + \ifnum\numexpr\year*10000+\month*100+\day<19890108 + 昭和\pltx@today@year@{1925}% + \else\ifnum\numexpr\year*10000+\month*100+\day<20190501 + 平成\pltx@today@year@{1988}% \else - \if西暦 - \number\year~年 - \number\month~月 - \number\day~日 - \else - 平成\ifnum\heisei=1 元年\else\number\heisei~年\fi - \number\month~月 - \number\day~日 - \fi + 令和\pltx@today@year@{2018}% + \fi\fi} +\def\today{{% + \if西暦 + \ifnum\ltjgetparameter{direction}=3 \kansuji\year + \else\number\year\nobreak\fi 年 + \else + \pltx@today@year + \fi + \ifnum\ltjgetparameter{direction}=3 + \kansuji\month 月 + \kansuji\day 日 + \else + \number\month\nobreak 月 + \number\day\nobreak 日 \fi}} \newcommand{\prepartname}{第} \newcommand{\postpartname}{部} @@ -886,6 +933,8 @@ \pagestyle{plain} \pagenumbering{arabic} \raggedbottom +\fnfixbottomtrue % 2017-02-19 +\IfFileExists{stfloats.sty}{\RequirePackage{stfloats}\fnbelowfloat}{} \if@twocolumn \twocolumn \sloppy @@ -897,6 +946,8 @@ \else \@mparswitchfalse \fi +\AtBeginOfPackageFile*{ftnright}{\let\ltjt@orig@@makefntext=\@makefntext} +\AtEndOfPackageFile*{ftnright}{\let\@makefntext=\ltjt@orig@@makefntext} \endinput %% %% End of file `ltjreport.cls'.