夏休みの時期になったこともあり、時間を作ってちょっとEmacsのSKK辞書設定を見直してみました。
ddskk
Emacsではddskkを利用しています。
メモリは十分余裕があること、取り回しがよいことから、基本的には辞書サーバーは利用せずに辞書ファイルを読み込むスタイルで利用しています。
初期導入のときの設定のまま、あまりカスタムせずに使っていました。
|
|
特にEmacs上ではorg-roamによるノート作成などが多いため、それほど変換で困ることもなかったのですが、 メールやslackのメッセージの下書きをすることもあり、そういった際には人名を辞書登録することもしばしばありました。
SKKには基本辞書に加えて、専門辞書も豊富に用意されているため、上記の人名のケースなどではこれを利用すればUXの向上が見込めます。
SKK dictionary files gh-pages | dict
実直に行くなら skk-extra-jisyo-file-list
に使いそうな専門辞書をリストアップして設定すればよいだけです。
しかしddskkではCDB形式のファイルを直接利用することができるため、せっかくなのでいくつかの辞書を統合したCDBファイルにしてしまおうと思います。
CDBファイルの作成
SKK辞書のリポジトリに、cdb形式の辞書を作成するためのMakefileターゲットが用意されています。
こちらのリポジトリをクローンしてきて、 make cdb
すればSKK-JISYO.Lのcdbが作成できます。
ただし、Makefileが参照しているスクリプトはskktoolsにあるので、こちらもクローンしてきてMakefileの参照パスと合わせて適宜リネームなどを事前にする必要があります。
スクリプトはpython製のようなので、python3も必要に応じて用意しておきます。Nixならこんな感じで。
|
|
複数辞書の統合
自身の環境と統合したい辞書に合わせてMakefileをちょっと書き換えます。
|
|
上記では日常で使いそうな人名、地名、駅名とそれ以外の主な固有名詞をSKK-JISYO.Lと合わせて SKK-JISYO-MY.cdb
という辞書ファイルを作成しています。
ddskkで利用する
後は作成したCDB辞書ファイルを指定するだけです。
|
|
まとめ
複数のSKK辞書をひとつのCDBファイルにまとめてddskkから利用するよう改修してみました。
CDBなので高速ですし、これで人名や地名の変換も改善されたと思います。 台湾や沖縄のようなマニアックな辞書も、extraの方に入れておいてもいいかもしれないです。
メモリサイズは大きくなりましたが、現在のマシンスペックであればまず困らないと思います。 ちなみに作成した辞書サイズ自体は16MB程度でした。
しばらく利用して、改善の効果を感じてみたいと思います。