如何在一个文档中合并算法和算法2e?

如何在一个文档中合并算法和算法2e?

我陷入了大麻烦,无法摆脱。

我使用standalone包将不同的 latex 文件合并为一个。每个 latex 文件都可以单独编译。当我将它们合并时,我发现了冲突,因为我algorithm2e在一个文件中使用了algorithm不同的算法,而在另一个文件中使用了不同的算法。standalone一个必须包含所有文件中使用的所有包的并集。所以我现在必须包含这两个包。我现在陷入困境。我不想重写我做的算法,因为这花了很长时间。

这是 MWE

\documentclass[11pt]{article}%
\usepackage{amsmath}
\usepackage[linesnumbered,ruled,lined,boxed,algo2e]{algorithm2e}
\usepackage{algorithm,algorithmicx,algpseudocode}
\begin{document}    
\begin{algorithm}[H]
\begin{algorithmic}[1]
\If {$i\geq 1$}
    \State $i\gets 0$
\Else
    \State $i\gets 2$
\EndIf
\end{algorithmic}
\end{algorithm}    
\end{document}

错误是

pdflatex foo.tex
Document Style algorithmicx 1.2 - a greatly improved `algorithmic' style
) (/usr/local/texlive/2015/texmf-dist/tex/latex/algorithmicx/algpseudocode.sty
Document Style - pseudocode environments for use with the `algorithmicx' style
) (./foo.aux)
! You can't use `\prevdepth' in horizontal mode.
\nointerlineskip ->\prevdepth 
                              -\@m \p@ 
l.13     \State $
                 i\gets 0$
? 

如果我注释掉algorithm2e它,编译成功。但是同样,我必须将两者都包含在主文档中,因为它使用独立文件来组合许多不同的 latex 文件,并且其中一个文件(此处未显示)需要algorithm2e

有什么办法可以解决这种情况吗?我正在使用 TL 2015。请注意,我还必须使用 pdflatex 而不是 lualatex,因为algorithm2e它不能用 lualatex 进行编译。

*File List*
 article.cls    2014/09/29 v1.4h Standard LaTeX document class
  size11.clo    2014/09/29 v1.4h Standard LaTeX file (size option)
 amsmath.sty    2013/01/14 v2.14 AMS math features
 amstext.sty    2000/06/29 v2.01
  amsgen.sty    1999/11/30 v2.0
  amsbsy.sty    1999/11/29 v1.2d
  amsopn.sty    1999/12/14 v2.01 operator names
 algorithm.sty    2009/08/24 v0.1 Document Style `algorithm' - floating     
   float.sty    2001/11/08 v1.3d Float enhancements (AL)
  ifthen.sty    2014/09/29 v1.1c Standard LaTeX ifthen package (DPC)
algorithmicx.sty    2005/04/27 v1.2 Algorithmicx
algpseudocode.sty    
algorithm2e.sty    2013/01/06 v5.00 algorithms environments
xspace.sty    2014/10/28 v1.13 Space after command names (DPC,MH)
relsize.sty    2013/03/29 ver 4.1

有关的 algorithm2e-命令算法已定义

相关内容