bm 包不起作用

bm 包不起作用

我正在使用 lualatex 0.95 和最新的 bm 包。在更新 lualatex 之前,我总是可以使用,\bm{}但现在我不能再使用它了。

编译似乎没有问题。

这是代码。

\documentclass{ltjarticle}
\usepackage{luatexja}
\usepackage{bm}

\begin{document}

\bm{a}

\end{document}

我怎么解决这个问题?


其他人也有同样的问题。

日语论坛 http://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=1947

StackExchange Lualatex 和 bm 包

StackExchange \bm 和 LuaLaTeX 的问题


先感谢您。

答案1

抱歉,我之前修复了这个问题,但似乎我从未将修复推送到公共发行版。您可以扩展测试以了解 luatex,如下所示。

在此处输入图片描述

\documentclass{ltjarticle}
\usepackage{luatexja}
\usepackage{bm}

\makeatletter
\def\bm@test@token#1{%
  \let\bm@next\@empty
  \ifx#1\@@end
  \else\ifx#1\mathchoice
    \let\bm@next\bm@mathchoice
  \else\ifx#1\mathchar
    \afterassignment\bm@mathchar\count@
  \else\ifx#1\mathaccent
    \afterassignment\bm@mathaccent\count@
  \else\ifx#1\delimiter
    \afterassignment\bm@delimiter\count@
  \else\ifx#1\radical
    \afterassignment\bm@radical\count@
  \else\ifx#1\mkern
    \bm@register#1{\muskip\z@}%
  \else\ifx#1\kern
    \bm@register#1\skip@
  \else\ifx#1\penalty
    \bm@register#1\count@
  \else\ifx#1\unvcopy
    \let\bm@next\bm@add
  \else\ifcat\noexpand#1\relax
    \xdef\meaning@{\meaning#1}%
    \expandafter\bm@mchar@test\meaning@""""\@nil#1%
  \else\ifcat.\ifcat a#1.\else#1\fi
    \count@\mathcode`#1\relax
    \ifnum\count@=\mathcode`\'%
      \begingroup\uccode`\~`#1\uppercase{\endgroup
        \def\bm@next{\bm@expand~}}%
    \else
      \ifx\bm@previous\left
        \count@\delcode`#1\relax
        \bm@delimiter
      \else
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
        \ifnum\count@>"8000
\Umathcharnumdef\@tempa\count@
\xdef\meaning@{\meaning\@tempa}%
\expandafter\bm@mchar@test\meaning@""""\@nil\@tempa
\else
        \bm@mathchar
\fi
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
      \fi
    \fi
  \else
    \bm@add{#1}%
  \fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi\fi
  \bm@next}
\makeatother

\begin{document}

$a+\bm{a}$

\end{document}

相关内容