タグ

ブックマーク / rubikitch.hatenadiary.org (7)

  • ねんがんのObject#instance_execをてにいれたぞ! 〜Object#instance_evalに引数が渡せるようになった〜 - http://rubikitch.com/に移転しました

    Object#instance_exec欲しいなあ - http://rubikitch.com/に移転しました instance_execキターーーーーー(゜∀゜)ーーーーーー!! たった今、Ruby 1.8.7-preview4がリリースされた。 念願叶ってやっとObject#instance_execがbackportされたのだ!つまり、Ruby 1.8.7でinstance_execが使えるということだ!! instance_execとは、Object#instance_evalに引数が渡せるようになったもの。 ついでに、関数的メソッド呼び出しで使用するとLispのletみたいになる。 Ruby 1.8.6以前でも実装することはできたが、かなり大変だった。 instance_execを使うと、コードの可読性を上げることができるので使ってみよう。 RUBY_VERSION # =>

    ねんがんのObject#instance_execをてにいれたぞ! 〜Object#instance_evalに引数が渡せるようになった〜 - http://rubikitch.com/に移転しました
    tanakaBox
    tanakaBox 2009/12/18
    instance_execについて。
  • 2007-10-08

    zshにおいてM-hを押すとコマンドをmanする機能がある。実際はrun-helpコマンドが実行され、デフォルトではmanにaliasされている。しかし、zsh組み込みコマンドでは使えなかったりして不便だ。しかし、以下の作業をしてあげれば組み込み関数やmanのないコマンドにも対応できる。まずはコマンドを実行する。~/src/zsh-4.3.2はzshのソースを展開したディレクトリだ。 mkdir ~/zsh/help cd ~/zsh/help man zshall | colcrt - | perl ~/src/zsh-4.3.2/Util/helpfiles Debian GNU/Linuxの場合はhelpfilesスクリプトはhelpfiles.gzになっているので、以下のようにする。=(〜)はコマンドの出力結果を格納した一時ファイルに展開される便利なzsh記法だ。 すると~/zsh

    2007-10-08
    tanakaBox
    tanakaBox 2007/11/23
    zshのヘルプを強化。
  • vimのiabのよう略語展開 - http://rubikitch.com/に移転しました

    http://zshwiki.org/home/examples/zleiab ZshWikiを漁っていたら、おもしろい設定を見付けた。 vimではiabで略語展開ができる(らしい)が、同様のことをzshでもやろうという設定だ。 ソースはこんなの。 setopt extended_glob typeset -A abbreviations abbreviations=( "Im" "| more" "Ia" "| awk" "Ig" "| grep" "Ieg" "| egrep" "Iag" "| agrep" "Igr" "| groff -s -p -t -e -Tlatin1 -mandoc" "Ip" "| $PAGER" "Ih" "| head" "Ik" "| keep" "It" "| tail" "Is" "| sort" "Iv" "| ${VISUAL:-${EDI

    vimのiabのよう略語展開 - http://rubikitch.com/に移転しました
    tanakaBox
    tanakaBox 2007/11/16
    zshで静的略語展開。
  • ’(rubikitch wanna be (a . lisper)) - zsh 補完

    昨日あたりからYahoo!天気予報のデザインが微妙に変わっていた。 俺は昔からYahoo!天気予報のHTMLを正規表現で切り取って読み易い形に加工するRubyスクリプトを書いて使っている。Yahoo!天気予報も例に漏れず、この手の情報サイトはデザインに凝りすぎて一覧性が悪いのが多い。俺的にはこの程度の情報は一画面で見られないと気がすまない。出力結果は以下のようになる。 天気 2日 18時 曇り 21度 74% 0mm/h 北東1m/s 2日 21時 曇り 19度 82% 0mm/h 北東1m/s 3日 00時 曇り 18度 84% 0mm/h 東北東1m/s 3日 03時 晴れ 18度 84% 0mm/h 北2m/s 3日 06時 晴れ 17度 86% 0mm/h 北北東2m/s 3日 09時 晴れ 19度 80% 0mm/h 北東2m/s 3日 12時 晴れ 21度 68% 0mm/h

    ’(rubikitch wanna be (a . lisper)) - zsh 補完
    tanakaBox
    tanakaBox 2007/10/11
    zshで補完~optparse.rbの使い方~補完関数の書き方~自動更新スクリプトの流れ。深い。
  • 2007-09-08

    他のマシンへsshしたいがスリープ状態だとNo route to hostと怒られる。だが、Wake On LAN機能を使えば起き上がらせることができる。それにはetherwakeコマンドを使うといい。 まず相手のMACアドレスを調べる必要がある。相手がLinuxMac OS Xの場合、ifconfigコマンドでMACアドレスを調べる。 etherwakeはroot権限がいるのでsudoで実行できるようにしておく。場合によっては-iでインターフェースを指定する必要があるかもしれない。数秒後、相手のマシンにアクセスできるようになる。 sudo etherwake -i eth1 00:0b:77:86:54:0c MACアドレスは固定なので、一行シェルスクリプトにしておくといい。 http://d.hatena.ne.jp/kaz3angel/20070904 追記を読んで。追加会見の内容

    2007-09-08
    tanakaBox
    tanakaBox 2007/09/10
    ナンダコレ。見たこと無いのがいっぱい。
  • シェルスクリプトからFireFoxを操作する"Fresno" - http://rubikitch.com/に移転しました

    MozReplがあればgnuclientみたいに外部からFirefoxを叩けないかと考えていたら、やっぱりあった。http://blog.tkmr.org/tatsuya/show/371-firefox-fresno より。 cd ~/src svn co http://simile.mit.edu/repository/fresno/trunk fresno ↑のコマンドで ~/src/fresno 内にソースが展開される。 今見ているURLは以下のコマンドを使えばわかる。コマンドで内部情報にアクセスできることで、来のUnix系OSの柔軟性が生きてくる。今Firefoxで見ているURLをw3mで見るなんてこともお手のもの。 fresno -j content.location.href 今見ているページを印刷するには、以下でok。d:id:rubikitch:20070907#pri

    シェルスクリプトからFireFoxを操作する"Fresno" - http://rubikitch.com/に移転しました
    tanakaBox
    tanakaBox 2007/09/10
    中身はシェルスクリプト。fresno > expect > telnet > MozRepl > firefoxと繋ぐ。便利そう。
  • 2007-08-25

    ファイルホスティングサイト http://upload2.net が使えねえじゃん>< なんでもドメイン名の期限切れとか。ydevilも他のサイトに対応しないとあかんなぁ… 久々のLispの話題。 Common Lispのformatミニ言語の凄さに驚愕する。 SLIMEで使えるformatのcheat sheetってあるかな?? (format nil "~{~a~^, ~}" '(1 2 3)) ; => "1, 2, 3" Floating numbers (format nil "~$" pi) ; => "3.14" (format nil "~@$" pi) ; => "+3.14" (format nil "~5$" pi) ; => "3.14159" (format nil "~v$" 3 pi) ; => "3.142" (format nil "~$" pi) ; =

    2007-08-25
    tanakaBox
    tanakaBox 2007/08/27
    lispのformatは凄い。
  • 1