どこにはまったか。
- UTF-8は使えないとのこと
- anthyの辞書の形式
- 2.に伴う、変換スクリプトの仕様
1.IME用辞書をutf-8に変換する
→これはiconvを使えば余裕
$iconv -f MS932 -t UTF-8 ime_std.txt ime_std_utf8.txt
2.変換した辞書を、anthyの辞書形式にする
ぁぃ (゚Д゚)ノ ァィ 顔文字
を
ぁぃ #T35*500 (゚Д゚)ノ ァィ
みたいにするわけです。
ちなみに、#T35が品詞(名詞)、500が頻度を表しているっぽい
→この頻度が抜けててうまくいかなかったのだろう。
ちなみに、変換に使用したスクリプトは以下
#usr/lib/ruby -Ke
while line = gets
str = line.split(/\t/)
next unless str[2]
next unless str[2].chop == "顔文字"
print str[0]
print " #T35*500 "
print str[1]
print "\n"
end
これを kao.rb のような名前で保存して、先ほどのutf-8の辞書を変換する
$ruby kao.rb < ime_std_utf8.txt > kao.txt
3.~/.anthyに"private_words_default"としてコピー
$cp kao.txt ~/.anthy/private_words_default
#すでに個人辞書を登録してある場合は、以下でもいいんでない?
$cat kao.txt >> ~/.anthy/private_word_default
これで、scimを再起動するだけで反映される
゚・*:.。..。.:*・゜ヽ( ´∀`)人(´∀` )ノ・゜゚・*:.。..。.:*
てな感じで、Ubuntuでも顔文字使えるようになってうれしいです。
以下反省
- UTF-8も使えるようになったことに気づけなかった
- 辞書の形式が変わってたことに気づけなかった
最初からそうしておけばよかったのに。。。orz
0 件のコメント:
コメントを投稿