![Auctex 是否支持在子目录中使用 makefile 进行构建?](https://linux22.com/image/301258/Auctex%20%E6%98%AF%E5%90%A6%E6%94%AF%E6%8C%81%E5%9C%A8%E5%AD%90%E7%9B%AE%E5%BD%95%E4%B8%AD%E4%BD%BF%E7%94%A8%20makefile%20%E8%BF%9B%E8%A1%8C%E6%9E%84%E5%BB%BA%EF%BC%9F.png)
我正在使用 Emacs 和 Auctex 编辑我的博士论文,但我的 elisp 相当弱。此外,我使用 CMake 和 UseLATEX CMake 包生成的 makefile 在子目录中构建我的论文,我强烈推荐这个。
我不知道如何告诉 auctex,当我构建文档时它应该执行类似的事情:make -C build/digital
并且输出的 pdf 文件将位于 build/digital/thesis.pdf,即使源位于 ./thesis.tex
ps 我强烈建议您查看 UseLATEX,这是一个用于轻松编译 LaTeX 文档的 CMake 包。
答案1
将以下代码添加到您的初始化文件中:
(eval-after-load "tex" '(add-to-list 'TeX-command-list '("Make" "make" TeX-run-compile nil t)))
然后您将能够使用 调用该make
程序C-c C-c Make
RET。
"make -C build/digital"
如果您希望默认情况下使用 ,则将列表的第二个元素替换为,如果您希望有机会修改命令而不是坚持使用默认值(无论如何您都可以以交互方式进行更改),"make -C build/digital"
则将第四个元素替换为t
。nil
make
C-u C-c C-c