Nikep Software Lab.
/flag.en.png

ニケプ ソフトウェアラボ 〜 Nikep Software Lab.

便利でフリーなソフトウェアとウェブサービスをご提供するサイトです。  ホーム » ソフトウェア » XBabylon翻訳ソフト
ホーム事業ソフトウェアWEBサービスブログ趣味のページ自己紹介
XBabylon Translator仕様NewsDownloadReadme

XBabylon Translator

Sourceforgeに移行途中です。xbabylon翻訳ツールです。

XBabylon Translator

Windows の世界の Babylon Translator の Linux / UNIX での機能代替品(類似品)。 あるいは、Emacs上の edict.el / ejdic.el と似た機能を X Windows 上で使えるようにした翻訳ソフト(辞書フロントエンド)。

Win32 向けの商用ソフトヱアに Babylon Translator(http://www.babylon.com/)という翻訳ソフトヱアがある。 単語上でマウスクリックすると訳語がポップアップするもので、「あれ、ど忘れした、どんな意味だっけ」て感じで、ちょっと単語を調べたいときに大変重宝し ている。また、Emacs 上にも、mouse clickで訳語が別 buffer に出る edict.el や ejdic.elがある。 しかしながら、翻訳ソフトを実際に使いたいのは、第一に browser 上でである。(W3を使えば良いのではあるが)

という訳で、Babylonに Linux 版がないのは常々残念に思っていた。ずぅーと、「Linux 版作ってくれないかなぁ」的な他力本願でいたのだが、最近の版では、有料ソフトヱアになってしまった。

という訳で、もういらんわい、自分で作っちゃるという気になった。

なお、Windows版を作成しました。こちらにどうぞ。

XBabylon Translator

仕様

基本的に自分が使いたい機能だけに絞った。
機能 Babylon XBabylon
訳語の表示 window がポップアップする window がポップアップする
辞書 Babylon 付属の辞書 Free な辞書 EJDIC
Web Search online 辞典を検索可能 使わない機能なので省く
単語の切り出し 独自 OCR (one click のみ) cut buffer (撰択 + click)
各国語対応 色々使えるようだ 英和のみに限定。
但し辞書を用意すれば、任意の言語の変換は可能
配布形態 proprietary, binary only open source (xbabylon 自身は GPLに従います。ejdic はPDSなのは確かそうですが、詳細不明)

News

Download

xbabylon screen shot

Readme

 英和辞書ツール XBabylon のリリース(0.9.4)です。

(1) これは何ですか?
X で動作する翻訳(単語辞書)ソフトヱアです。
Windows に Babylon translator(TM)というのがありまして、なかなか便利な
ので愛用しています。しかし、Linux 版がない点を常々残念に思っておりまし
た。アンケートに書き込んだりして、出ることを期待して待っていたのですが、
今に到るまで開発計画はないようです。さらに、最近は基本的に有料ソフトに
なってしまいました(無料の trial version もあるのですが、うるさい公告が
付くようになっています)。こういった商用化の動きから推測するに、今後の
Linux 版に期待することはできないでしょう。
というわけで、X 上で似た動作をするユーティリティアプリケーションを書
いてみました。通常のアプリケーションプロセスですが、ヰンドウマネジャの
ショートカットを活用して、マウスプッシュで呼び出すことができます。辞書
は、FreeUNIX で良く使われている ejdic を使っています。基本的に Xlib し
か使っていないので、軽さには満足いただけると思います。私の note PC
(Pentium MMX 166MHz)でもストレスなく動きます。
概ね実用的なレベルで動作しますので、良かったら使ってみて意見をくださ
い。


(2) インストール
(2.1) Build
辞書を既に持っている人は xbabylon-x.xx.tgzだけを、辞書が未インストー
ルな方は、追加で ejdict.tar.gz をダウンロードして、同ディレクトリ(/tmp
など)に展開して下さい。xbabylon のディレクトリに移動し、su になって、
make install。終り。

もう少し詳しく説明します。
default の設定では、以下のファイルが install されます。
/usr/local/bin/xbabylon
/usr/local/lib/ejdic.XXX
/usr/local/man/man1/xbabylon.1.gz

XXX はロケールに合わせて変わります。LC_ALL 環境変数が ja_JP.ujis なら
ejdic.ujis, ja_JP.UTF-8 なら ejdic.UTF-8 になります。辞書は実行時のロ
ケールに合わせて探索されます。したがって、インストール時に、それに合わ
せて下さい。また、複数のロケールを切り代えて利用している場合は、辞書を
複数置いておくことで対応できます。通常、Redhat 系列は ujis、Fedora
Core系列は、UTF-8 です。

辞書ファイル(ejdic.ujis)は、/usr/loca/lib に置きます。辞書ファイルの
copyright は GPL ではありませんので、基本的にはアーカイブに含まれませ
ん。public domain にあるものを as is で提供しています。また、gene95 辞
書も利用することができます。(ググッて下さい)。
Ejdict は、付属の別ツールと共にかなりポピュラーですので、既に install
されていれば、それを使うこともできます。元々の辞書は Shift_JIS でエン
コードされていますが、ロケールに合わせてエンコードを変更します。既に使
用ロケールに合致した Ejdic 辞書がどこかにある場合、Makefile の DICT 変
数をそのパスに設定します。(または xbabylon 実行時 -d file_path でも指
定できます)

make install すると binary は、/usr/local/bin に置かれます。変更した
ければ、Makefile の INSTALLDIR 変数の設定を変えて下さい。(PATH が通っ
ていればどこでも良いですし、後述の Window Manager への設定をフルパスで
記述すればそれも必要ありません)

また、default の font は 12 dots にしてありますが、これがない場合や小
さすぎる場合も多いと思われます。これを変える場合は、Makefile の
OPTIONS の中にある -DFONT12 を -DFONT10 (10dots), -DFONT14 (14dots) に
変更して下さい。

(2.2) 設定
次にキーバインディングを設定します。基本的な操作としては、double
click などで cut buffer に取ってから、shift-右マウスボタンクリックで訳
が表示されます。これを実現するために WindowManager の keyboard short
cut 機能を使います。勿論、Key はshift-右マウスボタン以外でもOKです。お
好きなのを設定することができます。

(2.2.1) Sawfish
Sawfish であれば、setup menu から "short cut" に
run-shell-command "xbabylon"
または、
run-shell-command "/usr/local/bin/xbabylon"
を設定します。例えば Shift-Mouse 3 などにします。
もしくは、.sawfishrc に以下を記入します。
(custom-set-keymap
(quote window-keymap)
(quote (keymap ((run-shell-command "xbabylon") . "S-Button3-Click"))))

(2.2.2) Fvwm, Fvwm2
fvwm なら .fvwmrc に以下を加えます。
Mouse 3 RWTFIS S Exec "xbabylon" xbabylon

(2.2.3) KDE (KWM)
KDE メニューに入れないと使えないようです。(Windowsに似ている?)
kmenuedit を立ち上げて、どこかに XBabylon を新規項目で作成します。設
定画面中の下のほうに、「現在のキー」というものがありますので、そこに例
えば、Ctrl+Shift+B などを設定します。因みに、マウスボタンはショートカッ
トには設定できないようです。


(3) 使い方
インストールが終れば、double click か mouse drag でテキストを選択状態
にした後、設定したショートカット(上の例では Shift-mouse 3)を推せば、訳
語が書かれた Window が出てきます。この Window は一定時間後自動的に消滅
します。読み終わるまでマウスを入れておくと消えません。(この時間を変え
たければ、xbabylon.c の中の以下の値を変更して下さい)
#define SEC_BEFORE_DISAPPEAR (3) // 今は3秒


(4) TODO
欲しい feature は加えて行こうと思いますので、要望があれば教えていただ
けるとやる気が起きます。自分で考えていることを少し書いておきます。

+ Babylon は OCR を使っているが、XBabylon は cut buffer を使っている
ので、cut buffer (もしくは selection)対応でない application では使え
ない。OCR の場合の表示された語はなんでも翻訳可能といるのは素晴しいが、
反面、誤認識も多く、一長一短である。(あまりやる気がしない。Freeの使
い易い OCR があればやっても良いと思っている)

+ 翻訳の表示を折り返し表示に一応対応した。が、EUC をきちんと読んでい
ないので、バグっているかもしれない。きちんと直したいものだ。

+ 辞書の著作権がはっきりしないので、edict を使ったほうが良いと思うが、
和英の形式なのでちょっと使いにくい。著作権的には、Linux で既に定番の
英和辞書のようなので、問題はないのでしょうね。検索時間が問題にならな
いので、もっと大きな辞書を使いたいと思う。

+ Pentium 166 の NotePC でさくさく動いているので、重くないと思うけど、
必要なら辞書サーバを分けるなどして、辞書検索を高速化することは可能。
検索自体はベタサーチでしかもケース毎に何回も嘗めている。しかし特に遅
さは感じないので、これで良いでしょう。
また、ストレージの乏しいノートの場合に辞書が大き過ぎるとかいうケース
では、gzip とかで圧縮する手もある。が、zlib を使ってみたらかなり遅く
なるので止めた。

+ 実用のため、Capital letter、現在分詞、過去形などに対応したが、行き
当りばったりです。正しい取り扱いを教えて欲しい。
また、この辺りが英語に特化していますので、英和のみ対応になっています。
基本的には、strcmp しているだけですので、何語辞書でも良いです。また、
表示部がやはり日本語に特化しているので、ここを直せば何語でも OK です。
(もっと、i18n で統一的な方法が使えると良いのですが…)

+ もっとも使いたいアプリである mozilla 上では沢山のゴミが selection
に付いてくるので対策してありますが、quick & dirty なコードです。
kterm とかに張ったときは大丈夫なので、systematic な方法があると思う
のですが。

+ 恰好の良い GUI tool kit を使う。重くならないのだったら、Gtk とかに
しても良いかなぁ。でも実は使ったことがないのです。xview だったら書け
るんですが…。

+ 辞書が非力なので、追加の検索機能が欲しい気持ちもある。辞書内に見つ
からない場合は、http で Web Search する機能(Babylon にはある)かなぁ。


(5) Change log
(0.9.3)
man を整備した。
(0.9.1)
Fedora Core 用に、UTF-8 locale に対応した。他の日本語ロケール
(SJIS)等でも動作します。
(0.9.0)
SourceForgel.jp に移行することにした。
(0.27)
buffer overflowの危険のあるコードを直す。
(0.26)
mail(郵便、鎧)など、同綴異義語に対応した。ソースが大きくなった
ので、ファイルを分割した。
(0.25)
探索語を赤で表示した。-d dictionary_file に対応した。
(0.24)
文字数に応じたサイズになるようにした。(ソースが大分汚くなった)
(0.23)
ヰンドウに色を付けました。WindowManager による制御から外し、
mouse の左上に枠無しで表示することにした。見栄えは Babylon に
結構似てきました。^_^
(0.16)
Mozilla からカットにまだ、問題があるようだ。なんか余分なゴミが
付いて来る。Mozilla で使えないと意味がないので、Q&D な Fix を
した。
(0.15)
Window が focus されている間は消さないようにした。
(0.14)
単語末に付いた space を取り除く処理を入れた。これは Mozilla
においてダブルクリックで撰択すると、単語間の space を一緒に取
る buggy な仕様に対応するため。
三単現や複数形のS、過去形の ed などに対応した。(いい加減)
(0.13)
いらない XFlush とかを除いて、コードを整理した。
(0.12)
Netscape, Mozilla に対応させるため、selection 対応にした。
(0.10)
最初のリリース。

サイト内検索

ウェブ検索

開発したいものは、ありませんか?

ニケプソフトウェアラボではシステム構築やアプリケーション開発業務をお手伝いいたします。
詳細はこちらをご覧下さい。

また、当サイトで提供しているサービスの商用利用のためのカスタマイゼーション(コーデック作り込み、ダウンロードサーバ利用、データストレージの確保等)承ります。
御問い合わせはこちらまで
2004-2010 Shigeki Kaneko, all right reserved.