Hatena::Groupcucumber

tomisima::tmp

2008-12-03

[][]zshのコマンド入力をOutputzに送信。 01:39

便利!と思ったんだけど不勉強にもPitを使ったことなかったのでそこらへんからお試し。

Pit

Pitっていうのはアカウント情報に関してプログラム中に書かなくても呼び出して使えて便利!ってモジュールらしいです。(調べたばっかで間違ってたらすみません)

Pitに関してはcho45さんのこちらのエントリがめちゃんこ参考になります。

準備
% pit set outputz.com

すると$EDITORが開くのでoutputz復活の呪文を記述して保存します。

---
key: fukkatu_no_jumon

すると、~/.pit/defaul.yaml

---
outputz.com:
  key: fukkatu_no_jumon

て感じに保存されてPitの準備完了。

……てか初めてPit使ったんですが、あれやこれやのアカウント管理にめちゃんこ便利に使えそうですね!他の言語版もあるみたいなのでそこらへんもあとで試してみようと思いました。

Zsh

アカウント情報の準備ができたら、.zshrcの適当な位置に冒頭のdzflさんのエントリに記載のコマンドをまんま記述します……と思ったんだけど、個人的に押し過ぎ感のあるlsのカウントもしたかったので*1以下のように改変してみました。llとかlaはls -lとls -alのaliasです。

preexec() {
    if [ ${1} ]; then
        case ${1} in
	    ls | ll | la)
		uri=http://ls.localhost/
		;;
	    *)
		uri=http://zsh.localhost/
		;;
	esac
        key=`ruby -rubygems -e 'require "pit";print Pit.get("outputz.com")["key"]'`
        curl -s http://outputz.com/api/post -F key=${key} -F uri=${uri} -F size=${#1} >/dev/null
    fi
}

おわり

そんなわけで.zshrcに追記したら. ~/.zshrcして再読み込みして準備完了。適当なコマンド打ってoutputz dailyを見てみたらちゃんと投稿されてました。

dzflさんありがとうございました!

*1:historyでも見れるけどそこはそれ