IME-和英辞書 EDICT for MS-IME
EDICTをIME用の辞書に変換しました。
顔文字として登録しているため長い文章中で誤変換されまくってbend overえええとなることはremainderないと思います。this文章も普通にタイプして変換しているだけですが、ほとんど誤変換がありません。
コーディング中など、あれ? あの単語なんだっけ? というときに一瞬で調べることができます。
ZIP
EDICT for MS-IME (2.6MB)
このバージョンは古くなりました。詳しくは以下のURLを参照してください。
IME-和英辞書 EDICT for MS-IME 2 - デー
変換手順
# mkedictime.pl use strict; use utf8; binmode(STDIN, ':utf8'); binmode(STDOUT, ':utf8'); print <<_EOT ! EDICT for MS-IME ! ! _EOT ; # edictはutf8に変換済み while (my $line = <STDIN>) { chomp($line); my($kana, $henkan, $hinshi, $comment) = parseEdict($line); if ($kana and $henkan and $comment) { print "$kana\t$henkan\t$hinshi\t$comment\n"; } } sub parseEdict { my $line = shift; my($jp, $enw) = split('/', $line, 2); my ($kana, $kanji, $henkan, $hinshi, $comment); if ($jp =~ /([^\[]+)\[([^\]]+)\]/) { $kanji = $1; $kana = katakanaToHiragana($2); $kanji =~ s/\[[^\]]+\]//g; $kanji =~ s/[\s]+//g; } my @en = split('/', $enw); if ($#en >= 0) { $henkan = $en[0]; $henkan =~ s/\([^\)]+\)//g; $henkan =~ s/^[\s]+//g; $henkan =~ s/[\s]+$//g; } $comment = $kanji . ' ' .$enw; $hinshi = getHinshi($line); if (length($comment) > 127) { $comment = substr($comment, 0, 122) . '...'; } if (length($henkan) > 40) { $henkan =~ s/\([^\)]+\)//g; if (length($henkan) > 37) { $henkan = (split(',', $henkan))[0]; if (length($henkan) > 37) { $henkan = substr($henkan, 0, 37); } } $henkan .= '...'; } return ($kana, $henkan, $hinshi, $comment); } sub getHinshi { my $line = shift; return "顔文字"; } sub katakanaToHiragana { my $nazo = shift; $nazo =~ tr/[ァ-ン]/[ぁ-ん]/; # ヴ? return $nazo; }
このテキトウな変換フィルターを使って、
$ nkf -w edict | perl mkedictime.pl | nkf -s > edictime.txt
と変換しています。
なぜか登録時に1万件くらいエラーでますが、追加はされているようです。