記事の引越しから漏れていたのでサルベージ。

zsh用のscript/generateおよびscript/destroyの補完関数です。 以下のスクリプトを.zshrcなどに書いておけば、 ./script/generateに続けてTABキーを押す事で generatorの入力を補完できます。

~/.zshrc

   1  _generate () {
   2    if [ ! -f .generators ]; then
   3      ./script/generate --help | grep '^  [^ ]*: ' | sed 's/[^:]*:/compadd/' | sed 's/\,//g' > .generators
   4    fi
   5    `cat .generators`
   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 Png genki on Mon 26 Nov 2007 at 05:05

Comments:

or Preview
Social Bookmarks
  • Delicious
  • B_entry219
  • Clip_16_12_w
Services from s21g
twpro(ツイプロ)
Twitterプロフィールを快適検索
地価2009
土地の値段を調べてみよう
MyRestaurant
自分だけのレストラン手帳
Formula
ブログに数式を埋め込める数式コミュニティ