読者です 読者をやめる 読者になる 読者になる

Haskell の日本語リファレンスマニュアル引きツール href

http://i.loveruby.net/w/href.html
入門HaskellYAPC::Asia の Audrey のセッション、Learning Haskellで LL 界隈でも熱くなり始めた Haskell。かくいう自分も少しづつ勉強中です。
で、最初勉強するのに必至なドキュメントの一つがリファレンスマニュアルです。href はコマンドラインから日本語のリファレンスを引くことができる便利ツール。用例も載ってるのもありがたいですね。使用方法は簡単( ReFe と同じ )で href コマンドの引数に調べたい関数を書いて実行するだけ!

$ href reverse
Data.List.reverse
reverse :: [a] -> [a]    PRELUDE
reverse xs

    リスト xs を逆順にしたリストを返す。

        reverse [1,2,3]   = [3,2,1]
        reverse "Hello"   = "olleH"
        reverse []        = []

でもどうせなら href で引ける関数を[tab]で補完したいので zsh の補完関数を書いてみました。.zshrc などに

compctl -K _href href
functions _href () {
        reply=(`cat /usr/share/href/comptable|awk -F, '{print $2}'|sort|uniq`)
        # /usr/share/href/comptable の Path は自分の環境に書き換える
}

と書いておけば

$ href re[tab]
readFile         removeDirectory  renameDirectory  repeat           return
readLitChar      removeFile       renameFile       replicate        reverse

のように補完してくれます。最初は関数名も曖昧に覚えてたりするので便利!
ていうか未だに zstyle の補完関数の書き方が解らずに compctl で補完関数を書いている自分…。zstyle むつかしい><