在 \bm 中使用 \dots 会导致错误

在 \bm 中使用 \dots 会导致错误

我不知道为什么这个错误一直发生。我只是在 \bm 内使用 \dots,如下图所示:

在此处输入图片描述

中间的方程是:

$$\bm{d\omega^i\wedge\omega^1\wedge\dots\wedge\omega^{nk}=0}$$

这是我的包裹:

\documentclass[11pt,a4paper,twoside]{book}

\usepackage[utf8]{inputenc}
\usepackage[spanish]{babel}

\usepackage[left=2cm,right=2cm,top=2.5cm,bottom=2.5cm]{geometry}
\usepackage{blindtext}
\usepackage{amsmath}
\usepackage{float}
\usepackage{booktabs}
\usepackage{amsfonts}
\usepackage{xcolor}
\usepackage{amssymb}
\usepackage{amsthm}
\usepackage{mathtools}
\usepackage{tikz-cd}
\usepackage[overload]{empheq}
\usepackage[mathscr]{eucal}
\usepackage{cite}
\usepackage{graphicx}
\usepackage{fancyhdr}
\usepackage{tikz-cd}
\usepackage{centernot}
\usepackage{stmaryrd}
\usepackage{bm}
\usepackage{enumitem}

\makeatletter
\newcommand*\rel@kern[1]{\kern#1\dimexpr\macc@kerna}
\newcommand*\widebar[1]{%
\begingroup
\def\mathaccent##1##2{%
    \rel@kern{0.8}%
    \overline{\rel@kern{-0.8}\macc@nucleus\rel@kern{0.2}}%
    \rel@kern{-0.2}%
}%
\macc@depth\@ne
\let\math@bgroup\@empty \let\math@egroup\macc@set@skewchar
\mathsurround\z@ \frozen@everymath{\mathgroup\macc@group\relax}%
\macc@set@skewchar\relax
\let\mathaccentV\macc@nested@a
\macc@nested@a\relax111{#1}%
\endgroup
}
\makeatother

\makeatletter
\renewcommand*\env@matrix[1][*\c@MaxMatrixCols c]{%
\hskip -\arraycolsep
\let\@ifnextchar\new@ifnextchar
\array{#1}}
\makeatother

\usepackage{scalerel}
\newlength\bshft
\bshft=.18pt\relax
\def\fakebold#1{\ThisStyle{\ooalign{$\SavedStyle#1$\cr%
        \kern-\bshft$\SavedStyle#1$\cr%
        \kern\bshft$\SavedStyle#1$}}}

\usepackage{tikz} % Para pictures
\usetikzlibrary{babel}
\usetikzlibrary{decorations.markings,arrows} %decoracion en tikz
\usetikzlibrary{shadows,arrows,positioning,shapes.geometric}
\usetikzlibrary{decorations,decorations.markings}
\usepackage{pgfplots}
\usetikzlibrary{intersections, pgfplots.fillbetween}
\usetikzlibrary {arrows.meta}

\usepackage{etoolbox}
\usetikzlibrary{optics}
\usepackage{pgf,tikz}
\usetikzlibrary{arrows}

\usepackage[cmtip,all]{xy}
\newcommand{\longsquiggly}{\xymatrix{{}\ar@{~>}[r]&{}}}

\renewenvironment{proof}%
{\noindent{\em Demostración. }\nopagebreak}%
{\hfill\linebreak[2]\hspace*{\fill}$\Box$\\[6pt]}

答案1

更合理的测试文档是

\documentclass{article}

\usepackage{amsmath}
\usepackage{bm}

\begin{document}

\[\bm{X\dots Y}\]

\end{document}

产生

! Undefined control sequence.
\mdots@@ ->\gdef \thedots@ 
                           {\dotso@ }\ifx \@let@token \boldsymbol \gdef \the...
l.8 \[\bm{X\dots Y}
                   \]
? 

根据软件包文档,有些结构需要在括号组中保护,因此

\documentclass{article}

\usepackage{amsmath}
\usepackage{bm}

\begin{document}

\[\bm{{X\dots Y}}\]

\end{document}

或者因为它是整个表达式很多bm根本不使用更有效:

\documentclass{article}

\usepackage{amsmath}
\usepackage{bm}

\begin{document}

\boldmath
\[X\dots Y\]

\end{document}

相关内容