如何使@变成粗体数学符号

如何使@变成粗体数学符号

我想改变@数学模式中的含义,使其后面的对象变为粗体,例如$@x$应该产生一个粗体数学 x,$@\alpha$应该产生一个粗体 alpha,并且$@{\hat x^2}$应该使花括号内的所有内容变为粗体。

以下代码不起作用;我不明白。

\documentclass{article}

\usepackage{amsmath}
\usepackage{bm}


\begingroup
\lccode`\~=`@
\lowercase{\endgroup
\def~#1~{\boldsymbol{#1}}%
}%
\mathcode`@="8000



\begin{document}
$@x$   % I want this to produce a boldface math x
\end{document}

答案1

你定义的语法是$@x@。如果你只是想要@,它应该是

\begingroup\lccode`\~=`@ \lowercase{\endgroup\def~#1}{\bm{#1}}
\mathcode`@="8000

完整示例

\documentclass{article}

\usepackage{amsmath}
\usepackage{bm}

\begingroup\lccode`\~=`@ \lowercase{\endgroup\def~#1}{\bm{#1}}
\mathcode`@="8000

\begin{document}

$x+@x$

\end{document}

在此处输入图片描述

相关内容