タグ

ブックマーク / secondlife.hatenablog.jp (4)

  • 川o・-・)<2nd life

    Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :

    川o・-・)<2nd life
  • ruby のスクレイピングツールキット scrAPI - 川o・-・)<2nd life

    http://blog.labnotes.org/category/scrapi/ rubyスクレイピングして web の情報を取得するのには、今まで正規表現か xpath でやってたので、わりと面倒でした。で、ふと scrAPI というスクレイピングツールキットを知ったのですが、これがかなり便利そう。 このツールキットを使うと、CSS3 なセレクタを記述することで、要素を取得することができます。たとえばとあるサイトのリンクを全部取得したければ、 require 'rubygems' require 'scrapi' require 'open-uri' require 'nkf' require 'pp' $KCODE = 'u' links = Scraper.define do process "a[href]", "urls[]"=>"@href" result :urls e

    ruby のスクレイピングツールキット scrAPI - 川o・-・)<2nd life
  • Pathname - ファイル名のグッドラッパー - 2nd life (移転しました)

    http://www.ruby-lang.org/ja/man/?cmd=view;name=pathname 先日のRails勉強会でetoさんにPathnameというパスやファイル名のすごい便利なライブラリを教えて貰った。で、早速使ってみたところめっちゃ便利でいま書いてるアプリケーションじゃほとんどのファイル名の操作に使ってるという。 使い方はめっちゃ簡単でパスやファイル名を引数としてオブジェクトを作るだけ。 require 'pathname' file = '/tmp/foo' path = Pathname.new file で、これの何が便利っていうとリファレンスマニュアルのメソッドを眺めて貰うと解るんだけど、ファイル関係の操作が何でもできてしまう。通常だとFileオブジェクトを作るには実体が無いとダメなんだけど無くてももちろん作れるため str = IO.read(file)

    Pathname - ファイル名のグッドラッパー - 2nd life (移転しました)
  • 川o・-・)<2nd life - prototype.js with mousehweel event

    http://rails2u.com/misc/wheel_event/ prototype.jsではイベントハンドラの登録をEvent.observeに追加することにより行えます。これはWinIEだとelement.attachEvent, Firefoxだとelement.addEventLisnerと登録用の関数が違う互換性を吸収してくれるので大変便利です。しかし、ホイールイベントは少々特殊なため、通常のEvent.observeでは上手く登録が行えません。 ホイールイベントをwebアプリケーションで上手く使うとユーザビリティの向上が見込める*1ので、簡単にホイールイベントを登録できるEvent.observeを作ってみました。上記URL先のwheel_event.jsをprototype.jsを読み込んだ後に読み込むことによって、mousewheelイベントを扱えるようになります。

    川o・-・)<2nd life - prototype.js with mousehweel event
  • 1