vscode的latex套装支持xelatexmk了,不知道auctex何时可以

前几天折腾latex的时候,发现vscode的latex套装现在真的是太完善了,只要将xelatexmk加入到配置中,编译过程(包括文献的编译)直接一步到位,也不用写xelatex-bibtex-xelatex-xelatex这样的recipe了,感觉太强大了,而emacs的latex编译latexmk现在默认是pdflatex,虽然现在对中文的支持也挺好的,但中文还是习惯用xelatex,但用xelatex就要手动编译好几次,挺不方便的,还是我孤陋寡闻,不知道emacs的auctex有没有相应的操作和配置?

1 个赞

(说实在的,有时候去 spacemacs 或者 doom 找找有很多惊喜)

auctex本身默认的latexmk就是pdflatex,这个我是知道的,你并没有理解我的意思。

用这个auctex-latexmk会把latexmk加入TeX-command-list,编译时选择latexmk就可以,之后就一直自动编译了,感觉挺方便的呀,可能我也没有理解你的意思

或者要修改latexmk默认的引擎,在~/…latexmkrc里面修改一下就可以了。但那是latexmk自己配置的问题,不是auctex应该触及的吧

你说的这个我知道,我也用的是doom,我的意思是不需要latexmkrc配置文件,直接在emacs的配置中加上一些语句,就像vscode直接在settings.json文件中加入xelatexmk和pdflatexmk,编译中直接选择就可以了。就像这种的

image 我还发现vscode的latex插件的作者之一tecosaur也是个doom emacs的忠实用户,他的doom配置也在github上https://github.com/tecosaur/emacs-config,里面有很多优化配置,我从他那抄了很多。

1 个赞

vscode的latex套装是哪个?

就第一个呀 latex workshop

auctex-latexmk 會根據 TeX-engine 添加合適的參數:

https://github.com/tom-tan/auctex-latexmk/blob/4d353522650d7685acbf1d38f7dbc504f734bd84/auctex-latexmk.el#L96-L106

設置 TeX-enginexetex 就可以了。

原来是这样,懂了

我觉得auctex-latexmk还不智能,只能选择一种作为默认的编写方式,可以pdf_mood=1或5,分别是pdflatex和xelatex,而vscode可以一步到位用一个recipe就是latexmk,vimtex也可以用latexmk一个命令搞定,哪个高手知道如何让它自动选择编译方式,而不用指定了?