LinuxのStardictで英辞郎の辞書を使う

いろんな人が既にやってるけど自分でやってみた。


まずは英辞郎の辞書データを購入(現時点ではVer.130が最新)

次に必要なコマンドをインストール。
特にDebianの場合unrar-freeでなくunrarのほうで無いと解凍できないので注意。

# aptitude install stardict stardict-tools unrar


Stardict用の辞書に変換するスクリプトを以下の内容で用意 (txt2dict.shとする)

#!/bin/sh
for f in $(ls EIJIRO/*.TXT)
do
  iconv -f sjis-win -t utf-8 $f |
    awk -F " : " '{
      gsub(/■・/, "\\n・");
      gsub(/■|\r|{[^}]+}/, "");
      gsub("\\\\", "\\\\\\\\");
      if ($1 in w) {
       sub(/\n/, "", w[$1]);
       w[$1] = sprintf("%s, %s", $w[$1], $2);
      } else {
       w[$1] = $2;
      }
    }END{
      for (i in w) {
        printf("%s\t%s\n", i, w[i]);
      }
    }' | sort > $f.tab
  /usr/lib/stardict-tools/tabfile $f.tab
  rm $f.tab
done


辞書データを解凍し、先ほど作成したスクリプトを実行

$ unrar x EDP-130.exe
$ chmod 755 txt2dict.sh
$ ./txt2dict.sh


変換された辞書データをStardictのディレクトリにコピー

$ su
# mv EIJIRO/*.{dz,idx,ifo} /usr/share/stardict/dic/


そしてStardictを再起動して、"Manage Dict"から確認して終わり。