hakeの日記

Windows環境でプログラミングの勉強をしています。

顔文字を登録する

上のエントリーでAnthyを入れ替えたのは顔文字の登録をしてみたかったからです。古いAnthyはバグで半角スペースのある言葉が登録できないんですよね。
ネット検索して顔文字辞書を調べてみるといろいろありました、5000語とか7000語とかとんでもない収録数ですな。半角カタカナを使用していない、収録数が多くないという理由でさくらさくらWORLDさんの「顔文字辞書1800(インターネット対応版)」を使用させてもらうことにしました(といっても収録数が1800語もありますが)
手順は以下のとおり

  • MS-IME用の辞書kbIME.lzhを展開してkbIME.txtを取り出します。
  • ZEditorで辞書の文字コードEUCに変更、src.txtという名前で保存
  • 下のRubyスクリプトkao.rbををEUCで保存、実行して、Anthyに登録できる形式に変換する。変換後のファイル名はdic.txt
  • Anthyに登録、全て登録するのに数分かかりました。
$ ./kao.rb                                 #辞書の変換
$ cat dic.txt | anthy-dic-tool --append    #登録



注意:以下のスクリプトでヒアドキュメント部分のイコールの両側はTABコードです。

#!/home/QtPalmtop/bin/ruby -Ke

src = File.open("src.txt")
dic = File.open("dic.txt", "w")

while line = src.gets
   yomi, kao, kan = line.split(/\t/)

   dic.print "#{yomi}\t1\t#{kao}\n"

   dic.print <<'EOF'
品詞	=	名詞
な接続	=	n
さ接続	=	n
する接続	=	n
語幹のみで文節	=	n
格助詞接続	=	n

EOF

end

src.close
dic.close