更新情報
zpluginからzinitに名前変更が行われたので更新しました。
移行理由
ほぼ気分と前々から思ってた不満を解消できるんじゃないかなと思ったから。
上記みたいなお試しレベル での話なのでよろしくお願いします。
対象
zsh
のプラグインマネージャーにzplug
を使っている人
zplugってそもそも速度速いの?
この辺よく勘違いされていると思うんですが、そもそもそんなに速いというわけではないと思います。
あくまで経験と検証による答えなので「内部実装的に言って〜」とかそういうのではありません。
この記事読めばだいたいわかると思います。
自分も1年くらいzplug
使っていて体感として起動遅いなぁ〜と思っていました。
自分の環境で起動速度を測定したところ1.5秒
〜2秒
くらいかかっていました。
まぁ使いやすかったのでそれでも使っていたわけですが、、、
当初からzplug update
コマンドでコケる現象があり、いっその事やめよと思ったのです。(これは僕の環境だけかも)
新たな拠り所を見つける
プラグインの数とか色々管理するものが増えたのでもういっそのこといい感じのフレームワークにあやかるかと思って色々調べていたらzinit
なるものを見つけた。
dotfilesをキレイキレイするついでに晒す #zplugin
この記事見てこれはもしやと思い、zinit
を使うことにしました。
あと、設定のやり方だったりがzplug
に似ていたというのも大きいです。
インストール
設定
zplug
に似ているのでやりやすかった。
以下を.zshrc
へ記述
source $HOME/.zinit/bin/zinit.zsh
autoload -Uz _zinit
(( ${+_comps} )) && _comps[zinit]=_zinit
zinit light zsh-users/zsh-autosuggestions
zinit light zdharma/fast-syntax-highlighting
zinit load zdharma/history-search-multi-word
zinit ice from"gh-r" as"program"
zinit load junegunn/fzf-bin
zinit wait lucid atload"zicompinit; zicdreplay" blockf for zsh-users/zsh-completions
※zdharma/fast-syntax-highlighting
もRepositoryがなくなっていたため、zsh-users/zsh-syntax-highlighting
こちらを使用しました。
上記設定をするとzplugの導入 oh-my-zshのような設定にするまで。で設定した内容とほぼ同じ設定になります。
使い方
よく使うコマンド
-
zinit
自身のアップデート
$ zinit self-update
- インストールしたプラグインのアップデート
$ zinit update
- プラグインの削除
$ zinit delete プラグイン名
結果
2秒近くかかっていた起動時間は0.6秒前後くらいになりました。
あと、今までこだわってもいないのに設定を書きすぎていたなと思ったのでprezto入れて断捨離しました。
※ 後にpreztoのシンボリックで.zshrcなどを参照するやり方に疲弊し、starshipにした。
それでも速度は0.6秒前後
とあまり変わらなかったので以前に比べるとすごく快適です。
最終的にzinitで必要なものだけ入れるようにした。
追記
この記事を書き終えてから全く同じ内容の記事を見つけました。
【zsh高速化】え~、そんなプラグインマネージャーがあるんだったらもっと早く教えてよ、と姉が怒り出した - Zplugin
みんな思うところは一緒のようです。