下面是一个最小的工作示例,它重现了我所面临的问题。
\documentclass{article}
\usepackage{algorithmic}
\usepackage{arabtex}
\begin{document}
\section{Introduction}
\RL{d}
\begin{algorithmic}
\STATE problem
\end{algorithmic}
\end{document}
我收到以下错误:
LaTeX Error:
Command \AND already defined.
Or name \end... illegal, see p.192 of the manual.
- 我尝试使用 algorithmicx,但出现了同样的问题。
- 如果我注释掉算法部分,文档就可以成功编译
尝试按如下方式使用 savesym,但仍然出现相同的错误。
\usepackage{algorithmic} \usepackage{savesym} \savesymbol{AND} \usepackage{arabtex}
任何帮助将不胜感激!
答案1
我真的不知道我在做什么,但如果您在评论中所说的是真的,那么下面的例子似乎有效。(有关原因的信息在评论中)
\documentclass{article}
\usepackage{algorithmic}
\usepackage{arabtex}
\begin{document}
\section{Introduction}
Some text.
\RL{d}
\let\AND\relax
\let\OR\relax
\let\NOT\relax
\begin{algorithmic}
\STATE problem
\end{algorithmic}
\RL{d}
\let\AND\relax
\let\OR\relax
\let\NOT\relax
\begin{algorithmic}
\STATE problem
\end{algorithmic}
Some text.
\end{document}
您还可以将其定义为自动(如埃格尔注意)xpatch
通过在序言中包含以下内容来使用该包:
\usepackage{xpatch}
\xpretocmd{\algorithmic}{\let\AND\relax\let\OR\relax\let\NOT\relax}{}{}