texのsyntaxファイルの問題
環境はMacでHomebrewで入れたNeovim 0.2.1です。
このこの前アップデートされたバージョン0.2.1でファイルタイプがtexなファイルを開くと
Error detected while processing /usr/local/Cellar/neovim/0.2.1/share/nvim/runtime/syntax/tex.vim:
line 515:
E697: Missing end of List ']':
E15: Invalid expression: s:texMathDelimList + [ ['\\langle' , '〈'] , ['\\rangle' , '〉'] ,
通常a.texみたいな拡張子だとset filetypeで調べるとplaintexというファイルタイプになってますが、
a.latexみたいな拡張子のファイルを開くとファイルタイプはtexになります。
また、他のファイルタイプでもsyntaxファイルの中でsyntax/tex.vimを読み込んでる場合があるので
そういった場合にも上のエラーが出ます。
(今回はMarkdownファイルを開いてる時に出ました。)
ちょっと探してみるとs:texMathDelimListというリストな変数にリストを追加する時に、
後ろの括弧閉じがコンマになってる、というバグが正体で、
Vimの方で1月位に最初にバグが入って2月に直しています。
Neovimの方を見るとこちらにも Issueが立っていて既にFixされたようですが、 5月にVimにあるような追加を行ってその時は最初同じ様なバグがある状態で その日のうちのコミットで直していますが(もしくはVimのコミットを後追いするようなことをしてる?)、 1週間位前にこのファイルをアップデートした時にまた同じバグを仕込んでしまったようです。 これが5日前に治っています。
runtime: Fix syntax error in
runtime/syntax/tex.vim(#7518) · neovim/neovim@d0b05e3
0.2.1がリリースされたのが8日で6日前なので丁度バグが入ってる瞬間のものがリリースされてしまっている様です。
ということで、syntax/tex.vimを使う可能性のある人は0.2.1だとエラーが出るので
最新版を自分でビルドしたり
0.2.2-dev
的なものを使う必要があります。
MacではHomebrewで
$ brew reinstall neovim --HEAD
で入れ直しました。
リリースとしては半年間隔程度で新しいものが出てる感じですが、 これは流石にすぐ直したバージョンが出るかな、と思います。
使い始めは割とこういったことでも嫌になって調べる手間も費やさずに辞めて戻ることも多いので。
(.texなLaTeXファイルでも普通はplaintexになるし、syntax/tex.vimがほとんど使われてないなら
あれですが。)
