ひよっこ。

I want to…

MacOSXでbzrのbash-completionを利用する

Posted by hikaruworld : 2011 12月 23

MacのTerminalをbash環境で利用している場合に、bzrのbash-completionが欲しくなります。
bash-completionとは何かはこの辺りが参考になるかと。

bash-completionをhomebrewで

自分はbash-completionをhomebrewでインストールしたので、こんな感じ。

$ brew install bash-completion

で言われるがままに、~/.bashrcにこれを追記するとコード補完が有効になります。

if [ -f `brew --prefix`/etc/bash_completion ]; then
    . `brew --prefix`/etc/bash_completion
fi

bazaarのbash-completionを有効に

残念ながらそのままではgitやsvnは補完してくれますが、
bazaarは補完してくれません(Macの場合)。
bazaarを補完してもらうためには、bzr bash-completionをインストールします。

通常のプラグインと同じように、~/.bazaar/plugins以下にbranchを取得します。

bzr branch lp:bzr-bash-completion bash-completion

有効化するためにREADMEにあるように、~/.bashrcに以下を追記。

# read bash_completion for bzr
if [ -f $HOME/.bazaar/plugins/bash_completion/lazy.sh ]; then
    . $HOME/.bazaar/plugins/bash_completion/lazy.sh
fi

eval “`bzr bash-completion`”でもよいようですが、遅延初期化の方が無駄な待ちがないので。

これで、bzr sとか入れてTABを押すとこんな感じで補完されます。

bash-3.2$ bzr s
s-c              server           shelve           st
selftest         shelf1           shelve1          stat
send             shell            sign-my-commits  status
serve            shell-complete   split            switch

これで、変なタイポを減らせます。
# なぜかuncommitのコマンドばかり間違える私もこれでさよなら。

コメントを残す