わたしは、数学は「算数のころ」から、英語は中学生から苦手でしたので、IBM インターネット翻訳の王様を Ver.2.0 の時に購入しました。たしか Ver.2
は非常に重く、翻訳精度も悪く、辞書も訳語が表示されるだけで、あまり使い勝手がよくありませんでした。
なぜかその頃「翻訳サーバを作る」という衝動に駆られていて(delegate などにも駆られていました。)、Windows 版の 2.0 を「翻訳サーバもどき」にしていました。
An HTTPd を Web サーバにして、
1. CGI ( Perl ) に英文を書き込むと Perl が駆動して
2. CGI にポストされた英文をファイルに落とす。( source.txt )
3. 翻訳の王様を、むりやりコマンドラインから起動し、英文のファイルを読込ませる。(取説にはこんな機能は書かれていない。)
4. マウス自動化ユーティリティを駆使し、王様が翻訳が終了したらファイルにセーブする。( trans.txt )
5. Perl は一定間隔でディレクトリを監視し、 trans.txt ができたらそれをブラウザに表示する。
6. source.txt と trans.txt を削除する。
という全然実用的でないサーバを構築しました。これはエラー処理も出来ず、さらに複数のユーザが翻訳を試みると、マウス自動化ユーティリティが不審な挙動をするので全くサーバとしては不適格者でした。
もっとも致命的な事は、Perl スクリプトが動作を始めてから翻訳が終了するまでマウスに触れないということでした。
Windows 版の GUI インターフェイスに落胆していた私は、インターネット翻訳の王様のβ版( for Linux) がコマンドラインで翻訳を行えると知ったとき、すぐさま IBM
のサイトからダウンロードし CGI から翻訳する Perl スクリプトを作成しました。よく覚えていませんがその衝動は私を駆り立て、仕事中であるにもかかわらず Perl
スクリプトを 1時間ほどで作成させていたようです。
Linux 版には翻訳を行うプロキシサーバ「kingtrd」というものがあります。これを知った私はすぐさま使ってみました。翻訳の王様をインストールした Linux マシンは
X-Window の設定をしていなかったのでクライアントは Windows マシンから接続してみました。
するとネットワーク経由では使えなかったのです。ローカルマシンからの接続しか kingtrd
は受け付けませんでした。「ネットワーク経由で複数の人に使われないように」という IBM の意図がはっきりと分かりました。企業の立場としては理解できます。
しかしユーザの立場としてはネットワーク経由で使いたいので、さっそく試してみる事にしました。(この辺はここをどうぞ)
まず使用するのは「汎用プロキシサーバ DeleGate」です。これを Linux マシンで「接続してきたら kingtrd
へプロキシ接続する」という設定にして動かしました。これなら kingtrd から見れば、「ローカルから接続してきた」としか見えません。
するとあっけなく接続できました。
次に kingtrd を使わずに kingtr を DeleGate のフィルタとして使う方法を考案しました。これもあっけなく動きました。
さらに余勢をかって、DeleGate のフィルタに 標準語->大阪弁変換フィルタ ( フリーの変換辞書と Perl スクリプト )
をかませてみました。すると抱腹絶倒のおもしろさです。このプロキシサーバをかませると asahi.com も愛敬が出てきます。
いまでは NEC best-i-land のような翻訳プロキシや、excite の翻訳サービスなどフリーの翻訳サービスも増えてきましたがこの当時はありませんでした。( 1999/12 頃
)
「英語->日本語翻訳機能付 Webプロキシサーバ構築メモ」を Linux Users ML でお知らせしたときにこの HP
を作成しましたが、これ意外 HP
に公開する情報が私になかったため、公開直後から 1年間この HP は放置されました。( 未だにこのメモをご覧になる方がいらっしゃいます。)
2000年秋。突然 Perl でオブジェクト指向のプログラミングを始めました。その手始めに作ってみたのが King.pm
です。これのおかげで簡単に Perl から日<->英翻訳を行うことができます。
これを機に HP の更新をしました。
ちなみに、なぜ私が翻訳の王様 for Win を使わずにわざわざ、Linux 版をサーバまで作って使うかというと「Linux 版のほうが動作が早い」からです。