SL-C3000の辞書データを読める eblook をビルドしてみました。
dipusさんの徒然な覚書のPrivate Packagesで配布されている lookup 1.4 (他は不要) と一緒に使うと、「マルチメディア辞書」を起動しなくても Emacs のなかで広辞苑、ジーニアス英和/和英が引けるようになり、便利です。
インストール後の設定方法は Private Packages に書かれているものとほぼ同じですが、SL-C3000内蔵の辞書データを使う場合は ~/.lookup を次のようにします。
(setq lookup-default-method 'prefix) (setq lookup-max-hits 0) (setq lookup-max-text 0) (setq lookup-enable-gaiji nil) ; X/QtでEmacsを使っている場合はtで外字が表示できる (setq lookup-search-agents '((ndeb "/hdd3/dict1/genius") (ndeb "/hdd3/dict2/kojien")))
以下は、SL-C3000内蔵のEBライブラリとリンクするために行った作業のメモです。Unisonの再コンパイル に記したセルフ開発環境を使いました。
* eb-3.3.4 からヘッダファイルと eb.conf を生成
SL-C3000内蔵のebのバージョンに合わせて、eb-3.3.4 を EBライブラリ のサイトからダウンロードし、
./configure --prefix=/opt/QtPalmtop --enable-pthread \ --with-zlib-includes=/usr/local/include \ --with-zlib-libraries=/opt/QtPalmtop/lib --enable-nls=no \ --enable-samples make
を実行。
/home/zaurus/Documents/work/eb/dest というディレクトリを作って、
su make install DESTDIR=/home/zaurus/Documents/work/eb/dest
とし、いったん別ディレクトリにインストール。
dest の親ディレクトリで
cp -Rp dest dest-devel cd dest-devel/opt/QtPalmtop rm -rf bin info lib
を実行し、中身がヘッダファイル群と eb.conf のみにする。
dest-devel/opt/QtPalmtop/etc/eb.conf を開き、以下の行を修正。
EBCONF_EBLIBS="-L/opt/QtPalmtop/lib -leb -lzsecurefile" # ... EBCONF_ZLIBLIBS="-L/opt/QtPalmtop/lib -lzlib"
dest-devel/CONTROL/control を適当に作成し、dest-devel の親ディレクトリで ipkg-build dest-devel を実行。できたipkをインストール。
* eblook をコンパイル
eblook のサイトから 1.6.1 のソースをダウンロード。
./configure --prefix=/opt/QtPalmtop \ --with-eb-conf=/opt/QtPalmtop/etc/eb.conf make
あとは別ディレクトリにインストールして opt/QtPalmtop/bin/eblook 以外を削除。CONTROL/control を作成。ipkg-build。
* 参考
ザウルス宝箱Pro マルチメディア辞書関連 ソースコードダウンロードのページ
(2004-12-20追記) はじめ、ipkを公開していましたが、使用条件の不明なザウルス内蔵ライブラリをリンクしたバイナリを配布するのはライセンス違反になるおそれがあるため、公開をやめました。とりあえずビルド手順のみ残しておきます。
Posted by Hiroyuki KUROSAKI at 2004年12月19日 17:42徒然な覚書さんのところにeblookのipkが用意されたので、それをインストールして、noirさんの設定をしたところうまくいきました。
自分のWikiのほうにそのまま引用させてもらいました。
lookupで、geniusだけが引けないで困っています。Eijiro114は問題なく引くことができます。
Ztenでは問題なく検索できるのですが、Emacsからlookupで呼び出すのですが、パスがinvalidとなってしまいます。
市販辞書のジーニアス第4版でフォルダ名をGENIUS4としています。
'((ndeb "/hdd3/dict1/genius")を参考に以下のように書き換えています。
'((ndeb "/mnt/cf/dict/GENIUS4")
このGENIUS4の名前がいけないのでしょうか?
サイン・インを確認しました、 corpist さん。コメントしてください。 (サイン・アウト)
(いままで、ここでコメントしたとがないときは、コメントを表示する前にこのウェブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)