IT技術
PR

Vim の起動の何に時間がかかっているか調べ、改善する

kawa.xxx
記事内に商品プロモーションを含む場合があります

環境

  • MacOSX 10.14.5
  • nvim 0.3.7

Vimの起動がもっさりな原因を調べる

現在は nvim を使っていますが、Vimを使いだしてからかれこれ10年近くが経過しています。

プラグインとかもマネージャは変わりつつもずっと昔から入れっぱなしの物もあるし、設定ファイルは継ぎ足し継ぎ足しなので、Vimの起動が結構もっさりするようになってしまいました。

起動がもっさりの原因を調査するために、何に時間がかかっているのかを調査しました。

プラグインの有無で起動時間を比較してみる

プラグインを無効化する —noplugin オプションと —startuptime オプションを使います。

後者の startuptime を使うには vim が +startuptime でコンパイルされている必要があります。私の環境(homebrewでインストールしたnvim)では初期状態で有効になっていました。

まずは、プラグインや自分で加えた設定を何も読み込まない状態、おそらく最も早いであろう状態を調べましょう。

$ nvim —noplugin —startuptime {filename}

この状態で私の環境の nvim は 300ms くらい起動にかかりました。体感速度的にも普段より少し早い気がします。それでは次に、プラグインなどすべて読み込んだ状態を測定してみましょう。

$ nvim —startuptime {filename}

上記のオプションで nvim を起動すると filename に指定したファイルに起動処理の間のメッセージや経過時間を出力してくれます。この状態で私の nvim は 360ms ~ 1707ms かかっていました。

少々幅がありますが、毎回時間が書かているのはどうやら clipboard.vim の読み込みのようです。

309.745  233.180  233.180: sourcing /usr/local/Cellar/neovim/0.3.7_1/share/nvim/runtime/autoload/provider/clipboard.vim
310.345  234.289  001.109: sourcing /Users/kawa/.vim/dein/.cache/init.vim/.dein/plugin/fakeclip.vim

fakeclip.vim は環境的にもう無くても何ら問題ないことがわかったので、削除しましたが、一つ上の clipboard.vim は nvim 標準の機能のようなのでこれ以上の起動高速化はむりと思われます。

後日時間を取ってさらに調査してみよう。

参考文献

ABOUT ME
kawa.xxx
都内のIT系企業に勤める会社員。自分の備忘録的なアウトプット用の場所で、ボルダリングやガシェッド、セキュリティ、カメラの話題が中心です。
記事URLをコピーしました