どうも、たくチャレ(@takuchalle)です。
vim
を使い始めてしばらく経ち、ちょっとづつ慣れてきました。
もっとテンポよくプログラミングしたくなったので、スニペットプラグインを導入してみることにしました。
まず参考にしたサイトは「スニペットプラグインについて 2020 年版」です。
いくつかスニペットプラグインがあるので、自分が必要とする条件を挙げてみました。
まず他のツールに依存がない方がトラブルも少ないし、インストールの手間もなくて良いです。プラグインによってはPython
やcocフレームワーク
に依存しているプラグインがあるので、候補から外しました。
デフォルトのスニペットが豊富だと自分で色々書かなくて済むので良いですね。
LSP
のプラグインvim-lsp
を使ってるので、それと競合しない、むしろ親和性があると導入しやすいです。
いくつかの条件に合致したのがvim-vsnip
でした。
VSCode
のスニペットとの互換性を重視して設計されたスニペットプラグインです。
Vim script
で記述されているので、他に依存はありません。VSCode
のスニペットと互換性があるので、すでにスニペットが豊富です。ただ、スニペット形式がJSON
なので自作のスニペットを作成するときは面倒くさそうです。しかし、そんな頻繁にスニペットを作ることはないのでこのデメリットはそこまで気になりませんでした。さらにLSP
と同じインターフェイスでスニペットが使えるので完璧です。
vim-plug
を使っているので、次のようにしました。
Plug 'hrsh7th/vim-vsnip' " プラグイン本体
Plug 'hrsh7th/vim-vsnip-integ' " LSP 連携
Plug 'rafamadriz/friendly-snippets' " 大量のスニペット郡
プラグインに入ってるスニペットでは少ないので、rafamadriz/friendly-snippets
もインストールします。ここに大量のスニペットが入っています。
ひとまずこの構成でやっていきたいと思います。