diff options
17 files changed, 268 insertions, 255 deletions
diff --git a/Master/texmf-dist/doc/latex/bxjscls/README-ja.md b/Master/texmf-dist/doc/latex/bxjscls/README-ja.md index 82d511c64ff..f758f23e239 100644 --- a/Master/texmf-dist/doc/latex/bxjscls/README-ja.md +++ b/Master/texmf-dist/doc/latex/bxjscls/README-ja.md @@ -110,6 +110,8 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使 更新履歴 -------- + * Version 2.8b 〈2023/07/01〉 + - バグや細かい不具合を修正。 * Version 2.8a 〈2023/06/20〉 - バグ修正。 * Version 2.8 〈2023/06/14〉 diff --git a/Master/texmf-dist/doc/latex/bxjscls/README.md b/Master/texmf-dist/doc/latex/bxjscls/README.md index 31dddc9d713..137ddeb656e 100644 --- a/Master/texmf-dist/doc/latex/bxjscls/README.md +++ b/Master/texmf-dist/doc/latex/bxjscls/README.md @@ -100,6 +100,7 @@ This package is distributed under the BSD 2-Clause License. Revision History ---------------- + * Version 2.8b 〈2023/07/01〉 * Version 2.8a 〈2023/06/20〉 * Version 2.8 〈2023/06/14〉 - Sync with jsclasses 2023/02/23. diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf Binary files differindex 04d9fabb53c..bc68ec02aa2 100644 --- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf +++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex index 295f723b950..e7f77dc2062 100644 --- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex +++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex @@ -12,8 +12,8 @@ \bxtexlogoimport{*} \usepackage{shortvrb} \MakeShortVerb{\|} -\newcommand{\PkgVersion}{2.8a} -\newcommand{\PkgDate}{2023/06/20} +\newcommand{\PkgVersion}{2.8b} +\newcommand{\PkgDate}{2023/07/01} \newcommand{\Pkg}[1]{\textsf{#1}} \newcommand{\Meta}[1]{$\langle$\mbox{}\nobr#1\nobr\mbox{}$\rangle$} \newcommand{\Note}{\par\noindent ※} diff --git a/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf b/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf Binary files differindex d37640682fb..b7e2acf090a 100644 --- a/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf +++ b/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf diff --git a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx index 2b9e52b070e..550795b7b2e 100644 --- a/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx +++ b/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx @@ -56,7 +56,8 @@ %<*driver> \ProvidesFile{bxjscls.dtx} %</driver> - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] +% [2023/06/20 v2.8a BXJS document classes] % [2023/06/14 v2.8 BXJS document classes] % based on jsclasses [2023/02/23] % [2022/04/10 v2.7a BXJS document classes] @@ -1542,8 +1543,7 @@ % \end{ZRnote} % % \paragraph{エンジン・ドライバオプション \ZRX} -% \mbox{} -% \begin{ZRnote} +% % \begin{macro}{\bxjs@engine@given} % 〔暗黙文字トークン〕 % オプションで明示されたエンジンの種別。 @@ -1616,7 +1616,7 @@ % \end{macrocode} % \end{macro} % -% \Note |nodvidriver*| はBXJSクラスの仕様上は |nodvidriver| と完全に +% \Note |class-nodvidriver| はBXJSクラスの仕様上は |nodvidriver| と完全に % 等価であるが、「グローバルオプションに何があるか」の点で異なる。 % \begin{macrocode} \DeclareOption{dvips}{% @@ -1634,8 +1634,8 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} -\DeclareOption{nodvidriver*}{% - \def\bxjs@driver@opt{nodvidriver*}% +\DeclareOption{class-nodvidriver}{% + \def\bxjs@driver@opt{class-nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% @@ -1653,11 +1653,8 @@ \DeclareOption{dvipdfmx-if-dvi}{\bxjs@depre@opt@do{dvipdfmx-if-dvi}{dvi=dvipdfmx}} % \end{macrocode} % -% \end{ZRnote} -% % \paragraph{その他のBXJS独自オプション \ZRX} -% \mbox{} -% \begin{ZRnote} +% % \TODO 互換用オプションを分離する(2.0版で?)。 % % \begin{macro}{\bxjs@depre@opt} @@ -1719,8 +1716,6 @@ \bxjs@oldfontcommandstrue} % \end{macrocode} % -% \end{ZRnote} -% % \paragraph{JSクラスのオプションで無効なもの \ZRX} % |ltjsclasses| に倣って警告を出す。 % @@ -1740,8 +1735,7 @@ % \end{macrocode} % % \paragraph{keyval型のオプション \ZRX} -% \mbox{} -% \begin{ZRnote} +% % その他のオプションは |keyval| の機構を用いて処理する。 % \begin{macrocode} \DeclareOption*{% @@ -1771,10 +1765,9 @@ \def\bxjs@declare@enum@option#1#2#3{% \bxjs@csletcs{bxjs@#2}{bxjs@#2@@#3}% \define@key{bxjs}{#1}{% - \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax + \@ifundefined{bxjs@#2@@##1}{% \bxjs@error@keyval{#1}{##1}% - \else \bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}% - \fi}} + }{\bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}}}} % \end{macrocode} % \end{macro} % @@ -1789,10 +1782,9 @@ \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname \@nameuse{bxjs@#2#3}% \define@key{bxjs}{#1}[true]{% - \expandafter\ifx\csname bxjs@#2##1\endcsname\relax + \@ifundefined{bxjs@#2##1}{% \bxjs@error@keyval{#1}{##1}% - \else \@nameuse{bxjs@#2##1}% - \fi}} + }{\@nameuse{bxjs@#2##1}}}} % \end{macrocode} % \end{macro} % @@ -2018,7 +2010,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none -\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@class-nodvidriver}\bxjs@driver@@none % \end{macrocode} % % |dvi| オプションの処理。 @@ -2206,8 +2198,6 @@ % \end{macrocode} % \end{macro} % -% \end{ZRnote} -% % \paragraph{オプションの実行} % \mbox{} % \begin{ZRnote} @@ -2241,21 +2231,22 @@ % \end{macrocode} % % 後処理 +% \Note |landscape| の処理のコードはBXJSでは無意味なので除外する。 % % \begin{macrocode} \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} \fi +%<*jsclasses> \if@landscape \setlength\@tempdima {\paperheight} \setlength\paperheight{\paperwidth} \setlength\paperwidth {\@tempdima} \fi +%</jsclasses> % \end{macrocode} % % \paragraph{グローバルオプションの整理 \ZRX} -% \mbox{} -% \begin{ZRnote} % % グローバルオプションのトークン列に |{ }| が含まれていると、 % やはり後のパッケージの読込処理で不具合を起こすようである @@ -2290,8 +2281,6 @@ {noscale}\@classoptionslist\@classoptionslist % \end{macrocode} % -% \end{ZRnote} -% % \paragraph{使用エンジンの検査・自動判定} % % デフォルトで現在使われているエンジンが p\LaTeX か up\LaTeX かを判定します。 @@ -2362,6 +2351,8 @@ \fi % \end{macrocode} % +% \end{ZRnote} +% % \paragraph{ドライバ指定 \ZRX} % % ドライバ指定のオプションが与えられた場合は、 @@ -2577,20 +2568,6 @@ % \end{macrocode} % \end{macro} % -% \end{ZRnote} -% \begin{ZRnote} -% -% 8bit欧文{\TeX}の場合は、高位バイトをアクティブ化しておく。 -% (和文を含むマクロ定義を通用させるため。) -% \begin{macrocode} -\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T - \@tempcnta="80 \loop \ifnum\@tempcnta<"100 - \catcode\@tempcnta\active - \advance\@tempcnta\@ne - \repeat -\fi -% \end{macrocode} -% % |disguise-js=true| 指定時は、jsarticle(または jsbook)クラスを % 読込済のように振舞う。 % \Note 「2つのクラスを読み込んだ状態」は |\LoadClass| を使用した @@ -2617,7 +2594,6 @@ \AtEndOfClass{\allowoldfontcommands} \fi % \end{macrocode} -% \end{ZRnote} % % \paragraph{papersizeスペシャルの出力} % @@ -3497,8 +3473,6 @@ % \@xipt 10.95 \@xiipt 12 \@xivpt 14.4 %\end{verbatim} % -%^^A\begin{macro}{\@setfontsize} -% % ここでは |\@setfontsize| の定義を少々変更して, % 段落の字下げ |\parindent|, % 和文文字間のスペース |\kanjiskip|, @@ -3522,21 +3496,38 @@ % [2008-02-18] |english| オプションで |\parindent| を 1em にしました。 % % \begin{ZRnote} -% \begin{macro}{\set@fontsize} % |\fontsize| 命令(|\large| 等でなく)でフォントサイズ変更した場合 % にもフックが実行されるように、|\@setfontsize| では % なく |\set@fontsize| に対してパッチを当てるように変更。 -% \begin{macrocode} -\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +% \begin{macro}{\bxjs@patch@set@fontsize} +% |\set@fontsize| にパッチを当てる。 +% \Note |\set@fontsize| を書き換えるパッケージへの対策のため、 +% クラス読込中に複数回実行する。 +% 前回の実行直後から |\set@fontsize| が更新されている場合にのみ +% 実際にパッチを当てる。 +% \TODO 新しい{\LaTeX}カーネルでは |selectfont| フックを利用したい。 +% \begin{macrocode} +%\let\bxjs@prev@set@fontsize\@undefined +\@onlypreamble\bxjs@patch@set@fontsize +\def\bxjs@patch@set@fontsize{% + \ifx\bxjs@prev@set@fontsize\set@fontsize\else + \def\bxjs@tmpa{\def\set@fontsize####1####2####3}% \expandafter\bxjs@tmpa\expandafter{% - \set@fontsize{#1}{#2}{#3}% + \set@fontsize{##1}{##2}{##3}% % 末尾にコードを追加 \expandafter\def\expandafter\size@update\expandafter{% \size@update \jsFontSizeChanged}% } + \let\bxjs@prev@set@fontsize\set@fontsize + \fi} % \end{macrocode} % \end{macro} +% この場とパッケージ末尾で作動させる。 +% \begin{macrocode} +\bxjs@patch@set@fontsize +\AtEndOfPackage{\bxjs@patch@set@fontsize} +% \end{macrocode} % % \begin{macro}{\jsFontSizeChanged} % フォントサイズ変更時に呼ばれるフック。 @@ -3558,7 +3549,7 @@ % \begin{macro}{\jsResetDimen} % ユーザ定義用のフック。 % \begin{macrocode} -\newcommand*\jsResetDimen{} +\providecommand*\jsResetDimen{} % \end{macrocode} % \end{macro} % \end{ZRnote} @@ -4021,7 +4012,6 @@ % % \paragraph{準備 \ZRX} % \mbox{} -% \begin{ZRnote} % % \begin{macro}{\bxjs@bd@pre@geometry@hook} % begin-documentフックのコード内で、|geometry| パッケージが挿入する @@ -4285,11 +4275,10 @@ \bxjs@layout@paper,\bxjs@layout} % \end{macrocode} % \end{macro} -% \end{ZRnote} % % \paragraph{geometry パッケージを読み込む \ZRX} % \mbox{} -% \begin{ZRnote} +% % \begin{macro}{\bxjs@apply@bd@pre@geometry@hook} % |geometry| パッケージのbegin-documentフックの処理に割り込む。 % \Note {\LaTeX}のフックシステムがある場合はムニャムニャ。 @@ -4395,11 +4384,8 @@ % \end{macrocode} % \end{macro} % -% \end{ZRnote} -% % \paragraph{geometry パッケージを読み込まない \ZRX} -% \mbox{} -% \begin{ZRnote} +% % |geometry=user|の場合の処理。 % \begin{macrocode} \else\ifx\bxjs@geometry\bxjs@geometry@@user @@ -4435,8 +4421,9 @@ % \fi\fi % \end{macrocode} -% \end{ZRnote} % +% \paragraph{縦方向のスペース} +% \mbox{} % \begin{ZRnote} % ここでは、|jsclasse.dtx| との差分を抑制するために、 % オリジナルのコードを無効化した状態で挿入しておく。 @@ -4445,8 +4432,6 @@ %<*jsclasses> % \end{macrocode} % -% \paragraph{縦方向のスペース} -% % \begin{macro}{\headheight} % \begin{macro}{\topskip} % @@ -4820,7 +4805,7 @@ %</jsclasses> % \end{macrocode} % -% \paragraph{JSクラスと共通処理の開始 \ZRX} +% \paragraph{脚注} % \mbox{} % \begin{ZRnote} % ここからのコードは以下の点を除いて JS クラスのものを踏襲する。 @@ -4830,8 +4815,6 @@ % \end{itemize} % \end{ZRnote} % -% \paragraph{脚注} -% % \begin{macro}{\footnotesep} % % 各脚注の頭に入る支柱(strut)の高さです。 @@ -5678,10 +5661,7 @@ % 未定義ならばカウンタの出力書式 |\theXXX| が使われる。 % \begin{macrocode} \def\bxjs@label@sect#1{% - \expandafter\ifx\csname label#1\endcsname\relax - \csname the#1\endcsname - \else \csname label#1\endcsname - \fi} + \@ifundefined{label#1}{\@nameuse{the#1}}{\@nameuse{label#1}}} \def\@seccntformat#1{\bxjs@label@sect{#1}\quad} % \end{macrocode} % \end{macro} @@ -7518,8 +7498,8 @@ \global\let\bxjs@warnoldfontcmd@final\@empty \let\@tempa\@empty \def\do##1{% - \expandafter\ifx\csname bxjs@ofc/\string##1\endcsname\relax\else - \edef\@tempa{\@tempa \space\string##1}\fi} + \@ifundefined{bxjs@ofc/\string##1}{}{%else + \edef\@tempa{\@tempa \space\string##1}}}% \bxjs@oldfontcmd@list \ifx\@tempa\@empty\else \ClassWarningNoLine\bxjs@clsname @@ -8857,20 +8837,22 @@ \let\bxjs@iai\@empty } \bxjs@decl@Seireki@cmds -\let\bxjs@unxp\@firstofone \let\bxjs@onxp\@firstofone -\bxjs@test@engine\unexpanded{% - \let\bxjs@unxp\unexpanded \def\bxjs@onxp{\unexpanded\expandafter}} % \end{macrocode} % \end{macro} % \end{macro} % % \begin{macro}{\ifbxjs@bxwareki@avail} % |bxwareki| パッケージが使用できるか。 +% \Note 8ビット欧文でかつ非e-TeXなエンジン(現状ではサポート外だが) +% では |bxwareki| を読むだけでエラーが発生してしまうので、 +% この場合は読込を回避する。 % \begin{macrocode} \newif\ifbxjs@bxwareki@avail \IfFileExists{bxwareki.sty}{% - \RequirePackage{bxwareki}[]% - \bxjs@bxwareki@availtrue}{} + \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T% + \RequirePackage{bxwareki}[2018/04/08]%v0.2 + \bxjs@bxwareki@availtrue + \fi}{} % \end{macrocode} % \end{macro} % @@ -8942,11 +8924,16 @@ 令和\pltx@today@year@{2018}% \fi\fi} %</jsclasses> +\begingroup \let\bxjs@next\relax \ifbxjs@bxwareki@avail \ifx\warekigengo\@empty\else - \def\bxjs@next{\bxjs@onxp{\warekitoday}} + \def\bxjs@next{\warekitoday} + \bxjs@test@engine\unexpanded{% + \def\bxjs@next{\unexpanded\expandafter{\warekitoday}}} \fi\fi -\edef\bxjs@today{% +\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3} +\ifx\bxjs@iai\@empty \let\!\@empty \fi +\xdef\bxjs@today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or @@ -8956,11 +8943,12 @@ \ifx\bxjs@next\relax \expandafter\@firstoftwo \else \noexpand\bxjs@if@use@seireki \fi {% - \number\year\bxjs@iai\bxjs@unxp{年}% - \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% - \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + \number\year\bxjs@iai\!年% + \bxjs@iai\number\month\bxjs@iai\!月% + \bxjs@iai\number\day\bxjs@iai\!日% }{\bxjs@next}% \fi} +\endgroup \let\today\bxjs@today % \end{macrocode} % \end{macro} @@ -9011,8 +8999,6 @@ % % % \paragraph{BXJS独自の追加処理 \ZRX} -% \mbox{} -% \begin{ZRnote} % % フックを実行する。 % \begin{macrocode} @@ -9023,9 +9009,6 @@ \input{bxjsja-\bxjs@jadriver.def} % \end{macrocode} % -% おしまい。 -% \end{ZRnote} -% % \section{実験的コード} % % \begin{ZRnote} @@ -11137,6 +11120,10 @@ \noexpand\RequirePackage[scale=\jsScale]{luatexja-fontspec}[2015/08/26]% }\bxjs@next % \end{macrocode} +% |\set@fontsize| へのパッチ適用を再度行う。 +% \begin{macrocode} +\bxjs@patch@set@fontsize +% \end{macrocode} % % フォント代替の明示的定義。 % \begin{macrocode} @@ -11485,9 +11472,16 @@ %^^A---------------- % \subsection{準備} % -% standardドライバの設定を引き継ぐ。 +% |space| してはいけない。 % \begin{macrocode} %<*pandoc> +\if x\jsEngine + \PassOptionsToPackage{nospace}{xeCJK} +\fi +% \end{macrocode} +% +% standardドライバの設定を引き継ぐ。 +% \begin{macrocode} \input{bxjsja-standard.def} % \end{macrocode} % @@ -12319,6 +12313,7 @@ \edef\bxac@tmpa{\string#1}% \edef\bxac@tmpb{\meaning#1}% \ifx\bxac@tmpa\bxac@tmpb #2\fi} +\bxac@do\kanjiskip{\let\bxac@engine=j} \bxac@do\XeTeXversion{\let\bxac@engine=x} \bxac@do\luatexversion{\let\bxac@engine=l} % \end{macrocode} @@ -12350,7 +12345,27 @@ % \end{macro} % %^^A---------------- -% \subsection{{\XeTeX}部分} +% \subsection{8bit欧文{\TeX}} +% \begin{macrocode} +\ifx n\bxac@engine +% \end{macrocode} +% +% 和文を含むマクロ定義を通用させるため、 +% 高位バイトをアクティブ化しておく。 +% \begin{macrocode} +\@tempcnta="80 \loop \ifnum\@tempcnta<"100 + \catcode\@tempcnta\active + \advance\@tempcnta\@ne +\repeat +% \end{macrocode} +% +% 以上。 +% \begin{macrocode} +\fi +% \end{macrocode} +% +%^^A---------------- +% \subsection{\XeTeX} % \begin{macrocode} \ifx x\bxac@engine % \end{macrocode} @@ -12426,7 +12441,7 @@ % \end{macrocode} % %^^A---------------- -% \subsection{{\LuaTeX}部分} +% \subsection{\LuaTeX} % \begin{macrocode} \ifx l\bxac@engine % \end{macrocode} diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls index 48e1736d573..f2f8f6a1f9f 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsarticle} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsarticle} \newif\ifjsc@needsp@tch @@ -471,8 +471,8 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} -\DeclareOption{nodvidriver*}{% - \def\bxjs@driver@opt{nodvidriver*}% +\DeclareOption{class-nodvidriver}{% + \def\bxjs@driver@opt{class-nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% @@ -528,19 +528,17 @@ \def\bxjs@declare@enum@option#1#2#3{% \bxjs@csletcs{bxjs@#2}{bxjs@#2@@#3}% \define@key{bxjs}{#1}{% - \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax + \@ifundefined{bxjs@#2@@##1}{% \bxjs@error@keyval{#1}{##1}% - \else \bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}% - \fi}} + }{\bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}}}} \@onlypreamble\bxjs@declare@bool@option \def\bxjs@declare@bool@option#1#2#3{% \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname \@nameuse{bxjs@#2#3}% \define@key{bxjs}{#1}[true]{% - \expandafter\ifx\csname bxjs@#2##1\endcsname\relax + \@ifundefined{bxjs@#2##1}{% \bxjs@error@keyval{#1}{##1}% - \else \@nameuse{bxjs@#2##1}% - \fi}} + }{\@nameuse{bxjs@#2##1}}}} \def\bxjs@set@keyval#1#2#3{% \bxjs@csletcs{bxjs@next}{bxjs@kv@#1@#2}% \ifx\bxjs@next\relax @@ -613,7 +611,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none -\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@class-nodvidriver}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -681,11 +679,6 @@ \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} \fi -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight{\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi \def\bxjs@tmpdo{% \def\bxjs@tmpa{\@gobble}% \expandafter\bxjs@tmpdo@a\@classoptionslist,\@nil,% @@ -858,12 +851,6 @@ \fi \fi \let\Cjascale\jsScale -\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T - \@tempcnta="80 \loop \ifnum\@tempcnta<"100 - \catcode\@tempcnta\active - \advance\@tempcnta\@ne - \repeat -\fi \ifbxjs@disguise@js \def\bxjs@js@clsname{jsarticle} \@namedef{ver@\bxjs@js@clsname.cls}{2001/01/01 (bxjs)} @@ -984,13 +971,20 @@ \ifbxjs@fix@at@cmd \def\@{\bxjs@SE{}} \fi -\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +\@onlypreamble\bxjs@patch@set@fontsize +\def\bxjs@patch@set@fontsize{% + \ifx\bxjs@prev@set@fontsize\set@fontsize\else + \def\bxjs@tmpa{\def\set@fontsize####1####2####3}% \expandafter\bxjs@tmpa\expandafter{% - \set@fontsize{#1}{#2}{#3}% + \set@fontsize{##1}{##2}{##3}% \expandafter\def\expandafter\size@update\expandafter{% \size@update \jsFontSizeChanged}% } + \let\bxjs@prev@set@fontsize\set@fontsize + \fi} +\bxjs@patch@set@fontsize +\AtEndOfPackage{\bxjs@patch@set@fontsize} \newcommand*\jsFontSizeChanged{% \jsZw=\f@size\p@ \jsZw=\jsScale \jsZw @@ -1000,7 +994,7 @@ \fi \fi\relax \jsResetDimen} -\newcommand*\jsResetDimen{} +\providecommand*\jsResetDimen{} \ifjsc@mag \let\jsc@setfontsize\@setfontsize \else @@ -1522,10 +1516,7 @@ } \fi \def\bxjs@label@sect#1{% - \expandafter\ifx\csname label#1\endcsname\relax - \csname the#1\endcsname - \else \csname label#1\endcsname - \fi} + \@ifundefined{label#1}{\@nameuse{the#1}}{\@nameuse{label#1}}} \def\@seccntformat#1{\bxjs@label@sect{#1}\quad} \ifnum\bxjs@label@section=\bxjs@label@section@@compat\else \def\@secapp{\presectionname} @@ -2010,8 +2001,8 @@ \global\let\bxjs@warnoldfontcmd@final\@empty \let\@tempa\@empty \def\do##1{% - \expandafter\ifx\csname bxjs@ofc/\string##1\endcsname\relax\else - \edef\@tempa{\@tempa \space\string##1}\fi} + \@ifundefined{bxjs@ofc/\string##1}{}{%else + \edef\@tempa{\@tempa \space\string##1}}}% \bxjs@oldfontcmd@list \ifx\@tempa\@empty\else \ClassWarningNoLine\bxjs@clsname @@ -2412,13 +2403,12 @@ \let\bxjs@iai\@empty } \bxjs@decl@Seireki@cmds -\let\bxjs@unxp\@firstofone \let\bxjs@onxp\@firstofone -\bxjs@test@engine\unexpanded{% - \let\bxjs@unxp\unexpanded \def\bxjs@onxp{\unexpanded\expandafter}} \newif\ifbxjs@bxwareki@avail \IfFileExists{bxwareki.sty}{% - \RequirePackage{bxwareki}[]% - \bxjs@bxwareki@availtrue}{} + \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T% + \RequirePackage{bxwareki}[2018/04/08]%v0.2 + \bxjs@bxwareki@availtrue + \fi}{} \ifbxjs@bxwareki@avail \let\bxjs@wareki@used\@empty \else \bxjs@robust@def\bxjs@wareki@used{% @@ -2437,11 +2427,16 @@ \else \edef\jayear{\the\year \bxjs@iai} \fi +\begingroup \let\bxjs@next\relax \ifbxjs@bxwareki@avail \ifx\warekigengo\@empty\else - \def\bxjs@next{\bxjs@onxp{\warekitoday}} + \def\bxjs@next{\warekitoday} + \bxjs@test@engine\unexpanded{% + \def\bxjs@next{\unexpanded\expandafter{\warekitoday}}} \fi\fi -\edef\bxjs@today{% +\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3} +\ifx\bxjs@iai\@empty \let\!\@empty \fi +\xdef\bxjs@today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or @@ -2451,11 +2446,12 @@ \ifx\bxjs@next\relax \expandafter\@firstoftwo \else \noexpand\bxjs@if@use@seireki \fi {% - \number\year\bxjs@iai\bxjs@unxp{年}% - \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% - \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + \number\year\bxjs@iai\!年% + \bxjs@iai\number\month\bxjs@iai\!月% + \bxjs@iai\number\day\bxjs@iai\!日% }{\bxjs@next}% \fi} +\endgroup \let\today\bxjs@today \g@addto@macro\bxjs@begin@document@hook{% \ifx\bbl@jpn@maybekansuji\@undefined\else diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls index 9d7140f3951..63cd3297bf7 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsbook} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsbook} \newif\ifjsc@needsp@tch @@ -477,8 +477,8 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} -\DeclareOption{nodvidriver*}{% - \def\bxjs@driver@opt{nodvidriver*}% +\DeclareOption{class-nodvidriver}{% + \def\bxjs@driver@opt{class-nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% @@ -534,19 +534,17 @@ \def\bxjs@declare@enum@option#1#2#3{% \bxjs@csletcs{bxjs@#2}{bxjs@#2@@#3}% \define@key{bxjs}{#1}{% - \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax + \@ifundefined{bxjs@#2@@##1}{% \bxjs@error@keyval{#1}{##1}% - \else \bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}% - \fi}} + }{\bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}}}} \@onlypreamble\bxjs@declare@bool@option \def\bxjs@declare@bool@option#1#2#3{% \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname \@nameuse{bxjs@#2#3}% \define@key{bxjs}{#1}[true]{% - \expandafter\ifx\csname bxjs@#2##1\endcsname\relax + \@ifundefined{bxjs@#2##1}{% \bxjs@error@keyval{#1}{##1}% - \else \@nameuse{bxjs@#2##1}% - \fi}} + }{\@nameuse{bxjs@#2##1}}}} \def\bxjs@set@keyval#1#2#3{% \bxjs@csletcs{bxjs@next}{bxjs@kv@#1@#2}% \ifx\bxjs@next\relax @@ -619,7 +617,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none -\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@class-nodvidriver}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -690,11 +688,6 @@ \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} \fi -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight{\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi \def\bxjs@tmpdo{% \def\bxjs@tmpa{\@gobble}% \expandafter\bxjs@tmpdo@a\@classoptionslist,\@nil,% @@ -867,12 +860,6 @@ \fi \fi \let\Cjascale\jsScale -\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T - \@tempcnta="80 \loop \ifnum\@tempcnta<"100 - \catcode\@tempcnta\active - \advance\@tempcnta\@ne - \repeat -\fi \ifbxjs@disguise@js \def\bxjs@js@clsname{jsbook} \@namedef{ver@\bxjs@js@clsname.cls}{2001/01/01 (bxjs)} @@ -993,13 +980,20 @@ \ifbxjs@fix@at@cmd \def\@{\bxjs@SE{}} \fi -\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +\@onlypreamble\bxjs@patch@set@fontsize +\def\bxjs@patch@set@fontsize{% + \ifx\bxjs@prev@set@fontsize\set@fontsize\else + \def\bxjs@tmpa{\def\set@fontsize####1####2####3}% \expandafter\bxjs@tmpa\expandafter{% - \set@fontsize{#1}{#2}{#3}% + \set@fontsize{##1}{##2}{##3}% \expandafter\def\expandafter\size@update\expandafter{% \size@update \jsFontSizeChanged}% } + \let\bxjs@prev@set@fontsize\set@fontsize + \fi} +\bxjs@patch@set@fontsize +\AtEndOfPackage{\bxjs@patch@set@fontsize} \newcommand*\jsFontSizeChanged{% \jsZw=\f@size\p@ \jsZw=\jsScale \jsZw @@ -1009,7 +1003,7 @@ \fi \fi\relax \jsResetDimen} -\newcommand*\jsResetDimen{} +\providecommand*\jsResetDimen{} \ifjsc@mag \let\jsc@setfontsize\@setfontsize \else @@ -1557,10 +1551,7 @@ } \fi \def\bxjs@label@sect#1{% - \expandafter\ifx\csname label#1\endcsname\relax - \csname the#1\endcsname - \else \csname label#1\endcsname - \fi} + \@ifundefined{label#1}{\@nameuse{the#1}}{\@nameuse{label#1}}} \def\@seccntformat#1{\bxjs@label@sect{#1}\quad} \ifnum\bxjs@label@section=\bxjs@label@section@@compat\else \def\@secapp{\presectionname} @@ -2094,8 +2085,8 @@ \global\let\bxjs@warnoldfontcmd@final\@empty \let\@tempa\@empty \def\do##1{% - \expandafter\ifx\csname bxjs@ofc/\string##1\endcsname\relax\else - \edef\@tempa{\@tempa \space\string##1}\fi} + \@ifundefined{bxjs@ofc/\string##1}{}{%else + \edef\@tempa{\@tempa \space\string##1}}}% \bxjs@oldfontcmd@list \ifx\@tempa\@empty\else \ClassWarningNoLine\bxjs@clsname @@ -2518,13 +2509,12 @@ \let\bxjs@iai\@empty } \bxjs@decl@Seireki@cmds -\let\bxjs@unxp\@firstofone \let\bxjs@onxp\@firstofone -\bxjs@test@engine\unexpanded{% - \let\bxjs@unxp\unexpanded \def\bxjs@onxp{\unexpanded\expandafter}} \newif\ifbxjs@bxwareki@avail \IfFileExists{bxwareki.sty}{% - \RequirePackage{bxwareki}[]% - \bxjs@bxwareki@availtrue}{} + \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T% + \RequirePackage{bxwareki}[2018/04/08]%v0.2 + \bxjs@bxwareki@availtrue + \fi}{} \ifbxjs@bxwareki@avail \let\bxjs@wareki@used\@empty \else \bxjs@robust@def\bxjs@wareki@used{% @@ -2543,11 +2533,16 @@ \else \edef\jayear{\the\year \bxjs@iai} \fi +\begingroup \let\bxjs@next\relax \ifbxjs@bxwareki@avail \ifx\warekigengo\@empty\else - \def\bxjs@next{\bxjs@onxp{\warekitoday}} + \def\bxjs@next{\warekitoday} + \bxjs@test@engine\unexpanded{% + \def\bxjs@next{\unexpanded\expandafter{\warekitoday}}} \fi\fi -\edef\bxjs@today{% +\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3} +\ifx\bxjs@iai\@empty \let\!\@empty \fi +\xdef\bxjs@today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or @@ -2557,11 +2552,12 @@ \ifx\bxjs@next\relax \expandafter\@firstoftwo \else \noexpand\bxjs@if@use@seireki \fi {% - \number\year\bxjs@iai\bxjs@unxp{年}% - \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% - \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + \number\year\bxjs@iai\!年% + \bxjs@iai\number\month\bxjs@iai\!月% + \bxjs@iai\number\day\bxjs@iai\!日% }{\bxjs@next}% \fi} +\endgroup \let\today\bxjs@today \g@addto@macro\bxjs@begin@document@hook{% \ifx\bbl@jpn@maybekansuji\@undefined\else diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty index 1675b628718..e3a079af9ee 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjscjkcat} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] \def\bxjx@pkgname{bxjscjkcat} \newcount\bxjx@cnta \@onlypreamble\bxjx@tmpdo diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty index 9779a6012d2..6b15e3cd6eb 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty @@ -22,13 +22,14 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjscompat} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] \def\bxac@pkgname{bxjscompat} \let\bxac@engine=n \def\bxac@do#1#2{% \edef\bxac@tmpa{\string#1}% \edef\bxac@tmpb{\meaning#1}% \ifx\bxac@tmpa\bxac@tmpb #2\fi} +\bxac@do\kanjiskip{\let\bxac@engine=j} \bxac@do\XeTeXversion{\let\bxac@engine=x} \bxac@do\luatexversion{\let\bxac@engine=l} \ifx\jsAtEndOfClass\@undefined @@ -38,6 +39,12 @@ \newif\ifbxac@in@old@behavior \let\ImposeOldLuaTeXBehavior\relax \let\RevokeOldLuaTeXBehavior\relax +\ifx n\bxac@engine +\@tempcnta="80 \loop \ifnum\@tempcnta<"100 + \catcode\@tempcnta\active + \advance\@tempcnta\@ne +\repeat +\fi \ifx x\bxac@engine \ifx\XeTeXcharclass\@undefined\else \bxac@delayed@if@bxjs{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def index 258bb98f958..897ce2bc4ab 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-minimal.def} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます \def\DeclareJaTextFontCommand#1#2{% \DeclareRobustCommand#1[1]{% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def index c6c3a17ec3b..454579014d1 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-modern.def} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] \input{bxjsja-standard.def} \ifnum0\if x\jsEngine1\fi\if l\jsEngine1\fi=\z@ \def\encodingdefault{T1}% diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def index bd60cab6484..c56abb4f262 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def @@ -21,7 +21,10 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-pandoc.def} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] +\if x\jsEngine + \PassOptionsToPackage{nospace}{xeCJK} +\fi \input{bxjsja-standard.def} \RequirePackage{bxjspandoc} \ifjsWitheTeX\else diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def index e2c69c1f767..617431aaebc 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def @@ -21,7 +21,7 @@ %% same distribution. (The sources need not necessarily be %% in the same archive or directory.) \ProvidesFile{bxjsja-standard.def} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます \input{bxjsja-minimal.def} \bxjs@simplejasetupfalse @@ -610,6 +610,7 @@ \edef\bxjs@next{% \noexpand\RequirePackage[scale=\jsScale]{luatexja-fontspec}[2015/08/26]% }\bxjs@next +\bxjs@patch@set@fontsize \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}{} diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty index b860ea83e46..a9bbd678833 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesPackage{bxjspandoc} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjsp@pkgname{bxjscjkcat} \let\bxjsp@engine=n diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls index c695c6efcb6..2ad9cb9fae8 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsreport} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsreport} \newif\ifjsc@needsp@tch @@ -477,8 +477,8 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} -\DeclareOption{nodvidriver*}{% - \def\bxjs@driver@opt{nodvidriver*}% +\DeclareOption{class-nodvidriver}{% + \def\bxjs@driver@opt{class-nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% @@ -534,19 +534,17 @@ \def\bxjs@declare@enum@option#1#2#3{% \bxjs@csletcs{bxjs@#2}{bxjs@#2@@#3}% \define@key{bxjs}{#1}{% - \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax + \@ifundefined{bxjs@#2@@##1}{% \bxjs@error@keyval{#1}{##1}% - \else \bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}% - \fi}} + }{\bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}}}} \@onlypreamble\bxjs@declare@bool@option \def\bxjs@declare@bool@option#1#2#3{% \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname \@nameuse{bxjs@#2#3}% \define@key{bxjs}{#1}[true]{% - \expandafter\ifx\csname bxjs@#2##1\endcsname\relax + \@ifundefined{bxjs@#2##1}{% \bxjs@error@keyval{#1}{##1}% - \else \@nameuse{bxjs@#2##1}% - \fi}} + }{\@nameuse{bxjs@#2##1}}}} \def\bxjs@set@keyval#1#2#3{% \bxjs@csletcs{bxjs@next}{bxjs@kv@#1@#2}% \ifx\bxjs@next\relax @@ -619,7 +617,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none -\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@class-nodvidriver}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -689,11 +687,6 @@ \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} \fi -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight{\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi \def\bxjs@tmpdo{% \def\bxjs@tmpa{\@gobble}% \expandafter\bxjs@tmpdo@a\@classoptionslist,\@nil,% @@ -866,12 +859,6 @@ \fi \fi \let\Cjascale\jsScale -\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T - \@tempcnta="80 \loop \ifnum\@tempcnta<"100 - \catcode\@tempcnta\active - \advance\@tempcnta\@ne - \repeat -\fi \ifbxjs@disguise@js \def\bxjs@js@clsname{jsbook} \@namedef{ver@\bxjs@js@clsname.cls}{2001/01/01 (bxjs)} @@ -992,13 +979,20 @@ \ifbxjs@fix@at@cmd \def\@{\bxjs@SE{}} \fi -\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +\@onlypreamble\bxjs@patch@set@fontsize +\def\bxjs@patch@set@fontsize{% + \ifx\bxjs@prev@set@fontsize\set@fontsize\else + \def\bxjs@tmpa{\def\set@fontsize####1####2####3}% \expandafter\bxjs@tmpa\expandafter{% - \set@fontsize{#1}{#2}{#3}% + \set@fontsize{##1}{##2}{##3}% \expandafter\def\expandafter\size@update\expandafter{% \size@update \jsFontSizeChanged}% } + \let\bxjs@prev@set@fontsize\set@fontsize + \fi} +\bxjs@patch@set@fontsize +\AtEndOfPackage{\bxjs@patch@set@fontsize} \newcommand*\jsFontSizeChanged{% \jsZw=\f@size\p@ \jsZw=\jsScale \jsZw @@ -1008,7 +1002,7 @@ \fi \fi\relax \jsResetDimen} -\newcommand*\jsResetDimen{} +\providecommand*\jsResetDimen{} \ifjsc@mag \let\jsc@setfontsize\@setfontsize \else @@ -1531,10 +1525,7 @@ } \fi \def\bxjs@label@sect#1{% - \expandafter\ifx\csname label#1\endcsname\relax - \csname the#1\endcsname - \else \csname label#1\endcsname - \fi} + \@ifundefined{label#1}{\@nameuse{the#1}}{\@nameuse{label#1}}} \def\@seccntformat#1{\bxjs@label@sect{#1}\quad} \ifnum\bxjs@label@section=\bxjs@label@section@@compat\else \def\@secapp{\presectionname} @@ -2116,8 +2107,8 @@ \global\let\bxjs@warnoldfontcmd@final\@empty \let\@tempa\@empty \def\do##1{% - \expandafter\ifx\csname bxjs@ofc/\string##1\endcsname\relax\else - \edef\@tempa{\@tempa \space\string##1}\fi} + \@ifundefined{bxjs@ofc/\string##1}{}{%else + \edef\@tempa{\@tempa \space\string##1}}}% \bxjs@oldfontcmd@list \ifx\@tempa\@empty\else \ClassWarningNoLine\bxjs@clsname @@ -2541,13 +2532,12 @@ \let\bxjs@iai\@empty } \bxjs@decl@Seireki@cmds -\let\bxjs@unxp\@firstofone \let\bxjs@onxp\@firstofone -\bxjs@test@engine\unexpanded{% - \let\bxjs@unxp\unexpanded \def\bxjs@onxp{\unexpanded\expandafter}} \newif\ifbxjs@bxwareki@avail \IfFileExists{bxwareki.sty}{% - \RequirePackage{bxwareki}[]% - \bxjs@bxwareki@availtrue}{} + \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T% + \RequirePackage{bxwareki}[2018/04/08]%v0.2 + \bxjs@bxwareki@availtrue + \fi}{} \ifbxjs@bxwareki@avail \let\bxjs@wareki@used\@empty \else \bxjs@robust@def\bxjs@wareki@used{% @@ -2566,11 +2556,16 @@ \else \edef\jayear{\the\year \bxjs@iai} \fi +\begingroup \let\bxjs@next\relax \ifbxjs@bxwareki@avail \ifx\warekigengo\@empty\else - \def\bxjs@next{\bxjs@onxp{\warekitoday}} + \def\bxjs@next{\warekitoday} + \bxjs@test@engine\unexpanded{% + \def\bxjs@next{\unexpanded\expandafter{\warekitoday}}} \fi\fi -\edef\bxjs@today{% +\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3} +\ifx\bxjs@iai\@empty \let\!\@empty \fi +\xdef\bxjs@today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or @@ -2580,11 +2575,12 @@ \ifx\bxjs@next\relax \expandafter\@firstoftwo \else \noexpand\bxjs@if@use@seireki \fi {% - \number\year\bxjs@iai\bxjs@unxp{年}% - \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% - \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + \number\year\bxjs@iai\!年% + \bxjs@iai\number\month\bxjs@iai\!月% + \bxjs@iai\number\day\bxjs@iai\!日% }{\bxjs@next}% \fi} +\endgroup \let\today\bxjs@today \g@addto@macro\bxjs@begin@document@hook{% \ifx\bbl@jpn@maybekansuji\@undefined\else diff --git a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls index 42f9f45a4ee..2bb123b9859 100644 --- a/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls +++ b/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls @@ -22,7 +22,7 @@ %% in the same archive or directory.) \NeedsTeXFormat{LaTeX2e} \ProvidesClass{bxjsslide} - [2023/06/20 v2.8a BXJS document classes] + [2023/07/01 v2.8b BXJS document classes] %% このファイルは日本語文字を含みます. \def\bxjs@clsname{bxjsslide} \newif\ifjsc@needsp@tch @@ -471,8 +471,8 @@ \DeclareOption{nodvidriver}{% \def\bxjs@driver@opt{nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} -\DeclareOption{nodvidriver*}{% - \def\bxjs@driver@opt{nodvidriver*}% +\DeclareOption{class-nodvidriver}{% + \def\bxjs@driver@opt{class-nodvidriver}% \let\bxjs@driver@given\bxjs@driver@@none} \DeclareOption{pdftex}{% \def\bxjs@driver@opt{pdftex}% @@ -528,19 +528,17 @@ \def\bxjs@declare@enum@option#1#2#3{% \bxjs@csletcs{bxjs@#2}{bxjs@#2@@#3}% \define@key{bxjs}{#1}{% - \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax + \@ifundefined{bxjs@#2@@##1}{% \bxjs@error@keyval{#1}{##1}% - \else \bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}% - \fi}} + }{\bxjs@csletcs{bxjs@#2}{bxjs@#2@@##1}}}} \@onlypreamble\bxjs@declare@bool@option \def\bxjs@declare@bool@option#1#2#3{% \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname \@nameuse{bxjs@#2#3}% \define@key{bxjs}{#1}[true]{% - \expandafter\ifx\csname bxjs@#2##1\endcsname\relax + \@ifundefined{bxjs@#2##1}{% \bxjs@error@keyval{#1}{##1}% - \else \@nameuse{bxjs@#2##1}% - \fi}} + }{\@nameuse{bxjs@#2##1}}}} \def\bxjs@set@keyval#1#2#3{% \bxjs@csletcs{bxjs@next}{bxjs@kv@#1@#2}% \ifx\bxjs@next\relax @@ -613,7 +611,7 @@ \let\bxjs@dvidriver@@dviout=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@xdvi=\bxjs@driver@@dvimode \let\bxjs@dvidriver@@nodvidriver=\bxjs@driver@@none -\bxjs@cslet{bxjs@dvidriver@@nodvidriver*}\bxjs@driver@@none +\bxjs@cslet{bxjs@dvidriver@@class-nodvidriver}\bxjs@driver@@none \define@key{bxjs}{dvi}{% \bxjs@csletcs{bxjs@tmpa}{bxjs@dvidriver@@#1}% \ifx\bxjs@tmpa\relax @@ -681,11 +679,6 @@ \if@slide \def\maybeblue{\@ifundefined{ver@color.sty}{}{\color{blue}}} \fi -\if@landscape - \setlength\@tempdima {\paperheight} - \setlength\paperheight{\paperwidth} - \setlength\paperwidth {\@tempdima} -\fi \def\bxjs@tmpdo{% \def\bxjs@tmpa{\@gobble}% \expandafter\bxjs@tmpdo@a\@classoptionslist,\@nil,% @@ -858,12 +851,6 @@ \fi \fi \let\Cjascale\jsScale -\if \if p\jsEngine T\else\if n\jsEngine T\else F\fi\fi T - \@tempcnta="80 \loop \ifnum\@tempcnta<"100 - \catcode\@tempcnta\active - \advance\@tempcnta\@ne - \repeat -\fi \ifbxjs@disguise@js \def\bxjs@js@clsname{jsarticle} \@namedef{ver@\bxjs@js@clsname.cls}{2001/01/01 (bxjs)} @@ -983,13 +970,20 @@ \ifbxjs@fix@at@cmd \def\@{\bxjs@SE{}} \fi -\def\bxjs@tmpa{\def\set@fontsize##1##2##3} +\@onlypreamble\bxjs@patch@set@fontsize +\def\bxjs@patch@set@fontsize{% + \ifx\bxjs@prev@set@fontsize\set@fontsize\else + \def\bxjs@tmpa{\def\set@fontsize####1####2####3}% \expandafter\bxjs@tmpa\expandafter{% - \set@fontsize{#1}{#2}{#3}% + \set@fontsize{##1}{##2}{##3}% \expandafter\def\expandafter\size@update\expandafter{% \size@update \jsFontSizeChanged}% } + \let\bxjs@prev@set@fontsize\set@fontsize + \fi} +\bxjs@patch@set@fontsize +\AtEndOfPackage{\bxjs@patch@set@fontsize} \newcommand*\jsFontSizeChanged{% \jsZw=\f@size\p@ \jsZw=\jsScale \jsZw @@ -999,7 +993,7 @@ \fi \fi\relax \jsResetDimen} -\newcommand*\jsResetDimen{} +\providecommand*\jsResetDimen{} \ifjsc@mag \let\jsc@setfontsize\@setfontsize \else @@ -1520,10 +1514,7 @@ } \fi \def\bxjs@label@sect#1{% - \expandafter\ifx\csname label#1\endcsname\relax - \csname the#1\endcsname - \else \csname label#1\endcsname - \fi} + \@ifundefined{label#1}{\@nameuse{the#1}}{\@nameuse{label#1}}} \def\@seccntformat#1{\bxjs@label@sect{#1}\quad} \ifnum\bxjs@label@section=\bxjs@label@section@@compat\else \def\@secapp{\presectionname} @@ -2008,8 +1999,8 @@ \global\let\bxjs@warnoldfontcmd@final\@empty \let\@tempa\@empty \def\do##1{% - \expandafter\ifx\csname bxjs@ofc/\string##1\endcsname\relax\else - \edef\@tempa{\@tempa \space\string##1}\fi} + \@ifundefined{bxjs@ofc/\string##1}{}{%else + \edef\@tempa{\@tempa \space\string##1}}}% \bxjs@oldfontcmd@list \ifx\@tempa\@empty\else \ClassWarningNoLine\bxjs@clsname @@ -2410,13 +2401,12 @@ \let\bxjs@iai\@empty } \bxjs@decl@Seireki@cmds -\let\bxjs@unxp\@firstofone \let\bxjs@onxp\@firstofone -\bxjs@test@engine\unexpanded{% - \let\bxjs@unxp\unexpanded \def\bxjs@onxp{\unexpanded\expandafter}} \newif\ifbxjs@bxwareki@avail \IfFileExists{bxwareki.sty}{% - \RequirePackage{bxwareki}[]% - \bxjs@bxwareki@availtrue}{} + \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T% + \RequirePackage{bxwareki}[2018/04/08]%v0.2 + \bxjs@bxwareki@availtrue + \fi}{} \ifbxjs@bxwareki@avail \let\bxjs@wareki@used\@empty \else \bxjs@robust@def\bxjs@wareki@used{% @@ -2435,11 +2425,16 @@ \else \edef\jayear{\the\year \bxjs@iai} \fi +\begingroup \let\bxjs@next\relax \ifbxjs@bxwareki@avail \ifx\warekigengo\@empty\else - \def\bxjs@next{\bxjs@onxp{\warekitoday}} + \def\bxjs@next{\warekitoday} + \bxjs@test@engine\unexpanded{% + \def\bxjs@next{\unexpanded\expandafter{\warekitoday}}} \fi\fi -\edef\bxjs@today{% +\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3} +\ifx\bxjs@iai\@empty \let\!\@empty \fi +\xdef\bxjs@today{% \if@english \ifcase\month\or January\or February\or March\or April\or May\or June\or @@ -2449,11 +2444,12 @@ \ifx\bxjs@next\relax \expandafter\@firstoftwo \else \noexpand\bxjs@if@use@seireki \fi {% - \number\year\bxjs@iai\bxjs@unxp{年}% - \bxjs@iai\number\month\bxjs@iai\bxjs@unxp{月}% - \bxjs@iai\number\day\bxjs@iai\bxjs@unxp{日}% + \number\year\bxjs@iai\!年% + \bxjs@iai\number\month\bxjs@iai\!月% + \bxjs@iai\number\day\bxjs@iai\!日% }{\bxjs@next}% \fi} +\endgroup \let\today\bxjs@today \g@addto@macro\bxjs@begin@document@hook{% \ifx\bbl@jpn@maybekansuji\@undefined\else |