保护 polynom 包免受 Czech babel 选项的影响

保护 polynom 包免受 Czech babel 选项的影响

当我尝试使用捷克语的 Babel 库排版文本并使用多项式库。正确的多项式除法如下所示。

在此处输入图片描述

我的 MWE 是:

\documentclass{article}
\usepackage[main=czech]{babel}
\usepackage{amsmath}
\usepackage{polynom}

\listfiles
\begin{document}
  \begin{equation*}
    \polylongdiv[style=C,div=:]{x^3+4x^2-x+2}{x^2+x-3}
  \end{equation*}
\end{document}

错误的输出是: 在此处输入图片描述

我不知道如何保护命令\polylongdiv。魔法词\protect\polylongdiv导致编译错误。命令\shorthandoff{-}不起作用。所以我用尽了所有技巧。

答案1

您可以修补\polylongdiv本地设置\shorthandoff{-}

\documentclass{article}
\usepackage[main=czech]{babel}
\usepackage{amsmath}
\usepackage{polynom}
\usepackage{xpatch}

\xpatchcmd{\polylongdiv}{\begingroup}{\begingroup\shorthandoff{-}}{}{}

\begin{document}

\begin{equation*}
\polylongdiv[style=C,div=:]{x^3+4x^2-x+2}{x^2+x-3}
\end{equation*}

\end{document}

在此处输入图片描述

相关内容