使用 babel 包时 tikz-cd 不工作(西班牙语)

使用 babel 包时 tikz-cd 不工作(西班牙语)

我正在尝试使用西班牙语 babel 包来制作交换图,但是遇到了一些问题。

我做了两个 MWE,一个不起作用,一个起作用:

\documentclass{article}

\usepackage[spanish]{babel}
\usepackage{tikz-cd}

\begin{document}
   \begin{tikzcd}
   G \arrow[d, "\varepsilon"', two heads] \arrow[r, "\varphi"] & H \\
   G/N \arrow[ru, "\varphi"', dashed]                          &  
   \end{tikzcd}
\end{document}

\documentclass{article}

\usepackage{tikz-cd}

\begin{document}
   \begin{tikzcd}
   G \arrow[d, "\varepsilon"', two heads] \arrow[r, "\varphi"] & H \\
   G/N \arrow[ru, "\varphi"', dashed]                          &  
   \end{tikzcd}
\end{document}

前失败工作的同时后期作品正好。唯一的区别是西班牙语 babel 包我确实需要同时使用包和 tikz-cd 环境。有办法吗?

这是所需输出的图片(这是第二段代码的结果)。我希望在加载 spanish babel 包时获得此结果。

交换图

编辑:我刚刚注意到,如果我删除箭头的名称(\varepsilon 和 \varphi),那么它就可以很好地编译(但我希望拥有它们)。

答案1

西班牙语babel变成"一个活跃的角色,杀死\arrow[d, "\varepsilon"', two heads]

由于这种情况很常见,因此有一个tikz库可以修复,只需添加

\usetikzlibrary{babel}

加载后tikz-cd示例再次编译

答案2

首先,daleif 的答案是正确的。然后,这是一个替代语法的情况tikz-cd 手册可能会有用:

\documentclass{article}

\usepackage[spanish]{babel}
\usepackage{tikz-cd}

\begin{document}
   \begin{tikzcd}
   G\arrow[two heads]{d}[swap]{\varepsilon}\arrow{r}{\varphi} & H\\
   G/N\arrow[dashed]{ru}[swap]{\varphi}
   \end{tikzcd}
\end{document}

生成:

在此处输入图片描述

符合预期

相关内容