我正在尝试使用 HeVeA 将我的 LaTeX 文档转换为 HTML,但我遇到了包问题cleveref
——我的 LaTeX 文件大量使用\cref
,\Cref
但 hevea 默认不支持此包。
我尝试做的第一件事是导入整个cleveref.sty
——但不知何故没有起作用,我也在查看cleveref
源代码,但这对我来说有点太复杂了:-)
所以问题是——您认为在用 HeVeA 转换的文档中进行引用的最佳方法是什么?
这个例子非常简单:
\documentclass{article}
\usepackage{cleveref}
\begin{document}
\section{A}
\label{x}
\Cref{x}, \cref{x}.
\end{document}
运行 pdflatex 两次,你会得到一个漂亮的 pdf,上面写着“第 1 节,第 1 节”。HeVeA 失败,Command not found: \Cref
答案1
正如评论中提到的,cleveref
实际上有一种方法可以解决这个问题。
假设你的文件如下所示
myfile.tex
\documentclass{article}
\usepackage{cleveref}
\begin{document}
\section{My section}\label{sec:test}
We see in \cref{sec:test} that ...
\end{document}
当你想获得好处,cleveref
但又不想使用cref
和朋友时,那么你加载
\usepackage[poorman]{cleveref}
然后重新编译。这将生成文件myfile.sed
(其中包含很多行)。现在运行
sed -f myfile.sed myfile.tex> mynewfile.tex
这使
myfilenew.tex
\documentclass{article}
\begin{document}
\section{My section}\label{sec:test}
We see in section\nobreakspace \ref {sec:test} that ...
\end{document}
现在,您拥有了一个具有所有优点的文件,cleveref
但无需任何手工劳动 - 太棒了!