hunspellコマンドでカスタム辞書作成
hunspellのインストール
$ yum install hunspell hunspell-tools
辞書のサーチパスの確認
$ hunspell -D
SEARCH PATH:
(略)
AVAILABLE DICTIONARIES (path is not mandatory for -d option):
/usr/share/hunspell/en_US
- Debianの場合は初期インストールの時点で/usr/share/hunspell/en_USが有効になっている
- なお、1つの辞書は2つのファイルから構成されており、/usr/share/hunspell/en_US.aff と /usr/share/hunspell/en_US.dic が存在している
カスタム辞書の作成
単語ファイルの作成
vi words.txt
--------------
FOO
BAR
--------------
.dicファイルの作成
wc -l ./words.txt > mydict.dic
sort ./words.txt | uniq >> ./mydict.dic
.affファイルの作成
echo -n > ./mydict.aff
- .affファイルは複雑な指定が可能だが、辞書のサイズが小さければ空のファイルでも何とかなるっぽい
- 本気でやるなら、hunspellのドキュメントを熟読するしかない
辞書の設置
mkdir ~/.dict
cp mydict.* ~/dict/
export DICPATH=~/.dict
hunspell -D
- 適当な場所(ここでは~/.dict)にディレクトリを作って、そこに.dicファイルと.affファイルを置く
- その場所を環境変数DICPATHに登録する
動作確認
$ echo FOO BAR | hunspell -d mydict -l
$ echo FOO BAR baz | hunspell -d mydict -l
baz
- FOO と BAR は単語リストにあるのでエラーにならない
- bazはエラーになる
ロケールに合った辞書ファイルを作るには
/usr/share/hunspell/en_US以下にある.dicファイルと.affファイルをコピーして、.dicファイルに新しい単語を書き込み、en_US.dic や en_US.aff というファイル名で設置するといいっぽい。が、未確認
参考