X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=src%2Fltjsbook.cls;h=9948023305614bd46cad6af3354810347ff8321e;hb=HEAD;hp=7c215e2e09fec689722396bd6fdda4421c3603d0;hpb=da5f7b6451becec92031990f8e95a19d46fbcc3e;p=luatex-ja%2Fluatexja.git diff --git a/src/ltjsbook.cls b/src/ltjsbook.cls index 7c215e2..9948023 100644 --- a/src/ltjsbook.cls +++ b/src/ltjsbook.cls @@ -38,8 +38,9 @@ %% Right brace \} Tilde \~} \NeedsTeXFormat{LaTeX2e} \ProvidesClass{ltjsbook} - [2018/07/24 ltjsclasses ] + [2022/09/12 ltjsclasses ] \def\jsc@clsname{ltjsbook} +\def\Cjascale{0.924715} \RequirePackage{luatexja} \newif\if@restonecol \newif\if@titlepage @@ -198,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 @@ -209,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,13 +257,15 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \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(-2,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(-2, (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 @@ -293,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 @@ -315,22 +317,16 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \setlength{\pageheight}{\paperheight} \fi \fi - \def\Cjascale{0.924715} \expandafter\let\csname JY3/mc/m/n/10\endcsname\relax \ifmingoth - \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [\Cjascale] \ltj@stdmcfont:jfm=min}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [\Cjascale] \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 * [\Cjascale] \ltj@stdmcfont:jfm=jis}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [\Cjascale] \ltj@stdgtfont:jfm=jis}{} - \else - \DeclareFontShape{JY3}{mc}{m}{n}{<-> s * [\Cjascale] \ltj@stdmcfont:jfm=ujis}{} - \DeclareFontShape{JY3}{gt}{m}{n}{<-> s * [\Cjascale] \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 * [\Cjascale] \ltj@stdmcfont:jfm=ujisv}{} -\DeclareFontShape{JT3}{gt}{m}{n}{<-> s * [\Cjascale] \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}{} @@ -360,8 +356,11 @@ option, since LuaTeX does not support \string\mag\MessageBreak in pdf output}% \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}} @@ -1143,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} @@ -1480,6 +1479,7 @@ 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 }% @@ -1496,7 +1496,7 @@ class has defined the old font commands like\MessageBreak \advance\leftskip 3\zw \parindent 1\zw \noindent - \llap{\@makefnmark\hskip0.3\zw}#1} + \hb@xt@\z@{\hss\@makefnmark\hskip0.3\zw}#1} \let\@inhibitglue=\ltjfakeparbegin \def\@item[#1]{% \if@noparitem @@ -1723,23 +1723,42 @@ 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}