はてなダイアリーライター(ruby版)を使ってみた

http://d.hatena.ne.jp/samurai20000/20071230/1199005410
にてruby製のはてダラがリリースされたので結城さんのPerlはてダラをおきかえた。以下、雑多なその記録。
上記サイトにはリリースって書いてあるのに、sourceforgeのほうではリリースされてなかった*1ので、CVSリポジトリからtarボールをダウンロード。(1/7 追記 今みるとちゃんと12/30付けでリリースファイルが用意されている。見落としたのかなあ?)
Windows上で使いたいので、必要なrakeとmechanizeライブラリをインストール。既にWindows上にインストールしてあったASRのRubyコンソール上からgem install rakeとgem install mechanize。mechanizeいれるときになんかいろいろはいった。
Rubyコンソールでダウンロードしたフォルダに移動してさくっとrake。rakeするとexerbを使ったWindows実行ファイルが生成される。exerbで実行ファイル作るのはいろいろ面倒だなあというイメージがあったけど、rakefile書いとけばrake一発でできるんだな。なるほど。
hdw.rb(exe)の他にhdw_edit.rb(exe)というのがある。どうやらhdw_editは今日の日付のテキストファイルを自動で開いてくれて、編集終了後にuploadしてくれるようだ。ソースにはメモ帳を起動するよう書いてあったので、Meadowにさしかえ。
ここでちょっとはまった。いつもMeadowを起動するのに使ってるRunMW32.exeだと、エディタを起動するためのWSHのRunが第三引数にtrueを指定してもエディタの終了を待ってくれない。というか、すぐに終了したことになってる?
Meadow.exeで起動するようにしたらMeadowの終了を待ってくれたので解決。
気を良くして何回かuploadテストをしたら、二回目のupload時に編集のつもりが新規作成になって、同じようなエントリが二つできてしまった。このソースでは、URL引数なしのeditページ内から日付を指定してsubmitしている。こうやると新規作成になる、のかな?edit?date=20070106みたいに引数をつけたページ内からsubmitしてやると編集になった。編集ページ内の日付設定は不要になったので削除。
ちなみに、最初rbファイルだけいろいろいじって、「あれー挙動が変わらないなあ」と心が折れそうになっていたが、hdw_editはhdw.exeを直接起動してるのでいちいちrakeしてexeにしないと変更が反映されないのだった。
そんなこんなで成功。ついでにupload直後のログがすぐ消えるように書きかえた。ちょっとこれで使ってみよう。hdw_editが月別のフォルダを自動生成してくれるのはよさげ。

テスト時の苦闘のログ

rubyはてダラのuploadテスト。
あとで消えます。
さらにテスト。
ううわ。二重になってもうた。なぜだ。
どうやら日付なしのeditページにアクセスしてからeditすると新規追加相当になるらしい。これでどうかな?
心が折れそうです。hdw_edit.rbはまだ使わないほうがよい??
hdw_editは直接hdw.exeを叩いていることに気がついた。いままで、lib以下を直接いじってたよ。rakeしなおし。
お。期待通り動いた。よし。
クイックランチに登録してみた。
お。動くね。動く。よし。これでいいや。

*1:ファイルがまとめられてない??