Excite を利用して英語=>日本語翻訳

http://www.travelistic.com/video/show/985
RubyConf 2006 の Matz の発表を見てたけど
英語だから半分ぐらいしかわからんぜと思いつつ
Exciteを使って翻訳してたけど、
IEのウインドウでかくて検索画面が邪魔になっちゃうので
昔使った覚えがあった Babylon をインストールしようとしたら
いつの間にか有料になってたのね。
前(8年ぐらい前)はフリーで使えてた気がするけど。


ふと、open-uri を思い出し
Exciteの翻訳結果を使って処理すれば良いんじゃないか?
と思いついたので既存のコードを直す形でさっと書いてみました。
10分ぐらい。



#!ruby -Ks
require 'vr/vrcontrol'
require 'vr/vrlayout'
require 'vr/clipboard'
require 'open-uri'
require 'uri'

# Version情報
VER = 0.1

class MyForm < VRForm
  include VRGridLayoutManager
  # コンストラクタ
  def construct
    self.caption = "English to Japanese - V#{VER}"
    setDimension(10,20)
    addControl VRText,"text_before", "",0,0,10,9,WStyle::WS_VSCROLL
    addControl VRButton,"button_change","",0,9,10,2
    addControl VRText,"text_after","",0,11,10,9,WStyle::WS_VSCROLL 
    @button_change.caption = "English => Japanese"
  end
  # 変換ボタンがおされた
  def button_change_clicked
    keyword = @text_before.text
    url="http://www.excite.co.jp/world/english/?wb_lp=ENJA&before="
    open(url + URI.escape(keyword)) {|f|
      f.read =~ /(.*?)<\/textarea>/m
      @text_after.text = $1
    }
  end
end

frm=VRLocalScreen.showForm(MyForm,100,100,450,300)
VRLocalScreen.messageloop


VisualuRuby で exe 化したものをここに置いてみます。

DL先


(ほんとはこういうののせちゃいけないのかな)