Latex & Vim

已经用过很长时间的 Latex,也用过很长时间的 Vim,不过直到我将他们结合起来,我才发现,原来 Vim 真的是最适合的 Latex 编辑器。

在这篇文章中,我不关注 Vim 和 Latex 本身的使用方法,而是主要介绍 Vim 相关配置使得其更大限度提高 Latex 编写体验。

使用环境

  • Tex Live 2021
  • neovim >= 0.6

对于 nvim,我使用的配置是基于 ayamir 的配置 自己修改而来。因此下面的步骤其实是基于你在使用 Lua 语言配置的 vim。

配置插件

使用 Packer 安装插件,在配置中加入下面内容:

1
2
3
4
5
lang ['lervag/vimtex'] = {
    opt = true,
    ft = "tex",
    config = conf.vimtex
}

此外,相对应的 vimtex 插件配置如下:

1
2
3
4
5
6
7
8
function config.vimtex()
    vim.cmd [[let g:tex_flavor = "latex"]]
    vim.cmd [[let g:vimtex_quickfix_open_on_warning = 0]]
    vim.cmd [[let g:vimtex_compiler_progname = 'nvr']]
    vim.cmd [[let g:vimtex_view_automatic = 1]]
    vim.cmd [[let g:latex_view_general_viewer = 'zathura']]
    vim.cmd [[let g:vimtex_view_method = 'zathura']]
end

同时,安装 zyt-snippet 插件,这可以让你的编写速度快速提升。

1
2
3
4
5
completion['sillybun/zyt-snippet'] = {
    opt = true,
    after = 'nvim-compe',
    requires = {'honza/vim-snippets', opt = true}
}

Synctex

Synctex 是指快捷同步 tex 和你的 pdf 位置方便修改。在 Linux 上使用 zathura 作为 pdf viewer,macos 上可以使用 Skim.

首先安装 nvim-remote:

pip3 install neovim-remote

安装 zathura 并加入下面配置:

1
2
3
# ~/.config/zathura/zathurarc
set synctex true
set synctex-editor-command "nvr --remote-silent %f -c %l"

其他需要

  • LSP 语法补全
  • Snippet 自定制
  • ...

推荐查阅

updatedupdated2021-09-212021-09-21