我已经使用vimtex
来latexmk
排版我的 LaTeX 文档一段时间了。但我正尝试将它arara
用于一个新项目,因为团队成员之一建议我使用它。
由于我总是使用(Neo)vim
来vimtex
排版文档,我查阅了文档,发现 voila!
vimtex
确实支持arara
。我添加了
let g:vimtex_compiler_method = 'arara'
并发现它\ll
可以编译文档。但是我注意到,当我使用 保存文件时,它不会自动编译文档:w
,甚至不会使用 清理项目文件\lc
。
然后我发现了这个GitHub 上的问题并发现我需要手动添加类似以下内容:
% arara: clean: { files: [ mypaper.log ] }
到我的 tex 文件。我对此很满意——但我发现\ll
每次:w
保存文件重新编译时都点击很麻烦。我浏览了vimtex
手册,发现:
arara 不进行连续编译,因此唯一相关的命令是 VimtexCompile 用于启动(单次)编译,以及 VimtexCompileOutput 用于查看编译输出。
所以问题是,有没有办法绕过使用(Neo)vim
或vimtex
借用arara
的帮助latexmk
来在保存文档时自动编译它们?我坚持使用我的设置 (++) 的原因之一是vim
自动编译,如果我也可以在使用时实现类似的功能,那就太棒了。vimtex
skim
arara
任何帮助将不胜感激!
答案1
Vim 提供事件您可以定义autocmd
s 来在事件发生时执行您想要的任何操作。:h autocmd-events
因此我建议你把以下内容放入ftplugin/tex.vim
autocmd! BufWritePost *.tex normal ,ll
:w
执行完此行后,每次在以 结尾的文件上写入 时.tex
,vim 都会,ll
像在正常模式下一样执行
注意这只是 vim 的功能,与 arara 无关。