SKK ブラックリスト辞書を妄想してみる

iMac 購入

奥さんにおねだりしたらあっさり OK が出たので、一番安い iMac を US キーボードオプションで購入しました。上海から出荷されて、本日届く予定になってます。これで 64bit 環境も整い、万全の体制です。むはは。

あとは Kindle ですけど、Kindle 3 の噂もあるようですし、興奮も収まったのでしばらくは様子見のつもりです。でも愛用している電子辞書のヒンジにクラックが入って危機的な状況だったりして、これを新調するぐらいなら Kindle のほうが断然魅力的...... と揺れ動いています。

L 辞書との不毛な戦い

SKK では確定した候補を最高の優先度で学習するので、次回変換時には最後に確定した候補が最初に表示されます。また、間違ってユーザー辞書に登録してしまった単語もきちんと削除できます。どちらもおなじみの機能です。

しかし「この見出し語でこの候補は絶対に出したくない」というケースには今のところ対応できません。

例えば個人的には、「とうろく」という見出し語で「東麓」はあり得ない候補です。なので「東麓」は変換候補として出現して欲しくない、見たくないと思います。ところが「東麓」は L 辞書の候補なので、いついかなる時でも表示されてしまいます。読み取り専用なので、ユーザー辞書のように特定の候補を削除することもできません。

また「こう」や「し」のような見出し語には大量の変換候補があり、効率良く変換することができません*1。もちろん独自の見出し語でもって単語登録することもできますが、その方法では記憶の負荷が増大するのでいつかは破綻するでしょう。

仕方がないとあきらめ、頑張って使い込んでいけば、自然と良く使う候補が先に表示されるようになりますが、それもまどろっこしい。なにせつい最近ディスク障害とともにユーザー辞書を失なったばかりなので、自分の手に馴染んでない状態とはこんなにも不自由だったのかと苦々しく実感しているのです。

L 辞書の網羅性や完全性は良く言えば「充実」、悪く言えば「混沌」。そして、この混沌を感じる場所というのは人によって異なります。そこで、個々人の嗜好や語彙で L 辞書をフィルタリングしてスッキリする仕組みを考えてみました。

ブラックリスト辞書

変換候補から特定の候補を除外するためには照合するデータが必要です。これをひとまず「ブラックリスト辞書」と呼ぶことにします。候補に罪はないので「ブラック」と呼ぶのはやや違和感がありますが、今のところはこれで行きます。

実際の変換時には、ブラックリスト辞書に含まれている候補は候補群から除外されます。よりおだやかに、候補群の末尾に配置するオプションがあっても良いかもしれません。

操作体系

事前にブラックリスト辞書を用意するのはあまり現実的ではないと思うので、入力途中で「この候補は不要だな」と気付いた時にすっと登録できるようにします。具体的なキーバインドはさておき、

があればいいでしょうか。ブラックリスト変換モードはブラックリストだけが表示されるモードです。基本的な操作体系は同じなので、

といったことが可能だと思います。一度ブラックリストに登録しても簡単に復活できますよ、ということですね。

まとめ

ブラックリスト辞書を使うことで、これまで以上に最適化された入力環境を提供できそうな予感がします。ただ、大量候補については候補選択のインタフェースそのものを変えないと対処できない気がしていますが......

コマンドインタフェース同様、ブラックリスト辞書についてもご意見ご感想があればよろしくお願いします。

追記:ブクマコメントへのお返事

skk-ml に変換順固定化(≒最適化禁止)のパッチが流れたのは知っています。その方は実は以前にも AquaSKK スレで同じ提案をされて、その時は僕が「ごめんなさい」をしたという経緯があったりします。

この機能の問題点は、記憶負荷増大という点以上に、最適化がなされないという点にあります。変換順が固定化されるので、どれだけ使い込んでも変換順は一緒です。単語登録をしても、その単語は最後の変換候補になります。僕はどうしてもこの挙動に、「人間への優しさ」というものを感じることができません。人間は日々刻々と変化していくという前提に立つと、こういった固定化の機能というのはどうにも無理があるように思うのです。

ということで、今のところ AquaSKK に変換順固定化オプションを導入するつもりはありませんが、もし仮に固定化を導入するなら、一律ではなく特定の見出し語に限定するといった工夫が必要だと思います。

*1:本家 ddskk では skk-hint による絞り込みをサポートしています