coc.nvimのおかげでvimの開発体験が大きく向上したのですが、よくPCのファンが全力で回ることが気になっていました。
nodeのCPU使用率が100%を超えて160%や190%になるという..
ネットで検索すると大きいファイルを開いた際やnodeのバージョンが古い場合に同じ現象が起きるという情報は見つかったのですが、今回のケースには当てはまりませんでした。
他のプラグインとの組み合わせやvimrcの問題かと思って色々試したのですがなかなか改善しません。
そんなとき、ファイルの開き方によって問題が発生するかどうかが変わることに気が付きました。
vimを開いた後ファイルを読み込むと発生し、ファイルを直接vimで開いた場合には発生しません。
そのあたりをきっかけに、coc.nvimのワークスペースという概念について記載されたページを見つけました。
https://github.com/neoclide/coc.nvim/wiki/Using-workspaceFolders
どうやら多くのファイルが含まれた、高すぎる位置のパスがワークスペースとして認識されると負荷が高まるようです。
:CocList folders
コマンドで現在のワークスペースが確認できます。
特定のパスをワークスペースとして認識しないようにする設定を行ったところ無事に問題が解決しました。
- "ignoredRootPaths": Absolute root paths that language server should
not use as rootPath, higher priority than rootPatterns.
:CocConfig
の設定例
{
"languageserver": {
"intelephense": {
"command": "intelephense",
"args": ["--stdio"],
"filetypes": ["php"],
"initializationOptions": {
"storagePath": "/tmp/intelephense"
},
"ignoredRootPaths": ["~", "/project"]
}
}
}
拡張機能でignoredRootPathsを設定する方法が分からなかったので、以下のページを参考に直接intelephenseを設定しています。
https://qiita.com/Yoika/items/efbbcfe5e609d70319a2
今までこの問題が原因で何度もcoc.nvimを入れては消しを繰り返していたのですが、これで安心して使い続けられそうです。