タグ

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

  • 僕たちが待ち望んでいたRubyスクリプトをデーモン化する方法 - http://rubikitch.com/に移転しました

    Rubyでは、簡単にデーモンが記述できる。その方法は簡単!Ruby 1.9だと Process.daemon と書くだけだ。その行の後は制御端末が切離され、デーモンとして実行される。Ctrl+Cで終了できないので、永遠に実行を続けるスクリプトは「pkill -f」などで殺す。 既存のスクリプトをデーモン化するには、この一行を加えればいいだけなのだが、常にデーモンにしてしまうとデバッグが困難になってしまう。そこで、テスト時はふつうに実行して、普段はデーモンにしてしまえばいい。その方法もまた簡単!上の一行を daemonize.rb というファイルに保存すればいい。だけどこれだけだとつまらないので、ついでにRuby 1.8にも対応させてみる。 if Process.respond_to? :daemon # Ruby 1.9 Process.daemon else # Ruby 1.8 req

    僕たちが待ち望んでいたRubyスクリプトをデーモン化する方法 - http://rubikitch.com/に移転しました
  • Ruby初心者〜初中級者が読むべきコードについて - ’(rubikitch wanna be (a . lisper))

    Rubyの初心者にたいして「これは読むべき」だと思うコードを教え… - 人力検索はてな 今北産業ではないが超要約してみる。 Ruby初心者はまず文法や基的なクラスを習得せよ。 初級者ならばmailread.rbなどの簡単なライブラリを読んでみよう。 中級くらいからはWEBrickやBitChannelのソースがよい。 そして、なんといっても、力をつけたいならばソースを改造してみるのが一番だ。改造するんだからソースを理解しないといけないし、書く力も養われる。俺は「興味あるプログラム、気に入ったプログラム」をおすすめする。なぜなら、好奇心があるからモチベーションを保ちやすい。 やっぱり改造一番だよなぁ…書籍のサンプルコードはスペースの関係でミニチュア版になってるし、あくまで「作られた例(contrived example)」に過ぎないんだよね。生きたソースコードにはかなわない、うん。 俺はe

    Ruby初心者〜初中級者が読むべきコードについて - ’(rubikitch wanna be (a . lisper))
    sasashin
    sasashin 2008/05/21
    改造重要超同意。/自分の場合は『こんにちはマイコン』の足し算ゲームの改造がプログラミングの原体験だなあ。
  • Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))

    Ruby 1.8.7ではRuby 1.9からのbackportがとても多い。つまり、Ruby 1.9のあのメソッドがRuby 1.8でも使えるようになったということだ!! これがすごいという機能がもりだくさん、ちょっと大人になったRuby 1.8をお楽しみに。 Enumeratorは組み込みになり、eachなどのイテレータメソッドはブロックをつけないとEnumerable::Enumeratorを返すようになった。おかげでブロック付きメソッドの柔軟性が飛躍的にアップ! expectationsテスティングフレームワークによるテストで書いているので「gem install expectations」してから実行してみよう。手軽にユニットテストが書けるからおすすめ。書式は…見ればわかるよねw ChangeLogで現在からRuby 1.8.6リリースまでを読んだので、ほとんどカバーしていると思わ

    Ruby 1.8.7で使えるようになったRuby 1.9のメソッドたち - ’(rubikitch wanna be (a . lisper))
  • pacoはmake installでinstallされるファイルを管理するツール - http://rubikitch.com/に移転しました

    http://www.oddwit.com/blog/2008/paco pacoを使うと、make installした際にどこにどんなファイルが入ったのかを一つ残らずログし てくれます。ログはGUIで確認することができ、さらには一発でキレイにアンインストールする ことも可能です。 とのこと。便利そうなのでインストール。なんでもシステムコールをモニタしているから出力とは関係なく確実にファイルのインストールを検知してくれるらしい。 ライブラリが不足していたので、 sudo apt-get install libgtkmm-2.4-dev でlibgtkmmを入れた。 あとは通常通り展開して ./configure && make && sudo make install 今になってこんなツールがでてくるのだからおもしろい。10年前に存在してもおかしくないと思う。 sudo make inst

    pacoはmake installでinstallされるファイルを管理するツール - http://rubikitch.com/に移転しました
  • 保存時に自動でRuby 1.9のmagic commentをつける〜Ruby 1.8ユーザーも用意を - http://rubikitch.com/に移転しました

    Ruby 1.9で実行するスクリプトに日語を書く場合、スクリプトの文字コードを表すmagic commentは事実上必須となる。しかし、いちいち手で書くのは面倒臭い。Emacsは編集中のバッファの文字コードを知っているんだから、Emacsに書かせればいい。誰かがやってそうな気がするけど、見つからなかったので速攻で書いた。 別の文字コードで保存した場合には、magic commentも追随する。narrowingにも対応している。 Ruby 1.8を使っている人も将来Ruby 1.9に移行することになるので今のうちにやっておくといい。Ruby 1.8ではmagic commentは無視されるだけなのでつけていても問題ない。 (defun ruby-insert-magic-comment-if-needed () "バッファのcoding-systemをもとにmagic commentをつ

    保存時に自動でRuby 1.9のmagic commentをつける〜Ruby 1.8ユーザーも用意を - http://rubikitch.com/に移転しました
    sasashin
    sasashin 2008/04/17
  • 1