bxjsarticleとbmパッケージの衝突について

bxjsarticleとbmパッケージの衝突について

- Ando Ryoya の投稿
返信数: 2

こんにちは。 以下のエラー(バグ)を報告させていただきます。 (GitHubにあげるべきでしたらすみません、こちらのコミュニティが活発なので。。。)

以下のmain.tex を uplatex で処理しますと、以下のエラーが発生します。 bxjsarticle クラス(bxjsarticle 2023/07/01 v2.8b BXJS document classes)と bm パッケージ(bm 2022/01/05 v1.2f Bold Symbol Support (DPC/FMi)) が衝突しているようです。 jsarticle クラスを使用する場合は発生しません。 ログファイルも添付いたします。

対症療法として、bm → amsfonts の順に読み込むと、\boldsymbol{\mathsf{hoge} はOKなので、そちらを使うとよさそうです。

--------------------------------------- 以下 main.tex ---------------------------------------------------

\RequirePackage{plautopatch}

\documentclass[uplatex,dvi = dvipdfmx,ja=standard]{bxjsarticle}

%\documentclass[uplatex,dvipdfmx]{jsarticle}

\RequirePackage{bm}

\begin{document}

Sans serif no bold: $\mathsf{A}$

Sans serif bold: $\boldsymbol{\mathsf{A}}$

Sans serif bold2: $\bm{\mathsf{A}}$

\end{document}

--------------------------------------- 以下エラーメッセージ(の一部)---------------------------------------------------

\DualLang@mathalph@bet ... \let \DualLang@Mfontsw

                                              \DLMfontsw@standard \else ...

l.9 Sans serif bold: $\boldsymbol{\mathsf{A}}

                                         $

The control sequence at the end of the top line of your error message was never \def'ed. If you have misspelled it (e.g., \hobx'), typeI' and the correct spelling (e.g., `I\hbox'). Otherwise just continue, and I'll forget about whatever was undefined.

Ando Ryoya への返信

Re: bxjsarticleとbmパッケージの衝突について

- Z. R. の投稿

不具合確認しました。

「数式英字コマンド(mathXX)で和文を連動させる処置」とbmパッケージの内部処理が干渉するのが原因のようです。

当面の回避策としては「disablejfamオプションを指定して“数式としての和文”を無効にする」が考えられます。

\documentclass[uplatex,dvi=dvipdfmx,ja=standard,disablejfam]{bxjsarticle}

disablejfam指定時も数式内部のテキスト(\text\mbox)での和文は可能です。

(対応策はこれから検討します……)


なお、jsarticleクラスでも、\bm{\mathrm{A}}\bm{\mathbf{A}}は同じ理由でエラーになります(これらのパターンはまず使われないでしょうけど)。

bxjsarticleだけ\mathsfでエラーになるのは、「\mathsfで和文を\mathgtにする」処置を追加で入れているためです。

Z. R. への返信

Re: bxjsarticleとbmパッケージの衝突について

- Ando Ryoya の投稿
ご確認ありがとうございます、当面の回避策もご教示いただきありがとうございました。
どうぞよろしくお願いいたします。