vimtex
VimでLaTeXを書く時に使うプラグイン、 vimtex についてです。
VimのLaTeX用プラグインには、Vim-LaTeX (LaTeX-Suite)やLaTeX-Boxといったものもありますが、違いを見ていきましょう。
まずVim-LaTeXは一番歴史が古いようで、入力支援などの機能は一番多そうです。しかし機能が多すぎて、分かりにくいのは否めません。
次に、LaTeX-Boxとvimtexについて。この二つは似ています。Forkというわけではないようですが、vimtexはLaTeX-Boxを基にしています。なので、LaTeX-Boxでできることは、だいたいvimtexでもできます。機能も必要なものは揃っているので、現在ではvimtexを使っておけば問題ないでしょう。
なおvimtexは以前はvim-latexという名前だったようですが、LaTeX-Suiteと紛らわしいということで改名したようです。
さて、使い方を軽く。まずvimtexではlatexmkを使用するので、使っていなければ設定しておきましょう。 インストールは例によってNeoBundleなどで。私は以下のような設定をしています。
" vimtex let g:tex_flavor='latex' let g:vimtex_latexmk_options = '-pdfdvi' let g:tex_conceal = '' let g:vimtex_imaps_enabled = 0 " viewer let g:vimtex_view_general_viewer \ = '/Applications/Skim.app/Contents/SharedSupport/displayline' let g:vimtex_view_general_options = '@line @pdf @tex' autocmd FileType tex syntax spell toplevel
2, 3行目は必須です(pTeX+dvipdfmxを使っているなら)。viewerの1-3行目のやつは、MacでSkimを使っている場合の設定です。あとはお好みで。
ちなみに'let g:vimtex_imaps_enabled = 0'というのは、vimtexが勝手に設定してくれるinsertモードのmapをオフにするオプションです。
ギリシャ文字の入力などが入ってます。
これについてはauctex.vimあたりの設定を適当にコピーしてきて、
'after/ftplugin/vim.tex'にコピーして使ったほうが、自分でカスタマイズもしやすいと思います。
これで、例えばleaderが'\'なら、\llでタイプセット、\lvでSkimが開いてプレビューできます。
この設定なら、synctexを用いて\lvでVim側と同じ場所に移動できますし、
Skimも設定しておけば、Skim上でCmd-Shift-EnterでVimの同じ箇所に移動できます。
これを有効にするには、Skimの環境設定の「同期する」でMacVimを選びます。
さらに\llでタイプセットを開始すると、以後ファイルを変更するたびに自動でタイプセットが行われます。
とても快適です。
ただ、この自動タイプセットが正常に終了してくれないときがあり、その対処法について次の記事で説明します。 それでは。