summaryrefslogtreecommitdiff
path: root/language
diff options
context:
space:
mode:
Diffstat (limited to 'language')
-rw-r--r--language/japanese/BX/bxjscls/README-ja.md3
-rw-r--r--language/japanese/BX/bxjscls/README.md1
-rw-r--r--language/japanese/BX/bxjscls/bxjscls-manual.pdfbin407611 -> 407675 bytes
-rw-r--r--language/japanese/BX/bxjscls/bxjscls-manual.tex4
-rw-r--r--language/japanese/BX/bxjscls/bxjscls.dtx90
-rw-r--r--language/japanese/BX/bxjscls/bxjscls.pdfbin884432 -> 887244 bytes
6 files changed, 84 insertions, 14 deletions
diff --git a/language/japanese/BX/bxjscls/README-ja.md b/language/japanese/BX/bxjscls/README-ja.md
index 1b91f19f95..4d7450a19c 100644
--- a/language/japanese/BX/bxjscls/README-ja.md
+++ b/language/japanese/BX/bxjscls/README-ja.md
@@ -111,6 +111,9 @@ XeLaTeX / LuaLaTeX の上でも日本語処理パッケージと連携して使
更新履歴
--------
+ * Version 2.9c 〈2024/07/19〉
+ - bm パッケージとの併用で起こる不具合をほぼ解消した。
+ - hyperref 使用時の不具合を修正した。
* Version 2.9b 〈2024/01/22〉
- bm パッケージとの併用で起こる不具合を回避した。
* Version 2.9a 〈2023/08/02〉
diff --git a/language/japanese/BX/bxjscls/README.md b/language/japanese/BX/bxjscls/README.md
index b42534e38c..1f10ac7ff7 100644
--- a/language/japanese/BX/bxjscls/README.md
+++ b/language/japanese/BX/bxjscls/README.md
@@ -102,6 +102,7 @@ This package is distributed under the BSD 2-Clause License.
Revision History
----------------
+ * Version 2.9c 〈2024/07/19〉
* Version 2.9b 〈2024/01/22〉
* Version 2.9a 〈2023/08/02〉
* Version 2.9 〈2023/07/17〉
diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.pdf b/language/japanese/BX/bxjscls/bxjscls-manual.pdf
index 29812903d4..d1b16869b4 100644
--- a/language/japanese/BX/bxjscls/bxjscls-manual.pdf
+++ b/language/japanese/BX/bxjscls/bxjscls-manual.pdf
Binary files differ
diff --git a/language/japanese/BX/bxjscls/bxjscls-manual.tex b/language/japanese/BX/bxjscls/bxjscls-manual.tex
index aee9ffd06b..2d69227170 100644
--- a/language/japanese/BX/bxjscls/bxjscls-manual.tex
+++ b/language/japanese/BX/bxjscls/bxjscls-manual.tex
@@ -12,8 +12,8 @@
\bxtexlogoimport{*}
\usepackage{shortvrb}
\MakeShortVerb{\|}
-\newcommand{\PkgVersion}{2.9b}
-\newcommand{\PkgDate}{2024/01/22}
+\newcommand{\PkgVersion}{2.9c}
+\newcommand{\PkgDate}{2024/07/19}
\newcommand{\Pkg}[1]{\textsf{#1}}
\newcommand{\Meta}[1]{$\langle$\mbox{}\nobr#1\nobr\mbox{}$\rangle$}
\newcommand{\Note}{\par\noindent ※}
diff --git a/language/japanese/BX/bxjscls/bxjscls.dtx b/language/japanese/BX/bxjscls/bxjscls.dtx
index d8708af2d9..9b4b59c73d 100644
--- a/language/japanese/BX/bxjscls/bxjscls.dtx
+++ b/language/japanese/BX/bxjscls/bxjscls.dtx
@@ -56,7 +56,8 @@
%<*driver>
\ProvidesFile{bxjscls.dtx}
%</driver>
- [2024/01/22 v2.9b BXJS document classes]
+ [2024/07/19 v2.9c BXJS document classes]
+% [2024/01/22 v2.9b BXJS document classes]
% [2023/08/02 v2.9a BXJS document classes]
% [2023/07/17 v2.9 BXJS document classes]
% [2023/07/01 v2.8b BXJS document classes]
@@ -5515,6 +5516,20 @@
%
% \section{文書のマークアップ}
%
+% \begin{ZRnote}
+% \begin{macro}{\bxjs@phantomsection}
+% |hyperref| が読み込まれている場合に |\phantomsection| を実行する。
+% \begin{macrocode}
+\let\bxjs@phantomsection\relax
+\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{hyperref}{%
+ \let\bxjs@phantomsection\phantomsection
+ }{}%
+}
+% \end{macrocode}
+% \end{macro}
+% \end{ZRnote}
+%
% \subsection{表題}
%
% \begin{macro}{\title}
@@ -8288,8 +8303,15 @@
\fi
\columnseprule.4pt \columnsep 2\jsZw
\ifx\multicols\@undefined
-%<book|report> \twocolumn[\@makeschapterhead{\indexname}%
-%<book|report> \addcontentsline{toc}{chapter}{\indexname}]%
+% \end{macrocode}
+% \begin{ZRnote}
+% |hyperref| 使用時に索引へのリンクが正常に作られるように、
+% |hyperref| の説明書の解説に従って |\phantomsection| を配置した。
+% \end{ZRnote}
+% \begin{macrocode}
+%<book|report> \twocolumn[\bxjs@phantomsection
+%<book|report> \addcontentsline{toc}{chapter}{\indexname}%
+%<book|report> \@makeschapterhead{\indexname}]%
%<!book&!report> \def\presectionname{}\def\postsectionname{}%
%<!book&!report> \twocolumn[\section*{\indexname}]%
\else
@@ -10847,6 +10869,56 @@
% \end{macrocode}
% \end{macro}
%
+% \paragraph{bmパッケージ対策}
+%
+% |\reDeclareMathAlphabet| を適用した数式英字フォント命令は
+% 通常の場合とは定義文の形が異なる。
+% このため |bm| パッケージを利用して |\bm{\mathrm{A}}| を
+% 実行するとエラーが発生する。
+% これを回避するため、
+% 「|\bm| の引数中では数式英字フォントの和文連動を無効にする」
+% ことにする。
+%
+% |\reDeclareMathAlphabet| の適用により例えば |\mathrm| は
+% 以下のように変更される。
+% \begin{itemize}
+% \item 適用前は |\mathrm| の一回展開は %
+% |\protect\|[|mathrm|\verb*| |] である。
+% \item 適用後は |\mathrm| の一回展開が %
+% |\protect\|[|mathrm|\verb*| |] になる。
+% \item |\|[|mathrm|\verb*| |] の一回展開は以下のようになる。\\
+% |\DualLang@mathalph@bet{\RDMAorg@mathrm}{\RDMAorg@mathmc}|
+% \item |\RDMAorg@mathrm| の一回展開は |\|[|mathrm|\verb*| |] になる。
+% \end{itemize}
+%
+% \begin{macro}{\bxjs@patch@RDMA@for@bm}
+% |\reDeclareMathAlphabet| の機能に対して |bm| パッケージ対策の
+% パッチを当てる。
+% \begin{macrocode}
+\@onlypreamble\bxjs@patch@RDMA@for@bm
+\def\bxjs@patch@RDMA@for@bm{%
+% \end{macrocode}
+% 実際に改変するのは |\DualLang@mathalph@bet| である。
+% \begin{macrocode}
+ \let\bxjs@org@DualLang@mathalph@bet\DualLang@mathalph@bet
+ \def\DualLang@mathalph@bet{%
+% \end{macrocode}
+% |\bm| の引数の中
+% (そこでは |\bm| が |\@firstofone| に等置されているので
+% これを判定に利用する)
+% では、|\DualLang@mathalph@bet| を |\@firstoftwo| の動作に変える。
+% これにより、|\mathrm| の
+% (|\protect| を無視する場合の)
+% 先頭完全展開形が、「適用」前のものと一致する。
+% このため |\bm| は「適用」の影響を受けずに正常動作できる。
+% \begin{macrocode}
+ \ifx\bm\@firstofone \expandafter\@firstoftwo
+ \else \expandafter\bxjs@org@DualLang@mathalph@bet
+ \fi}%
+}
+% \end{macrocode}
+% \end{macro}
+%
%^^A----------------
% \subsection{{\pTeX}用設定}
%
@@ -11124,19 +11196,12 @@
\g@addto@macro\bxjs@begin@document@hook{%
\ifx\reDeclareMathAlphabet\@undefined\else
% \end{macrocode}
-% |\reDeclareMathAlphabet| を適用した数式英字フォント命令は{\LaTeX}の
-% 通常の命令とは定義文の形が異なる。
-% このため |bm| パッケージを読み込んで |\bm{\mathrm{A}}| を
-% 実行するとエラーが発生する。
-% これを回避するための暫定対応として、|bm| が読み込まれた場合は
-% 数式英字フォントの和文連動を無効にする。
-% \TODO ユーザが数式英字フォントの和文連動を制御できるようにする。
+% |bm| パッケージが読込済であればパッチを適用する。
% \begin{macrocode}
- \@ifpackageloaded{bm}{}{%else
+ \@ifpackageloaded{bm}{\bxjs@patch@RDMA@for@bm}{}%
\reDeclareMathAlphabet{\mathrm}{\@mathrm}{\@mathmc}%
\reDeclareMathAlphabet{\mathbf}{\@mathbf}{\@mathgt}%
\reDeclareMathAlphabet{\mathsf}{\@mathsf}{\@mathgt}%
- }%
\fi}
\fi
% \end{macrocode}
@@ -11544,6 +11609,7 @@
\@ltj@match@familytrue
\fi
\g@addto@macro\bxjs@begin@document@hook{%
+ \@ifpackageloaded{bm}{\bxjs@patch@RDMA@for@bm}{}%
\reDeclareMathAlphabet{\mathrm}{\mathrm}{\mathmc}%
\reDeclareMathAlphabet{\mathbf}{\mathbf}{\mathgt}%
\reDeclareMathAlphabet{\mathsf}{\mathsf}{\mathgt}}%
diff --git a/language/japanese/BX/bxjscls/bxjscls.pdf b/language/japanese/BX/bxjscls/bxjscls.pdf
index 81899778a2..6b940a52c3 100644
--- a/language/japanese/BX/bxjscls/bxjscls.pdf
+++ b/language/japanese/BX/bxjscls/bxjscls.pdf
Binary files differ