X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjsbook.cls;h=9948023305614bd46cad6af3354810347ff8321e;hb=HEAD;hp=0cf0d6b77a01a4e577d842660a0bc5bf071afbad;hpb=b9c817373adfd09e2cb6f6b3de8d1de19ce37679;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjsbook.cls b/src/ltjsbook.cls index 0cf0d6b..9948023 100644 --- a/src/ltjsbook.cls +++ b/src/ltjsbook.cls @@ -38,12 +38,14 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{ltjsbook} - [2017/01/12 ltjsclasses ] + [2022/09/12 ltjsclasses ] \def\jsc@clsname{ltjsbook} +\def\Cjascale{0.924715} \RequirePackage{luatexja} \newif\if@restonecol \newif\if@titlepage \newif\if@openright +\newif\if@openleft \newif\if@mainmatter \@mainmattertrue \newif\if@enablejfam \@enablejfamtrue \DeclareOption{a3paper}{% @@ -119,26 +121,15 @@ \DeclareOption{10.5ptj}{\def\jsc@magscale{1.139}} \DeclareOption{11ptj}{\def\jsc@magscale{1.194}} \DeclareOption{12ptj}{\def\jsc@magscale{1.302}} -\newif\if@ltjs@mag@xreal -\@ltjs@mag@xrealtrue -\DeclareOption{nomag*}{\@ltjs@mag@xrealtrue} -\DeclareOption{nomag}{\@ltjs@mag@xrealfalse} -\DeclareOption{noxreal}{% - \ClassWarningNoLine{\jsc@clsname}{% - The class option `noxreal' is obsolete. \MessageBreak - Please use the `nomag' option instead}% - \@ltjs@mag@xrealfalse} -\DeclareOption{real}{% - \ClassWarningNoLine{\jsc@clsname}{% - The class option `real' is obsolete. \MessageBreak - Please use the `nomag' option instead}% - \@ltjs@mag@xrealfalse} +\newif\ifjsc@mag@xreal +\jsc@mag@xrealtrue +\DeclareOption{nomag*}{\jsc@mag@xrealtrue} +\DeclareOption{nomag}{\jsc@mag@xrealfalse} \DeclareOption{usemag}{% \ClassWarningNoLine{\jsc@clsname}{% This \jsc@clsname\space cls does not support `usemag'\MessageBreak option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% - \@ltjs@mag@xrealtrue} - + \jsc@mag@xrealtrue} \hour\time \divide\hour by 60\relax \@tempcnta\hour \multiply\@tempcnta 60\relax \minute\time \advance\minute-\@tempcnta @@ -164,8 +155,9 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \DeclareOption{twocolumn}{\@twocolumntrue} \DeclareOption{titlepage}{\@titlepagetrue} \DeclareOption{notitlepage}{\@titlepagefalse} -\DeclareOption{openright}{\@openrighttrue} -\DeclareOption{openany}{\@openrightfalse} +\DeclareOption{openright}{\@openrighttrue\@openleftfalse} +\DeclareOption{openleft}{\@openlefttrue\@openrightfalse} +\DeclareOption{openany}{\@openrightfalse\@openleftfalse} \def\eqnarray{% \stepcounter{equation}% \def\@currentlabel{\p@equation\theequation}% @@ -207,8 +199,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% &\global\@eqcnt\thr@@ \hb@xt@\z@\bgroup\hss##\egroup \tabskip\z@skip\cr }} -\DeclareOption{disablejfam}{% - \ClassWarningNoLine{\jsc@clsname}{The class option 'disablejfam' is obsolete}} +\DeclareOption{disablejfam}{} \DeclareOption{draft}{\setlength\overfullrule{5pt}} \DeclareOption{final}{\setlength\overfullrule{0pt}} \newif\ifmingoth @@ -218,11 +209,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \newif\ifptexjis \ptexjisfalse \DeclareOption{winjis}{% - \ClassWarningNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `winjis' option}} + \ClassWarningNoLine{\jsc@clsname}{this class does not support `winjis' option}} \DeclareOption{uplatex}{% - \ClassErrorNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `uplatex' option}} + \ClassError{\jsc@clsname}{this class does not support `uplatex' option}} \DeclareOption{autodetect-engine}{% - \ClassWarningNoLine{\jsc@clsname}{The \jsc@clsname\space class does not support `autodetect-engine' option}} + \ClassWarningNoLine{\jsc@clsname}{this class does not support `autodetect-engine' option}} \DeclareOption{mingoth}{\mingothtrue} \DeclareOption{ptexjis}{\ptexjistrue} \DeclareOption{jis}{\jisfonttrue} @@ -257,21 +248,24 @@ 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} -\ifdim\jsc@mpt=\p@\else +\ifjsc@mag@xreal +\ifdim\jsc@mpt=\p@\jsc@mag@xrealfalse\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 \directlua{ local getdimen, mpt=tex.getdimen, tex.getdimen('jsc@mpt')/65536 + local floor, cnt_dimen_at = math.floor, luatexbase.registernumber 'dimen@' + local print_scaled, sprint = luatexja.print_scaled, tex.sprint local t = lua.get_functions_table() t[\the\ltjs@@magnify@font@calc] = function() - tex.sprint(math.floor(0.5+mpt*getdimen('dimen@'))) + sprint(-2,floor(0.5+mpt*getdimen(cnt_dimen_at))) 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 ) + local s = print_scaled(floor(0.5+a/mpt*65536)) + sprint(-2, (s:match('%.0$')) and s:sub(1,-3) or s ) end } \endgroup @@ -279,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 @@ -301,8 +295,8 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \newskip\jsc@smallskipamount \jsc@smallskipamount=3\jsc@mpt plus 1\jsc@mpt minus 1\jsc@mpt \iftombow - \newlength{\stockwidth} - \newlength{\stockheight} + \ifdefined\stockwidth\else\newlength{\stockwidth}\fi + \ifdefined\stockheight\else\newlength{\stockheight}\fi \setlength{\stockwidth}{\paperwidth} \setlength{\stockheight}{\paperheight} \advance \stockwidth 2in @@ -325,21 +319,18 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \fi \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax \ifmingoth - \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.924715] \ltj@stdmcfont:jfm=min}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.924715] \ltj@stdgtfont:jfm=min}{} + \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [\Cjascale] \ltj@stdmcfont:-kern;jfm=min}{} + \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [\Cjascale] \ltj@stdgtfont:-kern;jfm=min}{} \else \ifptexjis - \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.924715] \ltj@stdmcfont:jfm=jis}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.924715] \ltj@stdgtfont:jfm=jis}{} - \else - \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [0.924715] \ltj@stdmcfont:jfm=ujis}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [0.924715] \ltj@stdgtfont:jfm=ujis}{} + \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [\Cjascale] \ltj@stdmcfont:-kern;jfm=jis}{} + \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [\Cjascale] \ltj@stdgtfont:-kern;jfm=jis}{} \fi \fi -\DeclareFontShape{JT3}{mc}{m}{n}{<-> s * [0.924715] \ltj@stdmcfont:jfm=ujisv}{} -\DeclareFontShape{JT3}{gt}{m}{n}{<-> s * [0.924715] \ltj@stdgtfont:jfm=ujisv}{} \DeclareFontShape{JY3}{mc}{bx}{n}{<->ssub*gt/m/n}{} \DeclareFontShape{JY3}{gt}{bx}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JY3}{mc}{b}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JY3}{mc}{b}{n}{<->ssub*gt/m/n}{} \DeclareFontShape{JY3}{mc}{m}{it}{<->ssub*mc/m/n}{} \DeclareFontShape{JY3}{mc}{m}{sl}{<->ssub*mc/m/n}{} \DeclareFontShape{JY3}{mc}{m}{sc}{<->ssub*mc/m/n}{} @@ -347,18 +338,29 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \DeclareFontShape{JY3}{gt}{m}{sl}{<->ssub*gt/m/n}{} \DeclareFontShape{JY3}{mc}{bx}{it}{<->ssub*gt/m/n}{} \DeclareFontShape{JY3}{mc}{bx}{sl}{<->ssub*gt/m/n}{} -%% \DeclareFontShape{JT3}{mc}{m}{it}{<->ssub*mc/m/n}{} -%% \DeclareFontShape{JT3}{mc}{m}{sl}{<->ssub*mc/m/n}{} -%% \DeclareFontShape{JT3}{mc}{m}{sc}{<->ssub*mc/m/n}{} -%% \DeclareFontShape{JT3}{gt}{m}{it}{<->ssub*gt/m/n}{} -%% \DeclareFontShape{JT3}{gt}{m}{sl}{<->ssub*gt/m/n}{} -%% \DeclareFontShape{JT3}{mc}{bx}{it}{<->ssub*gt/m/n}{} -%% \DeclareFontShape{JT3}{mc}{bx}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{JY3}{mc}{b}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{JY3}{mc}{b}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{bx}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{gt}{bx}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{b}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{b}{n}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{m}{it}{<->ssub*mc/m/n}{} +\DeclareFontShape{JT3}{mc}{m}{sl}{<->ssub*mc/m/n}{} +\DeclareFontShape{JT3}{mc}{m}{sc}{<->ssub*mc/m/n}{} +\DeclareFontShape{JT3}{gt}{m}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{gt}{m}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{bx}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{bx}{sl}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{b}{it}{<->ssub*gt/m/n}{} +\DeclareFontShape{JT3}{mc}{b}{sl}{<->ssub*gt/m/n}{} \renewcommand\jttdefault{\gtdefault}\@ltj@match@familytrue %% \AtBeginDocument{% - \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc} - \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}}% + \unless\ifltj@disablejfam + \reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc} + \reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt} + \fi +}% \ltjsetparameter{jaxspmode={`!,2}} \ltjsetparameter{jaxspmode={`〒,1}} \ltjsetparameter{alxspmode={`+,3}} @@ -420,12 +422,13 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \belowdisplayshortskip \belowdisplayskip \let\@listi\@listI} \mcfamily\selectfont\normalsize -\setbox0\hbox{\char"3000}% 全角スペース +\setbox0\hbox{漢} \setlength\Cht{\ht0} \setlength\Cdp{\dp0} \setlength\Cwd{\wd0} \setlength\Cvs{\baselineskip} \setlength\Chs{\wd0} +\setbox0=\box\voidb@x \newcommand{\small}{% \ltj@@ifnarrowbaselines {\jsc@setfontsize\small\@ixpt{11}}% @@ -534,8 +537,8 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \addtolength{\textheight}{\topskip} \addtolength{\textheight}{0.1\jsc@mpt} \def\flushbottom{% - \def\@textbottom{\vskip \z@ \@plus.1\jsc@mpt}% - \let\@texttop\relax} + \def\@textbottom{\vskip \z@ \@plus.1\jsc@mpt}% + \let\@texttop\relax} \setlength\marginparsep{\columnsep} \setlength\marginparpush{\baselineskip} \setlength{\oddsidemargin}{\paperwidth} @@ -591,6 +594,31 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \setlength\@dblfptop{0\jsc@mpt \@plus 1fil} \setlength\@dblfpsep{8\jsc@mpt \@plus 2fil} \setlength\@dblfpbot{0\jsc@mpt \@plus 1fil} +\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@plainfoot{% \let\@mkboth\@gobbletwo \let\@oddhead\@empty @@ -824,7 +852,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{}% @@ -837,7 +865,7 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \if@slide {\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} + \vskip\if@twocolumn 4\jsc@mpt\else 7\jsc@mpt\fi\relax}% \fi \par % 2000-12-18 \ignorespaces} @@ -875,30 +903,30 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \newcommand{\@chapapp}{\prechaptername} \newcommand{\@chappos}{\postchaptername} \newcommand\frontmatter{% - \if@openright - \cleardoublepage - \else - \clearpage - \fi + \pltx@cleartooddpage \@mainmatterfalse \pagenumbering{roman}} \newcommand\mainmatter{% - \cleardoublepage + \pltx@cleartooddpage \@mainmattertrue \pagenumbering{arabic}} \newcommand\backmatter{% - \if@openright + \if@openleft + \cleardoublepage + \else\if@openright \cleardoublepage \else \clearpage - \fi + \fi\fi \@mainmatterfalse} \newcommand\part{% - \if@openright + \if@openleft + \cleardoublepage + \else\if@openright \cleardoublepage \else \clearpage - \fi + \fi\fi \thispagestyle{empty}% 欧文用標準スタイルでは plain \if@twocolumn \onecolumn @@ -934,17 +962,18 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \@endpart} \def\@endpart{\vfil\newpage \if@twoside - \if@openright %% added (2016/12/13) - \null - \thispagestyle{empty}% - \newpage - \fi %% added (2016/12/13) + \if@openleft %% added (2017/02/24) + \null\thispagestyle{empty}\newpage + \else\if@openright %% added (2016/12/13) + \null\thispagestyle{empty}\newpage + \fi\fi %% added (2016/12/13, 2017/02/24) \fi \if@restonecol \twocolumn \fi} \newcommand{\chapter}{% - \if@openright\cleardoublepage\else\clearpage\fi + \if@openleft\cleardoublepage\else + \if@openright\cleardoublepage\else\clearpage\fi\fi \plainifnotempty % 元: \thispagestyle{plain} \global\@topnum\z@ \if@english \@afterindentfalse \else \@afterindenttrue \fi @@ -1113,11 +1142,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \renewcommand{\theenumiii}{\@roman\c@enumiii} \renewcommand{\theenumiv}{\@Alph\c@enumiv} \newcommand{\labelenumi}{\theenumi.} -\newcommand{\labelenumii}{\inhibitglue(\theenumii)\inhibitglue} +\newcommand{\labelenumii}{\inhibitglue (\theenumii)\inhibitglue} \newcommand{\labelenumiii}{\theenumiii.} \newcommand{\labelenumiv}{\theenumiv.} \renewcommand{\p@enumii}{\theenumi} -\renewcommand{\p@enumiii}{\theenumi\inhibitglue(\theenumii)} +\renewcommand{\p@enumiii}{\theenumi\inhibitglue (\theenumii)} \renewcommand{\p@enumiv}{\p@enumiii\theenumiii} \newcommand\labelitemi{\textbullet} \newcommand\labelitemii{\normalfont\bfseries \textendash} @@ -1158,14 +1187,14 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \def\@opargbegintheorem#1#2#3{\trivlist\labelsep=1\zw \item[\hskip \labelsep{\headfont #1\ #2(#3)}]} \newenvironment{titlepage}{% - \cleardoublepage + \pltx@cleartooddpage %% 2017-02-24 \if@twocolumn \@restonecoltrue\onecolumn \else \@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 @@ -1332,6 +1361,8 @@ class has defined the old font commands like\MessageBreak \@dottedtocline{5}{\@tempdima}{6.5\zw}} \newdimen\@lnumwidth \def\numberline#1{\hb@xt@\@lnumwidth{#1\hfil}\hspace{0pt}} +\def\jsTocLine{\leaders\hbox{% + $\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep mu$}\hfill} \def\@dottedtocline#1#2#3#4#5{\ifnum #1>\c@tocdepth \else \vskip \z@ \@plus.2\jsc@mpt {\leftskip #2\relax \rightskip \@tocrmarg \parfillskip -\rightskip @@ -1341,8 +1372,7 @@ class has defined the old font commands like\MessageBreak \@lnumwidth #3\relax \advance\leftskip \@lnumwidth \null\nobreak\hskip -\leftskip {#4}\nobreak - \leaders\hbox{$\m@th \mkern \@dotsep mu\hbox{.}\mkern \@dotsep - mu$}\hfill \nobreak\hb@xt@\@pnumwidth{% + \jsTocLine \nobreak\hb@xt@\@pnumwidth{% \hfil\normalfont \normalcolor #5}\par}\fi} \newcommand{\listoffigures}{% \if@twocolumn\@restonecoltrue\onecolumn @@ -1449,24 +1479,25 @@ class has defined the old font commands like\MessageBreak \splittopskip\footnotesep \splitmaxdepth \dp\strutbox \floatingpenalty \@MM \hsize\columnwidth \@parboxrestore + \def\@currentcounter{footnote}% \protected@edef\@currentlabel{% \csname p@footnote\endcsname\@thefnmark }% \color@begingroup \@makefntext{% \rule\z@\footnotesep\ignorespaces}% - \futurelet\next\fo@t} -\def\fo@t{\ifcat\bgroup\noexpand\next \let\next\f@@t - \else \let\next\f@t\fi \next} -\def\f@@t{\bgroup\aftergroup\@foot\let\next} -\def\f@t#1{#1\@foot} -\def\@foot{\@finalstrut\strutbox\color@endgroup\egroup} + \futurelet\jsc@next\jsc@fo@t} +\def\jsc@fo@t{\ifcat\bgroup\noexpand\jsc@next \let\jsc@next\jsc@f@@t + \else \let\jsc@next\jsc@f@t\fi \jsc@next} +\def\jsc@f@@t{\bgroup\aftergroup\jsc@@foot\let\jsc@next} +\def\jsc@f@t#1{#1\jsc@@foot} +\def\jsc@@foot{\@finalstrut\strutbox\color@endgroup\egroup} \newcommand\@makefntext[1]{% \advance\leftskip 3\zw \parindent 1\zw \noindent - \llap{\@makefnmark\hskip0.3\zw}#1} -\protected\def\@inhibitglue{\directlua{luatexja.jfmglue.create_beginpar_node()}} + \hb@xt@\z@{\hss\@makefnmark\hskip0.3\zw}#1} +\let\@inhibitglue=\ltjfakeparbegin \def\@item[#1]{% \if@noparitem \@donoparitem @@ -1509,7 +1540,7 @@ class has defined the old font commands like\MessageBreak \else \clubpenalty \@clubpenalty \everypar{}% - \fi\@inhibitglue}% + \fi\ltjfakeparbegin}% \if@noitemarg \@noitemargfalse \if@nmbrlist @@ -1533,7 +1564,7 @@ class has defined the old font commands like\MessageBreak \ifvmode \@nolnerr \else - \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \hskip\z@ + \unskip \reserved@e {\reserved@f#1}\nobreak \hfil \break \null \inhibitglue \ignorespaces \fi} \IfFileExists{jslogo.sty}{}{\@jslogofalse}% @@ -1692,26 +1723,47 @@ class has defined the old font commands like\MessageBreak \def\西暦{\西暦true} \def\和暦{\西暦false} \newcount\heisei \heisei\year \advance\heisei-1988\relax +\def\pltx@today@year@#1{% + \ifnum\numexpr\year-#1=1 元\else + \ifnum\ltjgetparameter{direction}=3 + \kansuji\numexpr\year-#1\relax + \else + \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 + 令和\pltx@today@year@{2018}% + \fi\fi} \def\today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or July\or August\or September\or October\or November\or December\fi \space\number\day, \number\year + \else\if西暦 + \ifnum\ltjgetparameter{direction}=3 \kansuji\year + \else\number\year\nobreak\fi 年 \else - \if西暦 - \number\year 年 - \number\month 月 - \number\day 日 - \else - 平成\number\heisei 年 - \number\month 月 - \number\day 日 - \fi - \fi} + \pltx@today@year + \fi + \ifnum\ltjgetparameter{direction}=3 + \kansuji\month 月 + \kansuji\day 日 + \else + \number\month\nobreak 月 + \number\day\nobreak 日 + \fi\fi} \hyphenation{ado-be post-script ghost-script phe-nom-e-no-log-i-cal man-u-script} \if@report \pagestyle{plain} \else \pagestyle{headings} \fi \pagenumbering{arabic} +\fnfixbottomtrue % 2017-02-19 +\IfFileExists{stfloats.sty}{\RequirePackage{stfloats}\fnbelowfloat}{} \if@twocolumn \twocolumn \sloppy