同时使用 esvect 和 caption 时出现奇怪的行为

同时使用 esvect 和 caption 时出现奇怪的行为

我正在处理这个文件:(被视为 MWP,即最小工作问题)

\documentclass[12pt,a4paper]{article}
% ###########################################
% PACKAGES STANDARDS
% ###########################################
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
% ###########################################
% PACKAGES MATHS
% ###########################################
\usepackage{amsthm}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{mathrsfs}
\usepackage{mathtools}
\usepackage[d]{esvect}
\usepackage[most]{tcolorbox}
% ###########################################
% Nouveaux packages à ajouter + param
% ###########################################
\usepackage{newfloat}
\usepackage{caption}
\DeclareFloatingEnvironment[fileext=frm,placement={!ht},name=\'Equation]{myeq}
\captionsetup[myeq]{labelfont=tt}
% ###########################################
% MACROS à ajouter
% ###########################################
\DeclareMathOperator{\arccot}{arccot}
\DeclareMathOperator{\arcsec}{arcsec}
\DeclareMathOperator{\arccsc}{arccsc}
\DeclareMathOperator{\sech}{sech}
\DeclareMathOperator{\csch}{csch}
\DeclareMathOperator{\argsh}{argsh}
\DeclareMathOperator{\argth}{argth}
\DeclareMathOperator{\argch}{argch}
\DeclareMathOperator{\argcoth}{argcoth}
\DeclareMathOperator{\arsech}{arsech}
\DeclareMathOperator{\arcsch}{arcsch}
\DeclareMathOperator{\rg}{rg}
\DeclareMathOperator{\card}{card}
\DeclareMathOperator{\Sp}{Sp}
% Nouveaux :
\DeclareMathOperator{\tr}{tr}
\DeclareMathOperator{\dev}{dev}
\newcommand{\ull}[1]{\underline{\underline{#1}}}
\DeclareMathOperator{\Div}{div}
\newcommand{\grad}{\vv{\mathrm{grad}}}
\newcommand{\rot}{\vv{\mathrm{rot}}}
% Dérivée partielle, droite, et particulaire mise en snippet avec dp comme tabtrigger
\usepackage{ccfonts}% http://ctan.org/pkg/{ccfonts}
\renewcommand{\rmdefault}{cmr}% cmr = Computer Modern Roman
% Macros pour torseur et le déviateur
% Liste des figures à rajouter : Figure 9 + 3D, Figure 10
% Notations : tenseur identité, tenseur nul, déviateur, sigma, tau 
%====================================================
%####################################################
%====================================================
\begin{document}
\begin{myeq}
\begin{equation*} % Torseur statique des efforts de cohésion
\mathcal{T}_{\mathrm{ext}/1}=\left\lbrace{\renewcommand{\arraystretch}{2}\begin{array}{l}
\displaystyle \vv*{R}{\mathrm{ext}/1} = \iint_{S_{\mathrm{ext}}}\vv{\sigma}(M,\vv*{n}{\mathrm{ext}})\mathrm{d}S = \iint_{S_{\mathrm{ext}}}\vv*{F}{\mathrm{ext}}\mathrm{d}S\\
\displaystyle\vv*{\mathcal{M}}{\mathrm{ext}/1} = \iint_{S_{\mathrm{ext}}}\vv{GM}\wedge\vv{\sigma}(M,\vv*{n}{\mathrm{ext}})\mathrm{d}S = \iint_{S_{\mathrm{ext}}}\vv{GM}\wedge\vv*{F}{\mathrm{ext}}\mathrm{d}S\\
\end{array}}\right\rbrace_{M}
\end{equation*}
\caption{Torseur statique des efforts de cohésion -- $G$ est le centre de gravité de la section $S$ et $\vv*{n}{\mathrm{ext}}$.}
\end{myeq}
\end{document}

我收到以下错误:

l66: Argument of \caption@ydblarg has an extra }. [...a section $S$ et $\vv*{n}{\mathrm{ext}}$.}]
l66: Paragraph ended before \caption@ydblarg was complete. [...a section $S$ et $\vv*{n}{\mathrm{ext}}$.}]

输出看起来不错(错误不会在最终的 pdf 中触发任何内容),并且当我删除时错误消息会消失$\vv*{n}{\mathrm{ext}}$,这是来自esvect 包

有人能解释一下为什么会发生这种情况吗?

提前感谢您的任何建议!

答案1

一个更合理的例子来说明这个问题

\documentclass[12pt,a4paper]{article}
% ###########################################
% PACKAGES STANDARDS
% ###########################################
% ###########################################
% PACKAGES MATHS
% ###########################################
\usepackage[d]{esvect}

% ###########################################
% Nouveaux packages à ajouter + param
% ###########################################
\usepackage{newfloat}
\usepackage{caption}
\DeclareFloatingEnvironment[fileext=frm,placement={!ht},name=\'Equation]{myeq}
\captionsetup[myeq]{labelfont=tt}
% ###########################################
% MACROS à ajouter
% ###########################################

% Nouveaux :
%====================================================
%####################################################
%====================================================
\begin{document}
\begin{myeq}

\caption{Torseur statique des efforts de cohésion -- $G$ est le centre de gravité de la section $S$ et $\vv*{n}{\mathrm{ext}}$.}
\end{myeq}
\end{document}

这是一个“移动参数中的脆弱命令”错误。该命令\vv显然不够强大,因此您可以使用

\caption[short form]{Torseur statique des efforts de cohésion --
                $G$ est le centre de gravité de la section $S$
                et $\vv*{n}{\mathrm{ext}}$.}

或者

\caption{Torseur statique des efforts de cohésion --
  $G$ est le centre de gravité de la section $S$ et
  $\protect\vv*{n}{\mathrm{ext}}$.}

获取可以安全写入浮点数列表的形式。

相关内容