青山です。

On Mon, 13 Dec 1999 15:40:15 +0900,
matz / netlab.co.jp (Yukihiro Matsumoto) wrote:

> 外人たちに情報を提供する「自動翻訳プロジェクト」を開始しよう
> と思います。まあ、つまりは「翻訳魂」か「翻訳の王様」をしかけ
> て、日本語ページを無理矢理英語にして www.ruby-lang.orgで提供
> しようというプロジェクトです。

後でと思っていましたが、思い付きでやったら出来てしまいました。
フィルタだけですが、あとはシェルスクリプトでもすぐですね。

for i in *.html; do
  cat $i | trans.rb je > ../en/$i
done

とか。

#!/usr/local/bin/ruby

require "honyaku"
require "nkf"

mode = ARGV.shift.upcase
data = NKF::nkf('-e', STDIN.read).split(/(<[^>]*>)/)
host = Honyaku.new( ENV["USER"], mode )

i = -2
while i < data.size - 1
  i += 2
  next unless /\w/.match(data[i])
  if mode == "EJ"
    # 入力が英語の場合は段落内の改行をスペースに変換
    data[i].gsub!(/ *\n *(?!\n)?/, ' ')
  else
    # 入力が日本語の場合は段落内の改行を削除
    data[i].gsub!(/ *\n *(?!\n)?/, '')
  end
  host.trns_divide_sentence(data[i]).each do |paragraph|
    paragraph.each() do |sentence|
      data[i] = host.translate_one(sentence)
    end
  end
end

print NKF::nkf('-j', data.join(''))
host.close

お、ぎりぎりテレホーダイタイム。


-- 
青山 和光 Wakou Aoyama <wakou / fsinet.or.jp>