“Git だろうと Mercurial だろうと、ブランチ名をzshのプロンプトにスマートに表示する方法”が便利すぎる件
“Git だろうと Mercurial だろうと、ブランチ名をzshのプロンプトにスマートに表示する方法” で紹介されている zsh の vcs_info という関数を使って
git や mercurial のブランチ名をプロンプトに表示しているみたいです。
git 使ってたら実際どのブランチいじってるのかわからなくなることが
多々あって困ってたのでさっそく導入してみました。
git リポジトリ

svn リポジトリ

svn リポジトリ
はまったのは “vcs_info: function definition file not found” というエラーが
表示され vcs_info が使用できなかった。
これはバージョンを 4.3.6-dev-0+20080929-1 以降にすればいいらしい。
mac の ports の場合は zsh-devel でいれないと 4.3.6 以下なので使用できない。
zsh-devel をインストールして /opt/local/bin/zsh-4.3.10 から /bin/zsh へと
/etc/zprofile から /opt/local/etc/zprofile へシンボリックリンクを張って準備完了。
zprofile のシンボリックリンクを張らないと PATH の環境変数が足らなくなる。
/usr/bin とかその辺の PATH をここを呼んで足してるみたい。
.zshrc の設定に関しては本家の方で詳しくまとまってます。
.zshrc の一部抜粋でこんな感じです。
autoload -Uz vcs_info
zstyle ':vcs_info:*' formats ':(%s)%b'
zstyle ':vcs_info:*' actionformats ':(%s)%b|%a'
precmd () {
psvar=()
LANG=en_US.UTF-8 vcs_info
[[ -n "$vcs_info_msg_0_" ]] && psvar[1]="$vcs_info_msg_0_"
}
PROMPT="%{${fg[yellow]}%}[%n@%m%1(v|%F{green}%1v%f|)%{${fg[yellow]}%}]%{${reset_color}%}%b "zsh ちゃんと勉強すればもっと便利になりそうだな
参考資料
vcs_info: function definition file not found
アマゾンのサーバでエラーが起こっているかもしれません。一度ページを再読み込みしてみてください。
