Latex-suite vim-latex 修改时自动重新编译文件

Latex-suite vim-latex 修改时自动重新编译文件

我已经安装了vim-latex (又名 latex-suite)ViM 插件并开始对其进行自定义。我找不到的一件事是每次.tex我正在编辑的文件写入磁盘时(即每次我使用:wViM 命令时)执行自动重新编译的功能。这对我来说非常有用,因为我用它zathura来查看 pdf,它支持自动检测更改并显示更新的 pdf 文件。

有人知道如何用该插件实现这种效果吗?

提前致谢。

答案1

vim-latexsuite 使用的标准绑定\llcall Tex_RunLaTeX()。如果您希望 VIM 在每次写入文件后执行某些操作,则可以使用autocmd BufWritePost,然后可以给出必须与写入文件匹配的文件模式来限制 的范围autocmd,例如,*.tex然后调用 VIM 的函数。因此,您可以将以下内容放入 中.vimrc

autocmd BufWritePost *.tex call Tex_RunLaTeX()

如果你不想发生这种情况每一个保存文件时,最好创建一个自定义绑定来保存文件(如有必要),然后调用运行 LaTeX 的函数,例如,您可以使用:

nmap <leader>m :up<cr>:call Tex_RunLaTeX()<cr>

这将在正常模式下创建一个映射,用于更新文件(因此如果有更改则写入)并在更新后调用Tex_RunLaTeX()。 使用您当前的配置,映射将处于打开状态\m<leader>是一个可配置的键,用于许多绑定,默认为反斜杠,您可以<leader>使用更改let mapleader="<whatever>",这也会影响vim-latexsuite的绑定)。

相关内容