
Ubuntu日本語フォーラム

ログインしていません。
. :D :D :D :D
Ubuntu Tips / アプリケーション / の
StarDict で 「英辞郎」 を使うには
に移転しました。 簡潔で分かりやすいのでそちらを御覧下さい。
:D :D :D :D
:rolleyes: これは最初の投稿の「改訂版」で、作業はUbuntu上で1つのシェルスクリプトを実行するだけです。 :rolleyes:
海外の英語サイトを閲覧するのに「英辞郎」ほど強力な助っ人はありません。
「StarDict」 では 単語をマウスで小さくダブルクリックする (または単語・熟語をマウスで選択する) だけで即座にその右下
に訳が表示されます。 しかも殆どのapplicatiosや文書上で働きます。
「StarDict」 で 「英辞郎」 を使いましょう。 「Ubuntu 8.04.1」 ・ 「Ubuntu 8.10」 でその第三版が動くことを確認してい
ます。
それには辞書データを次の様に変換すると同時に、文字コードを Shift_JIS から UTF-8 へと変換しなければなりません。
PDICバイナリ形式 --> 一行テキスト形式 --> DICT形式
「PDICバイナリ形式」 を 「一行テキスト形式」 に変換するプログラム 「pdic-conv」 を利用するので、 Windows上での
作業はなく、Ubuntu上で1つのシェルスクリプトを実行するだけで、すぐ StarDict で 「英辞郎」 が表示できるようになり
ます。 また、予め StarDict をインストールしておく必要はありません。
<< Stardictのインストールと「英辞郎」の設定 >> --- Ubuntu での作業
1. Ubuntuを起動し、「英辞郎」 のCD-ROMをドライブにセット。 「eijiro98.dic」 など4つのpdicファイルを含んだ
「フォルダ eijiro」 を デスクトップに C&Pする。 この時、不用なpdicファイルを削除すれば、作業時間が短縮する。
2. ホームフォルダに 「スクリプトファイル star_eiji.sh」 を作成し、以下の38行( 「exit 0」まで )を書き込んで保存する。
$ gedit star_eiji.sh
#!/bin/sh
echo "\nStarDictとその関連パッケージをインストールします。\n"
sudo apt-get install stardict stardict-tools
sleep 1
sudo apt-get remove stardict-plugin-espeak stardict-plugin-festival
sleep 1
echo "\n\n「pdic-conv」をダウンロードし展開します。\n"
wget -q http://pdicviewer.naochan.com/pdic-conv-0.1.tar.gz
tar -xzf pdic-conv-0.1.tar.gz
sed -i -e 's|PDICViewer1024EE/Dictionaries|eijiro|g' -e 's|\*\.DIC|\*\.dic|g' -e "s|\| perl -pe 's/\\\.DIC\$//; tr/A-Z/a-z/'|98\.dic|g" pdic-conv/convert-all.sh
echo " 作業が完了しました。"
echo "\n「英辞郎」のデータを変換し設定します。時間が掛かります。\n"
cd pdic-conv
mkdir eijiro
./convert-all.sh
for file in *.txt; do
sed -i -e 's|///|\t|g' -e 's| \\ | / |g' $file
iconv -c -f SJIS -t UTF-8 $file -o eijiro/$file
if [ $file = "eijiro.txt" ]; then
for line in `grep -n '^・' eijiro/eijiro.txt | cut -f1 -d:`;do
sed -i -e "${line}s|^・||g" -e "${line}s|\?| \t|g" -e "${line}s|\.| \t|g" eijiro/eijiro.txt
done
fi
sudo /usr/lib/stardict-tools/tabfile eijiro/$file
rm -f eijiro/$file
done
sudo mv -f eijiro /usr/share/stardict/dic/
sudo rm -f /usr/lib/stardict/plugins/stardict_dictdotcn.so
cd ..
sudo rm -rf pdic-conv pdic-conv-0.1.tar.gz
echo "\n全ての作業が完了しました。\n"
exit 0
3. 端末で次のコマンドを実行する。
$ sudo sh ./star_eiji.sh
4. 「アプリケーション」 --> 「アクセサリ」 --> StarDict を起動し、ブラウザFirefox上で単語を選択してその動きを確認
する。
## 不具合がありましたら、是非お知らせ下さい。
( 参考 ) 1. プログラム 「pdic-conv」 は Perl で書かれているので、変換に時間がかかります。
変換するファイルの数や使用するPCのスペックにもよりますが、凡そ30分で作業は終了
するでしょう。
2. 不用な 「Net辞書」 を非表示にするには、「StarDict」 ウィンドウの左側 上から4番目の
「Choose dict group」 ボタンをクリックし、「Enable Net Dict」 のチェックを外す。
.
最後の編集者: moz (2008-12-31 11:54:50)
オフライン
「英辞郎」の訳がStarDictで表示される際、2番目、3番目.....の訳の区切りに本来は 「/」 が使われるのですが、上の方法
では、「\」 、 実際は円マークが表示されてしまいます。
上のシェルスクリプトで
iconv -c -f SJIS -t UTF-8 $file -o eijiro/$file
sed -i -e 's|///|\t|g' -e 's| \\ | / |g' eijiro/$file
のように、先に文字コードの変換を行ってから sedコマンド を実行すると、何故か 「-e 's| \\ | / |g'」 の部分が実行されま
せん。
順序を逆にして、後に文字コードの変換を行うとその部分も実行されるようになるのです。
sed -i -e 's|///|\t|g' -e 's| \\ | / |g' $file
iconv -c -f SJIS -t UTF-8 $file -o eijiro/$file
目下のところ理由はわかりませんが、上手くいくようなので書き換えさせて頂きました。
御了承下さい。
.
最後の編集者: moz (2008-12-28 19:11:27)
オフライン
質問なんですが、iconv を nkf に置き換えても、スラッシュはバックスラッシュに置き換わってしまうんでしょうか?
スラッシュがバックスラッシュに置換されるのではなく、「Shift_JISの一行テキスト形式」 の区切りであるバックスラッシュが
「sedコマンド」 でスラッシュに置換されないという意味です。
nkf でその置換が可能かどうかは、試していないので残念ながらお答えできませんが、機会があれば試してみます。
オフライン
mozさん による投稿:
スラッシュがバックスラッシュに置換されるのではなく、「Shift_JISの一行テキスト形式」 の区切りであるバックスラッシュが「sedコマンド」 でスラッシュに置換されないという意味です。
あ、つまり PDIC が作成する一行テキスト形式と、StarDict で利用できる一行テキスト形式は微妙にフォーマットが、といっても区切りのコードだけですが、異なるということですね。
# 以下余談というか補足です。
# 辞書を引くのは Firefox 内でだけで十分、という人には MouseoverDictionary 拡張がお薦めです。
# 私はこの拡張に英辞郎を入れて利用しています。
# しかも辞書は SQLite のデータベースファイルに格納されるので、かなり高速に動きます。
# StarDict もかなり高速ですけど、やっぱり SQLite とか使ってるのでしょうか?
# それと PDIC は 辞書変換に限れば Wine 上でも問題なく使えます。
最後の編集者: avidya (2008-12-29 19:03:06)
avidyaさんは以前これに関する投稿をされ関心がお有りのようなので、この投稿をした経緯も申し上げましょう。
「Firefox 内でだけで十分、という人には MouseoverDictionary 拡張がお薦め」というのは承知しておりましたが、
webサイト以外の文献を取り込んで編集したりするのでStarDictが必要でした。
MouseoverDictionaryは、versionによってはアドオン 「Nightly Tester Tools」 を追加インストールしても動か
ないことがあり、選択した単語・熟語の訳がサイドペインではなくそのすぐ右下に表示される方が視線を動かさずに
済むので楽なのです。 また、表示に掛かる時間は大して違わないように感じられます。
しかし、この方法を纏めたかった最大の理由は、#1の(参考)で述べた 「プログラム pdic-conv」 をLinuxでも使え
るようにすることです。
そうすれば、「英辞郎」 のCD-ROMから 「eijiro98.dic」 など4つのpdicファイルを含んだ 「ディレクトリ eijiro」 を
Ubuntu上にC&Pし、1つの短いシェルスクリプトを実行するだけで、すぐ StarDict で 「英辞郎」 を表示できるように
なります。
しかし、MacのためにPerlで書かれた 「pdic-conv」 は、「PathをLinuxに合わせて書き換えれば動く」 という作者の
指摘通りに行かなかったのです。
この作者はversion-upを通告することなく勝手にどんどん内容を改訂しているらしく、約2週間前にはそこに含まれて
いた 「ファイル eview.sed」 が無くなり、他のスクリプトが編集されていました。
この最新のversion? では 「Shift_JIS から UTF-8 への変換」 と 「区切り文字の変換とタブへの変換」 をしない
ように改良?されて、返ってすっきりしたようです。
最新のversion? でPATHを変更し、「タブが無いために9行が表示されない」 不具合を訂正すると、問題なく動くことが
わかりました。
今日中に Windowsでの作業 が不要な 「改訂版」 を投稿します。
オフライン
先刻#6で述べましたように、改訂版を投稿しました。
#1は大幅に書き換え、手順も非常に簡略化し、作業は半減しています。
変換するファイルの数や使用するPCのスペックにもよりますが、凡そ30分で作業は終了するでしょう。
といっても、只眺めているだけの 「作業」 ですが。
オフライン
これまでは 「英辞郎第三版」 に対応していましたが、その他の Version にも対応するように
「 Ubuntu Tips / アプリケーション / 『 StarDict で 「英辞郎」 を使うには 』 」
のシェルスクリプトStar_eiji.sh を書き換えました。
また、ファイル eijiro**.dic : 163万語、 ファイル waeiji**.dic : 174万語 ありますから、
最大で数十行のタイプミスがあるようです。
実際 eijiro98.dic では8行のミスがあり、これは修正しておきましたが、
他の Version のこうしたミスに対応できませんので御了承下さい。
最後の編集者: moz (2009-01-02 20:15:21)
オフライン
みなさん、普段、どんな日本語辞書を使うか?
オフライン
StarDict で 「英辞郎」 を使うには
ttps://wiki.ubuntulinux.jp/UbuntuTips/Application/EijiroOnStardict?action=show
もリンク切れのようですが、最新の英辞郎版ではどのような状況なのでしょうか?
古本屋で買ったEIJI-128.dicでもdz,idx,ifoを生成してくれず苦労しております。
オフライン