在使用pandoc将LaTeX文件转换为Word文档时,我遇到以下错误:
...>pandoc test.tex -o test.docx --pdf-engine=xelatex
Error at "source" (line 12, column 1):
unexpected \part
expecting \end{document}
\part{Introduction}
^
pandoc test.tex -o test.docx
也发生错误。这是一个使用XeLaTeX编译但在pandoc中产生错误的最小示例:
%test.tex
\documentclass{book}
\newcommand*\parttitle{}\let\origpart\part
\renewcommand*{\part}[2][]{\ifx\\#1\\%
\origpart{#2}%
\renewcommand*\parttitle{#2}%
\else
\origpart[#1]{#2}%
\renewcommand*\parttitle{#1}%
\fi
}
\begin{document}
\part{Introduction}
\chapter{Context}
\section{Lorem}
Lorem ipsum dolor sit amet,
consectetuer adipiscing elit.
Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.
Curabitur dictum gravida mauris.
\end{document}
\part
的重新定义来自Tex SE上的this answer。另一方面,使用OP选择的答案,pandoc不会抱怨:
%test.tex
\documentclass{book}
\let\Oldpart\part
\newcommand{\parttitle}{}
\renewcommand{\part}[1]{\Oldpart{#1}\renewcommand{\parttitle}{#1}}
\begin{document}
\part{Introduction}
\chapter{Context}
\section{Lorem}
Lorem ipsum dolor sit amet,
consectetuer adipiscing elit.
Ut purus elit, vestibulum ut, placerat ac, adipiscing vitae, felis.
Curabitur dictum gravida mauris.
\end{document}
什么差异导致第一个错误?