Coc.nvimを触ってみようアドベントカレンダー 14日目 – coc-toml

とっても楽しいcoc.nvimを触ってみようというアドベントカレンダーです。14日目はcoc-toml。独自設定を持つ特定のTOMLファイルに対しても、スキーマの追加ダウンロードでLintが可能になります。
2021.12.14

Coc.nvimを触ってみよう Advent Calendar 2021 14日目です。

今回は coc-toml です。

coc-toml について

Taploを使った、TOMLのcoc拡張です。Taplo自体便利ですが、coc拡張はより便利になっています。

coc-toml をインストールする

vimを起動した状態で以下のコマンドを実行します。

:CocInstall coc-toml

依存モジュールにtaploが指定されているため、追加でTaploをインストールする必要はありません。

使ってみる

まずは vim test.toml 等で適当なtomlファイルを編集している状態にした上で、スキーマをダウンロードしましょう。スキーマをダウンロードすることで、独自の設定を持つtomlファイルに対して設定に沿って正確にlintされるようになります。

:CocCommand toml.downloadSchemas

neovimの拡張管理にdein.vimを使っている場合は特におすすめです。

jsonToTomltomlToJson も可能ですが、パイプで繋げて処理したい場合にはyjを導入したほうが操作がスッキリするかもしれません。

あとがき

dein.tomlをフォーマットエラーのまま保存し、再度vimを開こうとしてエラーとなり慌てるという状況になりがちでしたが、coc-tomlのスキーマ設定のおかげである程度は防げるようになりました。

poetryのpyproject.tomlなど、直接触れる機会が少ないファイルにもスキーマが対応しているので記述ミスによる手戻り防止におすすめです。