記事の引越しから漏れていたのでサルベージ。
zsh用のscript/gen
およびscript/des
の補完関数です。
以下のスクリプトを.zshrcなどに書いておけば、
./script/g
に続けてTABキーを押す事で
generatorの入力を補完できます。
~/.zshrc
1 _generate () { 2 if [ ! -f .generators ]; then 3 ./script/g enerate --help | grep '^ [^ ]*: ' | sed 's/[^:]*:/compadd/ ' | sed 's/\,//g' > .generator s 4 fi 5 `cat .generator s` 6 } 7 8 compdef _generate generate 9 compdef _generate destroy
RubyGems、Plugin、BuildInの3種類のgeneratorを検出して補完します。 検出動作が重いので、カレントディレクトリにキャッシュファイルを作成して 2度目以降の補完を高速化しています。 generatorを追加した場合など、キャッシュを無効化したい場合は
1 $ rm .generators
でキャッシュファイルを削除してください。
補完が重くても余計なファイルが生成されるよりはマシ、 という場合はこちらをどうぞ。
1 _generate () { 2 `./script/generate --help | grep '^ [^ ]*: ' | sed 's/[^:]*:/compadd/ ' | sed 's/\,//g'` 3 } 4 5 compdef _generate generate 6 compdef _generate destroy
誰かが作らないかなあ、と思って待っていたのですが、 なかなか出て来ないので自分で作りました。 もっと良いものがあったら教えていただけると嬉しいです。
posted by
genki
on Mon 26 Nov 2007
at 05:05