zshのプラグインマネージャzgenについて
今日は技術的なトピックが特になかったので、いきなりですが、zshのことについて書きます。
※追記:antigenはv1.1.0からめちゃ早くなったらしい。Release Release v1.1.0 · zsh-users/antigen · GitHub なので、無理にzgenに乗り換える必要もなくなりました。
zshのプラグインマネージャといえば
がメジャーだと思います(超重量級なoh-my-zshとかpreztoは考えないことにします)
自分も、しばらく愛用していました。
しかし、遅い
tmuxで新規window/paneを開いたときに、1秒弱間があいていらっとしてました。
自分の開発スタイルはしょっちゅう新規window/paneを開くスタイルなのでとにかくイライラが募ってました。
http://blog.uu59.org/2013-06-01-zsh-optimize.html を参考にプロファイリングをしたところ、antigenが原因とわかりました。
そこで
https://github.com/unixorn/awesome-zsh-plugins#installation
を見て他にないか調べてみたところ、zgenというブツに興味を持ちました。
zgen?
にあるように、
The goal is to have a minimal overhead when starting up the shell because nobody likes waiting.
スピード重視!
The script generates a static init.zsh file
一度静的ファイルを生成して、高速化を実現しているみたいです。
もちろん、githubのmasterでないブランチの読み込みや、リポジトリ直下でないディレクトリの読み込みにも対応しています。
設定例
本家のexampleが参考になります。
https://github.com/tarjoilija/zgen#example-zshrc
私の.zshrc.zgenというdotfileも参考になるかもしれません。
https://github.com/yukidarake/dotfiles/blob/master/.zshrc.zgen#L86
まとめ
zshのプラグインマネージャを使っていて、スピードに不満のある方はzgen試してみてもよいのではないでしょうか。
オススメです。