我有一个小问题,我想将LaTeX文档的svn diff插入到另一个LaTeX文档 中,目标是显示修订版XXX后发生的变化。 但是由于diff包含很多LaTeX命令,我不能直接将它包含到文档中,因为LaTeX会将它们插入并且不仅仅是“打印”它们。如何在LaTeX文档中显示LaTeX代码?
今天我有这个在我的Makefile
DIFF_INFO=diff.info.tex
DIFF_REV=167
diffinfo:
$(shell echo "\n" > $(DIFF_INFO))
$(shell echo "\\section{diff $(DIFF_REV)} \n" >> $(DIFF_INFO))
$(shell echo \\\\begin{verbatim} >> $(DIFF_INFO))
$(shell svn diff --revision $(DIFF_REV) $(N).tex >> $(DIFF_INFO))
$(shell echo \\\\end{verbatim} >> $(DIFF_INFO))
,并在LaTeX的文档的末尾我有这样的:
\IfFileExists{diff.info.tex}
{
\newpage
\input{diff.info.tex}
}
但这种失败很难!
我的下一个想法是编写一个perl脚本,用LaTeX可以显示的东西替换所有无效的字符,但感觉我冒着重新发明轮子的风险,所以我想我可以问,如果有人有更好的主意?
如何在文档中包含并显示LaTeX代码?
感谢 约翰
更新: 谢谢 “未知(谷歌)” 逐字指出,它做了什么,我想它。
更新: 我也看起来像我应该尝试las3rjock告诉我们关于它的房源,因为它看起来不错。
更新: 无法获取列表在我的情况下工作,我得到了一些关于无效字符的奇怪的utf警告。但是,逐字记录正在发挥作用,所以这次我会用这种方式。
同意。我打算推荐在\ lstinputlisting {filename}命令中提供相同内容的列表包。特别是对于编程生成的文件(比如差异文件),这是继续前进的方式,因为它将包含TeX文件保存为一个非常干净的模板。 – Boojum 2009-09-06 18:46:31
是的 - lstinputlisting几乎总是比verbatiminput更好。几乎在所有场合我都会逐字避免。 – 2009-09-06 20:10:54