xypic 中的波浪箭头在 LyX 中出错

xypic 中的波浪箭头在 LyX 中出错

我尝试\xymatrix{A\ar@{\sim>}[r] & B}在 LyX 中进行编译,但收到以下错误消息: 在此处输入图片描述

我该如何修复这个问题?代码在 ERT 中编译,但不在本机 xypic 数学模式中编译。

这里有一个链接至MWE.lyx

答案1

您的问题是 xypic 包需要一些特殊字符(特别是波浪符号 ~),这些字符会被 LyX 中的数学编辑器自动重写。让 LyX 在源代码中插入真正的波浪符号有点麻烦。

但在这种情况下,LyX 的“宏”功能就派上用场了。

  1. 插入->数学->
  2. \sqarrow而不是\newmacroname
  3. 然后复制文本\ar@{~>}[r],并直接粘贴到TeXLyX 宏的字段。
  4. 最后,在莱克斯宏的字段中,输入一些类似于输出符号的符号,例如~~>\rightarrow

\sqarrow现在,您已经为波浪箭头创建了一个宏,您可以在 LyX 数学编辑器中直接使用它。

记录显示,LyX 按照\global\long\def\sqarrow{\ar@{~>}[r]}LaTeX 源代码的方式重写了这个宏。

答案2

\xymatrixin的形状输入\ar@{shape}[direction]不使用数学模式,而是使用自己的解释器来识别箭头形状的类型。输入与环境无关,并且在文本模式和数学模式下均可用:

\documentclass{article}
\usepackage[all,cmtip]{xy} % include cmtip or your arrow will be ugly

\begin{document}
\xymatrix{A\ar@{~>}[r] & B}

\begin{equation}
\xymatrix{A\ar@{~>}[r] & B}
\end{equation}
\end{document}

在此处输入图片描述

相关内容