texlive[67536] Master/texmf-dist: bxjscls (3jul23)

commits+karl at tug.org commits+karl at tug.org
Mon Jul 3 22:12:16 CEST 2023


Revision: 67536
          http://tug.org/svn/texlive?view=revision&revision=67536
Author:   karl
Date:     2023-07-03 22:12:16 +0200 (Mon, 03 Jul 2023)
Log Message:
-----------
bxjscls (3jul23)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
    trunk/Master/texmf-dist/doc/latex/bxjscls/README.md
    trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
    trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
    trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
    trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
    trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls

Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/README-ja.md	2023-07-03 20:12:16 UTC (rev 67536)
@@ -110,6 +110,8 @@
 更新履歴
 --------
 
+  * Version 2.8b 〈2023/07/01〉
+      - バグや細かい不具合を修正。
   * Version 2.8a 〈2023/06/20〉
       - バグ修正。
   * Version 2.8  〈2023/06/14〉

Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/README.md
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls-manual.tex	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 ※}

Modified: trunk/Master/texmf-dist/doc/latex/bxjscls/bxjscls.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx
===================================================================
--- trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/source/latex/bxjscls/bxjscls.dtx	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at 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 at driver@opt{nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
-\DeclareOption{nodvidriver*}{%
-  \def\bxjs at driver@opt{nodvidriver*}%
+\DeclareOption{class-nodvidriver}{%
+  \def\bxjs at driver@opt{class-nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
@@ -1653,11 +1653,8 @@
 \DeclareOption{dvipdfmx-if-dvi}{\bxjs at depre@opt at do{dvipdfmx-if-dvi}{dvi=dvipdfmx}}
 %    \end{macrocode}
 %
-% \end{ZRnote}
+% \paragraph{その他のBXJS独自オプション \ZRX}
 %
-% \paragraph{その他のBXJS独自オプション \ZRX}
-% \mbox{}
-% \begin{ZRnote}
 % \TODO 互換用オプションを分離する(2.0版で?)。
 %
 % \begin{macro}{\bxjs at depre@opt}
@@ -1719,8 +1716,6 @@
   \bxjs at 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 at declare@enum at option#1#2#3{%
   \bxjs at csletcs{bxjs@#2}{bxjs@#2@@#3}%
   \define at key{bxjs}{#1}{%
-    \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax
+    \@ifundefined{bxjs@#2@@##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}%
-    \fi}}
+    }{\bxjs at 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 at key{bxjs}{#1}[true]{%
-    \expandafter\ifx\csname bxjs@#2##1\endcsname\relax
+    \@ifundefined{bxjs@#2##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \@nameuse{bxjs@#2##1}%
-    \fi}}
+    }{\@nameuse{bxjs@#2##1}}}}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -2018,7 +2010,7 @@
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
-\bxjs at cslet{bxjs at dvidriver@@nodvidriver*}\bxjs at driver@@none
+\bxjs at cslet{bxjs at dvidriver@@class-nodvidriver}\bxjs at 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 at slide
   \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
 \fi
+%<*jsclasses>
 \if at 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 at fontsize}
 % |\fontsize| 命令(|\large| 等でなく)でフォントサイズ変更した場合
 % にもフックが実行されるように、|\@setfontsize| では
 % なく |\set at fontsize| に対してパッチを当てるように変更。
+% \begin{macro}{\bxjs at patch@set at fontsize}
+% |\set at fontsize| にパッチを当てる。
+% \Note |\set at fontsize| を書き換えるパッケージへの対策のため、
+% クラス読込中に複数回実行する。
+% 前回の実行直後から |\set at fontsize| が更新されている場合にのみ
+% 実際にパッチを当てる。
+% \TODO 新しい{\LaTeX}カーネルでは |selectfont| フックを利用したい。
 %    \begin{macrocode}
-\def\bxjs at tmpa{\def\set at fontsize##1##2##3}
+%\let\bxjs at prev@set at fontsize\@undefined
+\@onlypreamble\bxjs at patch@set at fontsize
+\def\bxjs at patch@set at fontsize{%
+  \ifx\bxjs at prev@set at fontsize\set at fontsize\else
+    \def\bxjs at tmpa{\def\set at fontsize####1####2####3}%
 \expandafter\bxjs at tmpa\expandafter{%
-  \set at fontsize{#1}{#2}{#3}%
+  \set at fontsize{##1}{##2}{##3}%
 % 末尾にコードを追加
   \expandafter\def\expandafter\size at update\expandafter{%
     \size at update
     \jsFontSizeChanged}%
 }
+    \let\bxjs at prev@set at fontsize\set at fontsize
+  \fi}
 %    \end{macrocode}
 % \end{macro}
+% この場とパッケージ末尾で作動させる。
+%    \begin{macrocode}
+\bxjs at patch@set at fontsize
+\AtEndOfPackage{\bxjs at patch@set at 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 at bd@pre at geometry@hook}
 % begin-documentフックのコード内で、|geometry| パッケージが挿入する
@@ -4285,11 +4275,10 @@
   \bxjs at layout@paper,\bxjs at layout}
 %    \end{macrocode}
 % \end{macro}
-% \end{ZRnote}
 %
 % \paragraph{geometry パッケージを読み込む \ZRX}
 % \mbox{}
-% \begin{ZRnote}
+%
 % \begin{macro}{\bxjs at apply@bd at pre@geometry at hook}
 % |geometry| パッケージのbegin-documentフックの処理に割り込む。
 % \Note {\LaTeX}のフックシステムがある場合はムニャムニャ。
@@ -4395,11 +4384,8 @@
 %    \end{macrocode}
 % \end{macro}
 %
-% \end{ZRnote}
+% \paragraph{geometry パッケージを読み込まない \ZRX}
 %
-% \paragraph{geometry パッケージを読み込まない \ZRX}
-% \mbox{}
-% \begin{ZRnote}
 % |geometry=user|の場合の処理。
 %    \begin{macrocode}
 \else\ifx\bxjs at geometry\bxjs at 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 at 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 at label@sect{#1}\quad}
 %    \end{macrocode}
 % \end{macro}
@@ -7518,8 +7498,8 @@
   \global\let\bxjs at warnoldfontcmd@final\@empty
   \let\@tempa\@empty
   \def\do##1{%
-    \expandafter\ifx\csname bxjs at ofc/\string##1\endcsname\relax\else
-      \edef\@tempa{\@tempa \space\string##1}\fi}
+    \@ifundefined{bxjs at ofc/\string##1}{}{%else
+      \edef\@tempa{\@tempa \space\string##1}}}%
   \bxjs at oldfontcmd@list
   \ifx\@tempa\@empty\else
     \ClassWarningNoLine\bxjs at clsname
@@ -8857,9 +8837,6 @@
 \let\bxjs at iai\@empty
 }
 \bxjs at decl@Seireki at cmds
-\let\bxjs at unxp\@firstofone \let\bxjs at onxp\@firstofone
-\bxjs at test@engine\unexpanded{%
-  \let\bxjs at unxp\unexpanded \def\bxjs at onxp{\unexpanded\expandafter}}
 %    \end{macrocode}
 % \end{macro}
 % \end{macro}
@@ -8866,11 +8843,16 @@
 %
 % \begin{macro}{\ifbxjs at bxwareki@avail}
 % |bxwareki| パッケージが使用できるか。
+% \Note 8ビット欧文でかつ非e-TeXなエンジン(現状ではサポート外だが)
+% では |bxwareki| を読むだけでエラーが発生してしまうので、
+% この場合は読込を回避する。
 %    \begin{macrocode}
 \newif\ifbxjs at bxwareki@avail
 \IfFileExists{bxwareki.sty}{%
-  \RequirePackage{bxwareki}[]%
-  \bxjs at bxwareki@availtrue}{}
+  \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T%
+    \RequirePackage{bxwareki}[2018/04/08]%v0.2
+    \bxjs at bxwareki@availtrue
+  \fi}{}
 %    \end{macrocode}
 % \end{macro}
 %
@@ -8942,11 +8924,16 @@
     令和\pltx at today@year@{2018}%
   \fi\fi}
 %</jsclasses>
+\begingroup
 \let\bxjs at next\relax
 \ifbxjs at bxwareki@avail \ifx\warekigengo\@empty\else
-  \def\bxjs at next{\bxjs at onxp{\warekitoday}}
+  \def\bxjs at next{\warekitoday}
+  \bxjs at test@engine\unexpanded{%
+    \def\bxjs at next{\unexpanded\expandafter{\warekitoday}}}
 \fi\fi
-\edef\bxjs at today{%
+\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3}
+\ifx\bxjs at iai\@empty \let\!\@empty \fi
+\xdef\bxjs at today{%
   \if at english
     \ifcase\month\or
       January\or February\or March\or April\or May\or June\or
@@ -8956,11 +8943,12 @@
     \ifx\bxjs at next\relax \expandafter\@firstoftwo
     \else \noexpand\bxjs at if@use at seireki
     \fi {%
-      \number\year\bxjs at iai\bxjs at unxp{年}%
-      \bxjs at iai\number\month\bxjs at iai\bxjs at unxp{月}%
-      \bxjs at iai\number\day\bxjs at iai\bxjs at unxp{日}%
+      \number\year\bxjs at iai\!年%
+      \bxjs at iai\number\month\bxjs at iai\!月%
+      \bxjs at iai\number\day\bxjs at iai\!日%
     }{\bxjs at next}%
   \fi}
+\endgroup
 \let\today\bxjs at today
 %    \end{macrocode}
 % \end{macro}
@@ -9011,8 +8999,6 @@
 %
 %
 % \paragraph{BXJS独自の追加処理 \ZRX}
-% \mbox{}
-% \begin{ZRnote}
 %
 % フックを実行する。
 %    \begin{macrocode}
@@ -9023,9 +9009,6 @@
 \input{bxjsja-\bxjs at jadriver.def}
 %    \end{macrocode}
 %
-% おしまい。
-% \end{ZRnote}
-%
 % \section{実験的コード}
 %
 % \begin{ZRnote}
@@ -11137,6 +11120,10 @@
   \noexpand\RequirePackage[scale=\jsScale]{luatexja-fontspec}[2015/08/26]%
 }\bxjs at next
 %    \end{macrocode}
+% |\set at fontsize| へのパッチ適用を再度行う。
+%    \begin{macrocode}
+\bxjs at patch@set at fontsize
+%    \end{macrocode}
 %
 % フォント代替の明示的定義。
 %    \begin{macrocode}
@@ -11485,9 +11472,16 @@
 %^^A----------------
 % \subsection{準備}
 %
+% |space| してはいけない。
+%    \begin{macrocode}
+%<*pandoc>
+\if x\jsEngine
+  \PassOptionsToPackage{nospace}{xeCJK}
+\fi
+%    \end{macrocode}
+%
 % standardドライバの設定を引き継ぐ。
 %    \begin{macrocode}
-%<*pandoc>
 \input{bxjsja-standard.def}
 %    \end{macrocode}
 %
@@ -12319,6 +12313,7 @@
   \edef\bxac at tmpa{\string#1}%
   \edef\bxac at tmpb{\meaning#1}%
   \ifx\bxac at tmpa\bxac at tmpb #2\fi}
+\bxac at do\kanjiskip{\let\bxac at engine=j}
 \bxac at do\XeTeXversion{\let\bxac at engine=x}
 \bxac at do\luatexversion{\let\bxac at engine=l}
 %    \end{macrocode}
@@ -12350,8 +12345,28 @@
 % \end{macro}
 %
 %^^A----------------
-% \subsection{{\XeTeX}部分}
+% \subsection{8bit欧文{\TeX}}
 %    \begin{macrocode}
+\ifx n\bxac at 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 at engine
 %    \end{macrocode}
 %
@@ -12426,7 +12441,7 @@
 %    \end{macrocode}
 %
 %^^A----------------
-% \subsection{{\LuaTeX}部分}
+% \subsection{\LuaTeX}
 %    \begin{macrocode}
 \ifx l\bxac at engine
 %    \end{macrocode}

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsarticle.cls	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at clsname{bxjsarticle}
 \newif\ifjsc at needsp@tch
@@ -471,8 +471,8 @@
 \DeclareOption{nodvidriver}{%
   \def\bxjs at driver@opt{nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
-\DeclareOption{nodvidriver*}{%
-  \def\bxjs at driver@opt{nodvidriver*}%
+\DeclareOption{class-nodvidriver}{%
+  \def\bxjs at driver@opt{class-nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
@@ -528,19 +528,17 @@
 \def\bxjs at declare@enum at option#1#2#3{%
   \bxjs at csletcs{bxjs@#2}{bxjs@#2@@#3}%
   \define at key{bxjs}{#1}{%
-    \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax
+    \@ifundefined{bxjs@#2@@##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}%
-    \fi}}
+    }{\bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}}}}
 \@onlypreamble\bxjs at declare@bool at option
 \def\bxjs at declare@bool at option#1#2#3{%
   \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname
   \@nameuse{bxjs@#2#3}%
   \define at key{bxjs}{#1}[true]{%
-    \expandafter\ifx\csname bxjs@#2##1\endcsname\relax
+    \@ifundefined{bxjs@#2##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \@nameuse{bxjs@#2##1}%
-    \fi}}
+    }{\@nameuse{bxjs@#2##1}}}}
 \def\bxjs at set@keyval#1#2#3{%
   \bxjs at csletcs{bxjs at next}{bxjs at kv@#1@#2}%
   \ifx\bxjs at next\relax
@@ -613,7 +611,7 @@
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
-\bxjs at cslet{bxjs at dvidriver@@nodvidriver*}\bxjs at driver@@none
+\bxjs at cslet{bxjs at dvidriver@@class-nodvidriver}\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \bxjs at csletcs{bxjs at tmpa}{bxjs at dvidriver@@#1}%
   \ifx\bxjs at tmpa\relax
@@ -681,11 +679,6 @@
 \if at slide
   \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
 \fi
-\if at landscape
-  \setlength\@tempdima  {\paperheight}
-  \setlength\paperheight{\paperwidth}
-  \setlength\paperwidth {\@tempdima}
-\fi
 \def\bxjs at tmpdo{%
   \def\bxjs at tmpa{\@gobble}%
   \expandafter\bxjs at 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 at disguise@js
 \def\bxjs at js@clsname{jsarticle}
   \@namedef{ver@\bxjs at js@clsname.cls}{2001/01/01 (bxjs)}
@@ -984,13 +971,20 @@
 \ifbxjs at fix@at at cmd
   \def\@{\bxjs at SE{}}
 \fi
-\def\bxjs at tmpa{\def\set at fontsize##1##2##3}
+\@onlypreamble\bxjs at patch@set at fontsize
+\def\bxjs at patch@set at fontsize{%
+  \ifx\bxjs at prev@set at fontsize\set at fontsize\else
+    \def\bxjs at tmpa{\def\set at fontsize####1####2####3}%
 \expandafter\bxjs at tmpa\expandafter{%
-  \set at fontsize{#1}{#2}{#3}%
+  \set at fontsize{##1}{##2}{##3}%
   \expandafter\def\expandafter\size at update\expandafter{%
     \size at update
     \jsFontSizeChanged}%
 }
+    \let\bxjs at prev@set at fontsize\set at fontsize
+  \fi}
+\bxjs at patch@set at fontsize
+\AtEndOfPackage{\bxjs at patch@set at fontsize}
 \newcommand*\jsFontSizeChanged{%
   \jsZw=\f at size\p@
   \jsZw=\jsScale \jsZw
@@ -1000,7 +994,7 @@
     \fi
   \fi\relax
   \jsResetDimen}
-\newcommand*\jsResetDimen{}
+\providecommand*\jsResetDimen{}
 \ifjsc at mag
   \let\jsc at setfontsize\@setfontsize
 \else
@@ -1522,10 +1516,7 @@
   }
 \fi
 \def\bxjs at 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 at label@sect{#1}\quad}
 \ifnum\bxjs at label@section=\bxjs at label@section@@compat\else
 \def\@secapp{\presectionname}
@@ -2010,8 +2001,8 @@
   \global\let\bxjs at warnoldfontcmd@final\@empty
   \let\@tempa\@empty
   \def\do##1{%
-    \expandafter\ifx\csname bxjs at ofc/\string##1\endcsname\relax\else
-      \edef\@tempa{\@tempa \space\string##1}\fi}
+    \@ifundefined{bxjs at ofc/\string##1}{}{%else
+      \edef\@tempa{\@tempa \space\string##1}}}%
   \bxjs at oldfontcmd@list
   \ifx\@tempa\@empty\else
     \ClassWarningNoLine\bxjs at clsname
@@ -2412,13 +2403,12 @@
 \let\bxjs at iai\@empty
 }
 \bxjs at decl@Seireki at cmds
-\let\bxjs at unxp\@firstofone \let\bxjs at onxp\@firstofone
-\bxjs at test@engine\unexpanded{%
-  \let\bxjs at unxp\unexpanded \def\bxjs at onxp{\unexpanded\expandafter}}
 \newif\ifbxjs at bxwareki@avail
 \IfFileExists{bxwareki.sty}{%
-  \RequirePackage{bxwareki}[]%
-  \bxjs at bxwareki@availtrue}{}
+  \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T%
+    \RequirePackage{bxwareki}[2018/04/08]%v0.2
+    \bxjs at bxwareki@availtrue
+  \fi}{}
 \ifbxjs at bxwareki@avail \let\bxjs at wareki@used\@empty
 \else
   \bxjs at robust@def\bxjs at wareki@used{%
@@ -2437,11 +2427,16 @@
 \else
   \edef\jayear{\the\year \bxjs at iai}
 \fi
+\begingroup
 \let\bxjs at next\relax
 \ifbxjs at bxwareki@avail \ifx\warekigengo\@empty\else
-  \def\bxjs at next{\bxjs at onxp{\warekitoday}}
+  \def\bxjs at next{\warekitoday}
+  \bxjs at test@engine\unexpanded{%
+    \def\bxjs at next{\unexpanded\expandafter{\warekitoday}}}
 \fi\fi
-\edef\bxjs at today{%
+\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3}
+\ifx\bxjs at iai\@empty \let\!\@empty \fi
+\xdef\bxjs at today{%
   \if at english
     \ifcase\month\or
       January\or February\or March\or April\or May\or June\or
@@ -2451,11 +2446,12 @@
     \ifx\bxjs at next\relax \expandafter\@firstoftwo
     \else \noexpand\bxjs at if@use at seireki
     \fi {%
-      \number\year\bxjs at iai\bxjs at unxp{年}%
-      \bxjs at iai\number\month\bxjs at iai\bxjs at unxp{月}%
-      \bxjs at iai\number\day\bxjs at iai\bxjs at unxp{日}%
+      \number\year\bxjs at iai\!年%
+      \bxjs at iai\number\month\bxjs at iai\!月%
+      \bxjs at iai\number\day\bxjs at iai\!日%
     }{\bxjs at next}%
   \fi}
+\endgroup
 \let\today\bxjs at today
 \g at addto@macro\bxjs at begin@document at hook{%
   \ifx\bbl at jpn@maybekansuji\@undefined\else

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsbook.cls	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at clsname{bxjsbook}
 \newif\ifjsc at needsp@tch
@@ -477,8 +477,8 @@
 \DeclareOption{nodvidriver}{%
   \def\bxjs at driver@opt{nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
-\DeclareOption{nodvidriver*}{%
-  \def\bxjs at driver@opt{nodvidriver*}%
+\DeclareOption{class-nodvidriver}{%
+  \def\bxjs at driver@opt{class-nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
@@ -534,19 +534,17 @@
 \def\bxjs at declare@enum at option#1#2#3{%
   \bxjs at csletcs{bxjs@#2}{bxjs@#2@@#3}%
   \define at key{bxjs}{#1}{%
-    \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax
+    \@ifundefined{bxjs@#2@@##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}%
-    \fi}}
+    }{\bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}}}}
 \@onlypreamble\bxjs at declare@bool at option
 \def\bxjs at declare@bool at option#1#2#3{%
   \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname
   \@nameuse{bxjs@#2#3}%
   \define at key{bxjs}{#1}[true]{%
-    \expandafter\ifx\csname bxjs@#2##1\endcsname\relax
+    \@ifundefined{bxjs@#2##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \@nameuse{bxjs@#2##1}%
-    \fi}}
+    }{\@nameuse{bxjs@#2##1}}}}
 \def\bxjs at set@keyval#1#2#3{%
   \bxjs at csletcs{bxjs at next}{bxjs at kv@#1@#2}%
   \ifx\bxjs at next\relax
@@ -619,7 +617,7 @@
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
-\bxjs at cslet{bxjs at dvidriver@@nodvidriver*}\bxjs at driver@@none
+\bxjs at cslet{bxjs at dvidriver@@class-nodvidriver}\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \bxjs at csletcs{bxjs at tmpa}{bxjs at dvidriver@@#1}%
   \ifx\bxjs at tmpa\relax
@@ -690,11 +688,6 @@
 \if at slide
   \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
 \fi
-\if at landscape
-  \setlength\@tempdima  {\paperheight}
-  \setlength\paperheight{\paperwidth}
-  \setlength\paperwidth {\@tempdima}
-\fi
 \def\bxjs at tmpdo{%
   \def\bxjs at tmpa{\@gobble}%
   \expandafter\bxjs at 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 at disguise@js
 \def\bxjs at js@clsname{jsbook}
   \@namedef{ver@\bxjs at js@clsname.cls}{2001/01/01 (bxjs)}
@@ -993,13 +980,20 @@
 \ifbxjs at fix@at at cmd
   \def\@{\bxjs at SE{}}
 \fi
-\def\bxjs at tmpa{\def\set at fontsize##1##2##3}
+\@onlypreamble\bxjs at patch@set at fontsize
+\def\bxjs at patch@set at fontsize{%
+  \ifx\bxjs at prev@set at fontsize\set at fontsize\else
+    \def\bxjs at tmpa{\def\set at fontsize####1####2####3}%
 \expandafter\bxjs at tmpa\expandafter{%
-  \set at fontsize{#1}{#2}{#3}%
+  \set at fontsize{##1}{##2}{##3}%
   \expandafter\def\expandafter\size at update\expandafter{%
     \size at update
     \jsFontSizeChanged}%
 }
+    \let\bxjs at prev@set at fontsize\set at fontsize
+  \fi}
+\bxjs at patch@set at fontsize
+\AtEndOfPackage{\bxjs at patch@set at fontsize}
 \newcommand*\jsFontSizeChanged{%
   \jsZw=\f at size\p@
   \jsZw=\jsScale \jsZw
@@ -1009,7 +1003,7 @@
     \fi
   \fi\relax
   \jsResetDimen}
-\newcommand*\jsResetDimen{}
+\providecommand*\jsResetDimen{}
 \ifjsc at mag
   \let\jsc at setfontsize\@setfontsize
 \else
@@ -1557,10 +1551,7 @@
   }
 \fi
 \def\bxjs at 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 at label@sect{#1}\quad}
 \ifnum\bxjs at label@section=\bxjs at label@section@@compat\else
 \def\@secapp{\presectionname}
@@ -2094,8 +2085,8 @@
   \global\let\bxjs at warnoldfontcmd@final\@empty
   \let\@tempa\@empty
   \def\do##1{%
-    \expandafter\ifx\csname bxjs at ofc/\string##1\endcsname\relax\else
-      \edef\@tempa{\@tempa \space\string##1}\fi}
+    \@ifundefined{bxjs at ofc/\string##1}{}{%else
+      \edef\@tempa{\@tempa \space\string##1}}}%
   \bxjs at oldfontcmd@list
   \ifx\@tempa\@empty\else
     \ClassWarningNoLine\bxjs at clsname
@@ -2518,13 +2509,12 @@
 \let\bxjs at iai\@empty
 }
 \bxjs at decl@Seireki at cmds
-\let\bxjs at unxp\@firstofone \let\bxjs at onxp\@firstofone
-\bxjs at test@engine\unexpanded{%
-  \let\bxjs at unxp\unexpanded \def\bxjs at onxp{\unexpanded\expandafter}}
 \newif\ifbxjs at bxwareki@avail
 \IfFileExists{bxwareki.sty}{%
-  \RequirePackage{bxwareki}[]%
-  \bxjs at bxwareki@availtrue}{}
+  \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T%
+    \RequirePackage{bxwareki}[2018/04/08]%v0.2
+    \bxjs at bxwareki@availtrue
+  \fi}{}
 \ifbxjs at bxwareki@avail \let\bxjs at wareki@used\@empty
 \else
   \bxjs at robust@def\bxjs at wareki@used{%
@@ -2543,11 +2533,16 @@
 \else
   \edef\jayear{\the\year \bxjs at iai}
 \fi
+\begingroup
 \let\bxjs at next\relax
 \ifbxjs at bxwareki@avail \ifx\warekigengo\@empty\else
-  \def\bxjs at next{\bxjs at onxp{\warekitoday}}
+  \def\bxjs at next{\warekitoday}
+  \bxjs at test@engine\unexpanded{%
+    \def\bxjs at next{\unexpanded\expandafter{\warekitoday}}}
 \fi\fi
-\edef\bxjs at today{%
+\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3}
+\ifx\bxjs at iai\@empty \let\!\@empty \fi
+\xdef\bxjs at today{%
   \if at english
     \ifcase\month\or
       January\or February\or March\or April\or May\or June\or
@@ -2557,11 +2552,12 @@
     \ifx\bxjs at next\relax \expandafter\@firstoftwo
     \else \noexpand\bxjs at if@use at seireki
     \fi {%
-      \number\year\bxjs at iai\bxjs at unxp{年}%
-      \bxjs at iai\number\month\bxjs at iai\bxjs at unxp{月}%
-      \bxjs at iai\number\day\bxjs at iai\bxjs at unxp{日}%
+      \number\year\bxjs at iai\!年%
+      \bxjs at iai\number\month\bxjs at iai\!月%
+      \bxjs at iai\number\day\bxjs at iai\!日%
     }{\bxjs at next}%
   \fi}
+\endgroup
 \let\today\bxjs at today
 \g at addto@macro\bxjs at begin@document at hook{%
   \ifx\bbl at jpn@maybekansuji\@undefined\else

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscjkcat.sty	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at pkgname{bxjscjkcat}
 \newcount\bxjx at cnta
 \@onlypreamble\bxjx at tmpdo

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjscompat.sty	2023-07-03 20:12:16 UTC (rev 67536)
@@ -22,7 +22,7 @@
 %% 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 at pkgname{bxjscompat}
 \let\bxac at engine=n
 \def\bxac at do#1#2{%
@@ -29,6 +29,7 @@
   \edef\bxac at tmpa{\string#1}%
   \edef\bxac at tmpb{\meaning#1}%
   \ifx\bxac at tmpa\bxac at tmpb #2\fi}
+\bxac at do\kanjiskip{\let\bxac at engine=j}
 \bxac at do\XeTeXversion{\let\bxac at engine=x}
 \bxac at do\luatexversion{\let\bxac at engine=l}
 \ifx\jsAtEndOfClass\@undefined
@@ -38,6 +39,12 @@
 \newif\ifbxac at in@old at behavior
 \let\ImposeOldLuaTeXBehavior\relax
 \let\RevokeOldLuaTeXBehavior\relax
+\ifx n\bxac at engine
+\@tempcnta="80 \loop \ifnum\@tempcnta<"100
+  \catcode\@tempcnta\active
+  \advance\@tempcnta\@ne
+\repeat
+\fi
 \ifx x\bxac at engine
 \ifx\XeTeXcharclass\@undefined\else
 \bxac at delayed@if at bxjs{%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-minimal.def	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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]{%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-modern.def	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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}%

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-pandoc.def	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsja-standard.def	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at simplejasetupfalse
@@ -610,6 +610,7 @@
 \edef\bxjs at next{%
   \noexpand\RequirePackage[scale=\jsScale]{luatexja-fontspec}[2015/08/26]%
 }\bxjs at next
+\bxjs at patch@set at 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}{}

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjspandoc.sty	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at pkgname{bxjscjkcat}
 \let\bxjsp at engine=n

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsreport.cls	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at clsname{bxjsreport}
 \newif\ifjsc at needsp@tch
@@ -477,8 +477,8 @@
 \DeclareOption{nodvidriver}{%
   \def\bxjs at driver@opt{nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
-\DeclareOption{nodvidriver*}{%
-  \def\bxjs at driver@opt{nodvidriver*}%
+\DeclareOption{class-nodvidriver}{%
+  \def\bxjs at driver@opt{class-nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
@@ -534,19 +534,17 @@
 \def\bxjs at declare@enum at option#1#2#3{%
   \bxjs at csletcs{bxjs@#2}{bxjs@#2@@#3}%
   \define at key{bxjs}{#1}{%
-    \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax
+    \@ifundefined{bxjs@#2@@##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}%
-    \fi}}
+    }{\bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}}}}
 \@onlypreamble\bxjs at declare@bool at option
 \def\bxjs at declare@bool at option#1#2#3{%
   \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname
   \@nameuse{bxjs@#2#3}%
   \define at key{bxjs}{#1}[true]{%
-    \expandafter\ifx\csname bxjs@#2##1\endcsname\relax
+    \@ifundefined{bxjs@#2##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \@nameuse{bxjs@#2##1}%
-    \fi}}
+    }{\@nameuse{bxjs@#2##1}}}}
 \def\bxjs at set@keyval#1#2#3{%
   \bxjs at csletcs{bxjs at next}{bxjs at kv@#1@#2}%
   \ifx\bxjs at next\relax
@@ -619,7 +617,7 @@
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
-\bxjs at cslet{bxjs at dvidriver@@nodvidriver*}\bxjs at driver@@none
+\bxjs at cslet{bxjs at dvidriver@@class-nodvidriver}\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \bxjs at csletcs{bxjs at tmpa}{bxjs at dvidriver@@#1}%
   \ifx\bxjs at tmpa\relax
@@ -689,11 +687,6 @@
 \if at slide
   \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
 \fi
-\if at landscape
-  \setlength\@tempdima  {\paperheight}
-  \setlength\paperheight{\paperwidth}
-  \setlength\paperwidth {\@tempdima}
-\fi
 \def\bxjs at tmpdo{%
   \def\bxjs at tmpa{\@gobble}%
   \expandafter\bxjs at 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 at disguise@js
 \def\bxjs at js@clsname{jsbook}
   \@namedef{ver@\bxjs at js@clsname.cls}{2001/01/01 (bxjs)}
@@ -992,13 +979,20 @@
 \ifbxjs at fix@at at cmd
   \def\@{\bxjs at SE{}}
 \fi
-\def\bxjs at tmpa{\def\set at fontsize##1##2##3}
+\@onlypreamble\bxjs at patch@set at fontsize
+\def\bxjs at patch@set at fontsize{%
+  \ifx\bxjs at prev@set at fontsize\set at fontsize\else
+    \def\bxjs at tmpa{\def\set at fontsize####1####2####3}%
 \expandafter\bxjs at tmpa\expandafter{%
-  \set at fontsize{#1}{#2}{#3}%
+  \set at fontsize{##1}{##2}{##3}%
   \expandafter\def\expandafter\size at update\expandafter{%
     \size at update
     \jsFontSizeChanged}%
 }
+    \let\bxjs at prev@set at fontsize\set at fontsize
+  \fi}
+\bxjs at patch@set at fontsize
+\AtEndOfPackage{\bxjs at patch@set at fontsize}
 \newcommand*\jsFontSizeChanged{%
   \jsZw=\f at size\p@
   \jsZw=\jsScale \jsZw
@@ -1008,7 +1002,7 @@
     \fi
   \fi\relax
   \jsResetDimen}
-\newcommand*\jsResetDimen{}
+\providecommand*\jsResetDimen{}
 \ifjsc at mag
   \let\jsc at setfontsize\@setfontsize
 \else
@@ -1531,10 +1525,7 @@
   }
 \fi
 \def\bxjs at 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 at label@sect{#1}\quad}
 \ifnum\bxjs at label@section=\bxjs at label@section@@compat\else
 \def\@secapp{\presectionname}
@@ -2116,8 +2107,8 @@
   \global\let\bxjs at warnoldfontcmd@final\@empty
   \let\@tempa\@empty
   \def\do##1{%
-    \expandafter\ifx\csname bxjs at ofc/\string##1\endcsname\relax\else
-      \edef\@tempa{\@tempa \space\string##1}\fi}
+    \@ifundefined{bxjs at ofc/\string##1}{}{%else
+      \edef\@tempa{\@tempa \space\string##1}}}%
   \bxjs at oldfontcmd@list
   \ifx\@tempa\@empty\else
     \ClassWarningNoLine\bxjs at clsname
@@ -2541,13 +2532,12 @@
 \let\bxjs at iai\@empty
 }
 \bxjs at decl@Seireki at cmds
-\let\bxjs at unxp\@firstofone \let\bxjs at onxp\@firstofone
-\bxjs at test@engine\unexpanded{%
-  \let\bxjs at unxp\unexpanded \def\bxjs at onxp{\unexpanded\expandafter}}
 \newif\ifbxjs at bxwareki@avail
 \IfFileExists{bxwareki.sty}{%
-  \RequirePackage{bxwareki}[]%
-  \bxjs at bxwareki@availtrue}{}
+  \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T%
+    \RequirePackage{bxwareki}[2018/04/08]%v0.2
+    \bxjs at bxwareki@availtrue
+  \fi}{}
 \ifbxjs at bxwareki@avail \let\bxjs at wareki@used\@empty
 \else
   \bxjs at robust@def\bxjs at wareki@used{%
@@ -2566,11 +2556,16 @@
 \else
   \edef\jayear{\the\year \bxjs at iai}
 \fi
+\begingroup
 \let\bxjs at next\relax
 \ifbxjs at bxwareki@avail \ifx\warekigengo\@empty\else
-  \def\bxjs at next{\bxjs at onxp{\warekitoday}}
+  \def\bxjs at next{\warekitoday}
+  \bxjs at test@engine\unexpanded{%
+    \def\bxjs at next{\unexpanded\expandafter{\warekitoday}}}
 \fi\fi
-\edef\bxjs at today{%
+\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3}
+\ifx\bxjs at iai\@empty \let\!\@empty \fi
+\xdef\bxjs at today{%
   \if at english
     \ifcase\month\or
       January\or February\or March\or April\or May\or June\or
@@ -2580,11 +2575,12 @@
     \ifx\bxjs at next\relax \expandafter\@firstoftwo
     \else \noexpand\bxjs at if@use at seireki
     \fi {%
-      \number\year\bxjs at iai\bxjs at unxp{年}%
-      \bxjs at iai\number\month\bxjs at iai\bxjs at unxp{月}%
-      \bxjs at iai\number\day\bxjs at iai\bxjs at unxp{日}%
+      \number\year\bxjs at iai\!年%
+      \bxjs at iai\number\month\bxjs at iai\!月%
+      \bxjs at iai\number\day\bxjs at iai\!日%
     }{\bxjs at next}%
   \fi}
+\endgroup
 \let\today\bxjs at today
 \g at addto@macro\bxjs at begin@document at hook{%
   \ifx\bbl at jpn@maybekansuji\@undefined\else

Modified: trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls
===================================================================
--- trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2023-07-03 20:12:04 UTC (rev 67535)
+++ trunk/Master/texmf-dist/tex/latex/bxjscls/bxjsslide.cls	2023-07-03 20:12:16 UTC (rev 67536)
@@ -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 at clsname{bxjsslide}
 \newif\ifjsc at needsp@tch
@@ -471,8 +471,8 @@
 \DeclareOption{nodvidriver}{%
   \def\bxjs at driver@opt{nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
-\DeclareOption{nodvidriver*}{%
-  \def\bxjs at driver@opt{nodvidriver*}%
+\DeclareOption{class-nodvidriver}{%
+  \def\bxjs at driver@opt{class-nodvidriver}%
   \let\bxjs at driver@given\bxjs at driver@@none}
 \DeclareOption{pdftex}{%
   \def\bxjs at driver@opt{pdftex}%
@@ -528,19 +528,17 @@
 \def\bxjs at declare@enum at option#1#2#3{%
   \bxjs at csletcs{bxjs@#2}{bxjs@#2@@#3}%
   \define at key{bxjs}{#1}{%
-    \expandafter\ifx\csname bxjs@#2@@##1\endcsname\relax
+    \@ifundefined{bxjs@#2@@##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}%
-    \fi}}
+    }{\bxjs at csletcs{bxjs@#2}{bxjs@#2@@##1}}}}
 \@onlypreamble\bxjs at declare@bool at option
 \def\bxjs at declare@bool at option#1#2#3{%
   \csname newif\expandafter\endcsname\csname ifbxjs@#2\endcsname
   \@nameuse{bxjs@#2#3}%
   \define at key{bxjs}{#1}[true]{%
-    \expandafter\ifx\csname bxjs@#2##1\endcsname\relax
+    \@ifundefined{bxjs@#2##1}{%
       \bxjs at error@keyval{#1}{##1}%
-    \else \@nameuse{bxjs@#2##1}%
-    \fi}}
+    }{\@nameuse{bxjs@#2##1}}}}
 \def\bxjs at set@keyval#1#2#3{%
   \bxjs at csletcs{bxjs at next}{bxjs at kv@#1@#2}%
   \ifx\bxjs at next\relax
@@ -613,7 +611,7 @@
 \let\bxjs at dvidriver@@dviout=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@xdvi=\bxjs at driver@@dvimode
 \let\bxjs at dvidriver@@nodvidriver=\bxjs at driver@@none
-\bxjs at cslet{bxjs at dvidriver@@nodvidriver*}\bxjs at driver@@none
+\bxjs at cslet{bxjs at dvidriver@@class-nodvidriver}\bxjs at driver@@none
 \define at key{bxjs}{dvi}{%
   \bxjs at csletcs{bxjs at tmpa}{bxjs at dvidriver@@#1}%
   \ifx\bxjs at tmpa\relax
@@ -681,11 +679,6 @@
 \if at slide
   \def\maybeblue{\@ifundefined{ver at color.sty}{}{\color{blue}}}
 \fi
-\if at landscape
-  \setlength\@tempdima  {\paperheight}
-  \setlength\paperheight{\paperwidth}
-  \setlength\paperwidth {\@tempdima}
-\fi
 \def\bxjs at tmpdo{%
   \def\bxjs at tmpa{\@gobble}%
   \expandafter\bxjs at 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 at disguise@js
 \def\bxjs at js@clsname{jsarticle}
   \@namedef{ver@\bxjs at js@clsname.cls}{2001/01/01 (bxjs)}
@@ -983,13 +970,20 @@
 \ifbxjs at fix@at at cmd
   \def\@{\bxjs at SE{}}
 \fi
-\def\bxjs at tmpa{\def\set at fontsize##1##2##3}
+\@onlypreamble\bxjs at patch@set at fontsize
+\def\bxjs at patch@set at fontsize{%
+  \ifx\bxjs at prev@set at fontsize\set at fontsize\else
+    \def\bxjs at tmpa{\def\set at fontsize####1####2####3}%
 \expandafter\bxjs at tmpa\expandafter{%
-  \set at fontsize{#1}{#2}{#3}%
+  \set at fontsize{##1}{##2}{##3}%
   \expandafter\def\expandafter\size at update\expandafter{%
     \size at update
     \jsFontSizeChanged}%
 }
+    \let\bxjs at prev@set at fontsize\set at fontsize
+  \fi}
+\bxjs at patch@set at fontsize
+\AtEndOfPackage{\bxjs at patch@set at fontsize}
 \newcommand*\jsFontSizeChanged{%
   \jsZw=\f at size\p@
   \jsZw=\jsScale \jsZw
@@ -999,7 +993,7 @@
     \fi
   \fi\relax
   \jsResetDimen}
-\newcommand*\jsResetDimen{}
+\providecommand*\jsResetDimen{}
 \ifjsc at mag
   \let\jsc at setfontsize\@setfontsize
 \else
@@ -1520,10 +1514,7 @@
   }
 \fi
 \def\bxjs at 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 at label@sect{#1}\quad}
 \ifnum\bxjs at label@section=\bxjs at label@section@@compat\else
 \def\@secapp{\presectionname}
@@ -2008,8 +1999,8 @@
   \global\let\bxjs at warnoldfontcmd@final\@empty
   \let\@tempa\@empty
   \def\do##1{%
-    \expandafter\ifx\csname bxjs at ofc/\string##1\endcsname\relax\else
-      \edef\@tempa{\@tempa \space\string##1}\fi}
+    \@ifundefined{bxjs at ofc/\string##1}{}{%else
+      \edef\@tempa{\@tempa \space\string##1}}}%
   \bxjs at oldfontcmd@list
   \ifx\@tempa\@empty\else
     \ClassWarningNoLine\bxjs at clsname
@@ -2410,13 +2401,12 @@
 \let\bxjs at iai\@empty
 }
 \bxjs at decl@Seireki at cmds
-\let\bxjs at unxp\@firstofone \let\bxjs at onxp\@firstofone
-\bxjs at test@engine\unexpanded{%
-  \let\bxjs at unxp\unexpanded \def\bxjs at onxp{\unexpanded\expandafter}}
 \newif\ifbxjs at bxwareki@avail
 \IfFileExists{bxwareki.sty}{%
-  \RequirePackage{bxwareki}[]%
-  \bxjs at bxwareki@availtrue}{}
+  \if \if n\jsEngine \ifjsWitheTeX T\else F\fi\else T\fi T%
+    \RequirePackage{bxwareki}[2018/04/08]%v0.2
+    \bxjs at bxwareki@availtrue
+  \fi}{}
 \ifbxjs at bxwareki@avail \let\bxjs at wareki@used\@empty
 \else
   \bxjs at robust@def\bxjs at wareki@used{%
@@ -2435,11 +2425,16 @@
 \else
   \edef\jayear{\the\year \bxjs at iai}
 \fi
+\begingroup
 \let\bxjs at next\relax
 \ifbxjs at bxwareki@avail \ifx\warekigengo\@empty\else
-  \def\bxjs at next{\bxjs at onxp{\warekitoday}}
+  \def\bxjs at next{\warekitoday}
+  \bxjs at test@engine\unexpanded{%
+    \def\bxjs at next{\unexpanded\expandafter{\warekitoday}}}
 \fi\fi
-\edef\bxjs at today{%
+\def\!#1#2#3{\noexpand#1\noexpand#2\noexpand#3}
+\ifx\bxjs at iai\@empty \let\!\@empty \fi
+\xdef\bxjs at today{%
   \if at english
     \ifcase\month\or
       January\or February\or March\or April\or May\or June\or
@@ -2449,11 +2444,12 @@
     \ifx\bxjs at next\relax \expandafter\@firstoftwo
     \else \noexpand\bxjs at if@use at seireki
     \fi {%
-      \number\year\bxjs at iai\bxjs at unxp{年}%
-      \bxjs at iai\number\month\bxjs at iai\bxjs at unxp{月}%
-      \bxjs at iai\number\day\bxjs at iai\bxjs at unxp{日}%
+      \number\year\bxjs at iai\!年%
+      \bxjs at iai\number\month\bxjs at iai\!月%
+      \bxjs at iai\number\day\bxjs at iai\!日%
     }{\bxjs at next}%
   \fi}
+\endgroup
 \let\today\bxjs at today
 \g at addto@macro\bxjs at begin@document at hook{%
   \ifx\bbl at jpn@maybekansuji\@undefined\else



More information about the tex-live-commits mailing list.