Xypic 使用 auctex 编译时出现错误

Xypic 使用 auctex 编译时出现错误

我对以下一段代码有疑问:


$\xymatrix{ {X_{2}} \ar@<0.6ex>[r]^-{p_{0}} \ar@<-0.6ex>[r]_-{p_{1}} & {X_{1}} }$

被制作成 LaTeX 宏如下:

\newcommand{\arrp}[4]{\mbox{$\xymatrix{ {#3} \ar@<0.6ex>[r]^-{#1}\ar@<-0.6ex>[r]_-{#2} & {#4} }$}}

称为

\arrp{p}{q}{A}{B}

常规 \LaTeX 编译无论哪种方式都可以。但是,对于 AucTeX,前者在 tex 文件中写入时编译没有问题。但是,当以后者方式写入时,它会发出如下抱怨:

错误: \next@ 的参数有一个多余的 }。

--- TeX 说 --- \par l.186 ...}}}{\comp{e}{\cod{}}}{\Bb{X}_1}{\Bb{X}_1} 。由于从方程 \eqr... --- 帮助 --- 从 .log 文件...

我遇到了刚刚插入的}' that doesn't seem to match anything. For example,\def\a#1{...}' 和\a}' would produce this error. If you simply proceed now, the\par' 会导致我报告失控参数,这可能是问题的根源。但是如果你的}' was spurious, just type2' 它会消失。

如果您能让我知道我错在哪里,我将非常感激您的帮助。

谨此致以问候和谢意,

帕尔塔

答案1

请在此处找到代码:

\documentclass[12pt]{article}

\usepackage{amsbsy, amsmath, amssymb, amsthm, bbold, xcolor, xspace}
\usepackage[all,pdf]{xy}

\usepackage{Documents/tex/essentials/symbols}  % line 1


%\input{Documents/tex/essentials/symbols-command} % line 2

%\newcommand{\arrp}[4]{\mbox{$\xymatrix{ {#3} \ar@<0.6ex>[r]^-{#1} \ar@<-0.6ex>[r]_-{#2} %& {#4}}$}} %line 3


\begin{document}


Using usual Xy-pic:
$\xymatrix{ {A} \ar@<0.6ex>[r]^-{f} \ar@<-0.6ex>[r]_-{g} & {B}}$

Using the {\tt symbols.sty} package which contains all my TeX macros:

\arrp{f}{g}{A}{B}


\end{document}


%%% Local Variables:
%%% mode: latex
%%% TeX-master: t
%%% End:

让我列出我的尝试及其结果:

  • 2号线3号线注释掉后,现在,第二对平行箭头不会出现,但第一对会出现。产生的错误在代码块中给出:
./testXy.tex:21: Argument of \next@ has an extra }.
<inserted text> 
                \par 
l.21 \arrp{f}{g}{A}{B}
                      
Runaway argument?
h\dir 
./testXy.tex:21: Paragraph ended before \next@ was complete.
<to be read again> 
                   \par 

或者

l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: Extra }, or forgotten $.
\entrybox ...dimen@ \D@p \dp \z@ =\dimen@ \boxz@ }
                                                  
l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: Extra }, or forgotten $.
<inserted text> \egroup 
                        \def \Drop@@ {\styledboxz@ }\def \Connect@@ {\straig...l.21 \arrp{f}{g}{A}{B}

或者

l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: Extra }, or forgotten $.
\entrybox ...dimen@ \D@p \dp \z@ =\dimen@ \boxz@ }
                                                  
l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: Extra }, or forgotten $.
<inserted text> \egroup 
                        \def \Drop@@ {\styledboxz@ }\def \Connect@@ {\straig...l.21 \arrp{f}{g}{A}{B}

或者类似

./testXy.tex:21: Xy-pic error: illegal <dir>: \dir [r]^-{f} not defined.
\xyerror@ ...#2}\fi \errmessage {Xy-pic error: #1}
                                                  }
l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: A <box> was supposed to be here.
<to be read again> 
                   \toks@ 
l.21 \arrp{f}{g}{A}{B}
                      
./testXy.tex:21: Xy-pic error: illegal <dir>: \dir \ar@ <-0.6ex>[r]_-{g} not defined.
\xyerror@ ...#2}\fi \errmessage {Xy-pic error: #1}
                                                  }

或者

61>
./testXy.tex:24: Improper \prevdepth.
\newpage ...everypar {}\fi \par \ifdim \prevdepth 
                                                  >\z@ \vskip -\ifdim \prevd...l.24 \end{document}
                   
./testXy.tex:24: Missing } inserted.
<inserted text> 
                }
./testXy.tex:24: Xy-pic error: An \xy environment is not closed correctly..
\xyerror@ ...#2}\fi \errmessage {Xy-pic error: #1}
                                                  }
l.24 \end{document}

我已将 \LaTeX 引擎尝试查找错误时出现的所有形式的错误片段放在了其中。显然存在重复,我已将其排除。

  • 1号线3号线注释掉并2号线到位后,没有任何问题,输出也符合预期。

  • 1号线2号线评论里也有错误:

Runaway argument?
{\mbox {$\xymatrix { {##3} \ar @<0.6ex>[r]^-{##1} \ar @<-0.6ex>[r]_-{\ETC.
! File ended while scanning use of \@argdef.
<inserted text> 

进程被中止!但是没有1.或同样....

然而,该文件符号.sty只是文件符号-命令.tex将其制作成样式文件,而不是输入 .tex 文件。我使用 *symbols-command.tex" 文件作为输入,使用这些符号很长时间,没有遇到任何问题。问题始于我制作样式文件时。

问题是,很明显,3号线

任何帮助,将不胜感激。

谨此致以问候和谢意,

帕尔塔

相关内容