编译乳胶文档时,编译器会发出很多“对象”文件。这使我正在处理的目录变得混乱,并且难以使用像 SVN 这样的 VCS。当我使用 C++ 代码时,我有单独的代码和对象目录,我可以在源目录上运行 make,但 .o 文件转到构建目录。
是否有适当的方法来使用 Latex 文档执行这种单独的编译?可以通过使用 Makefile 或通过将选项传递给乳胶编译器来完成吗?
谢谢
编译乳胶文档时,编译器会发出很多“对象”文件。这使我正在处理的目录变得混乱,并且难以使用像 SVN 这样的 VCS。当我使用 C++ 代码时,我有单独的代码和对象目录,我可以在源目录上运行 make,但 .o 文件转到构建目录。
是否有适当的方法来使用 Latex 文档执行这种单独的编译?可以通过使用 Makefile 或通过将选项传递给乳胶编译器来完成吗?
谢谢
您可以使用:
pdflatex --output-directory=tmp file.tex
所有文件都将存储在文件夹中tmp
(包括pdf)。
因为这不是最佳解决方案,所以我制作了自己的工具pydflatex,它通过隐藏辅助文件(使用上面的技巧)来编译 LaTeX 源代码,并将 pdf 带回当前目录,所以编译后你只有file.tex
并file.pdf
在您的目录中。这与版本控制配合得很好。
我对 LaTeX 帮不上什么忙(最后一个用户是 20 年前认真的;-),但是对于 Subversion,你应该阅读svn:ignore属性——它可以很容易地忽略带有你不想要的扩展名的文件到版本(目标文件,像 Python 一样的字节码文件通常可以放在与源相同的目录中,一些文本编辑器使用的备份文件,&c)。
Latex 在主文档所在的目录下生成临时文件。如果您希望将内容放置在不同的位置,请尝试使用如下所示的主文件。
\documentclass{article}
\input{src/maindocument.tex}
使用此方法,您可以维护如下目录结构
/
main.tex
/src
maindocument.tex
除了上述之外,还有两种选择。
make clean
.