SKK(Simple Kana to Kanji conversion program)は、Emacs上で動作する
日本語入力システムです。
1987年に佐藤雅彦氏によって開発され、現在も進化を続けています。
形態素解析に頼らない独自の変換方式が特徴で、自然な文章作成を支援します。
歴史
SKKは
1987年に
東北大学教授(当時)の佐藤雅彦氏によって開発されました。
2000年11月頃に開発元での開発は終了しましたが、その後はOpenlabを拠点に開発が続けられ、2014年には
GitHubに移行しました。現在、SKK Openlabとskk-devがリリースするSKKはDaredevil SKK(ddskk)と呼ばれています。
特徴
SKKの最大の特徴は、
形態素解析を用いない変換方式です。ユーザーがかなと
漢字の境界を指定するため、
形態素解析による誤変換を防ぎます。話し言葉や
方言など、表記に揺れが多い文章にも適しています。
入力と変換を逐一行うため、左から右へ自然に文章を記述できます。カーソルキー操作が少なく、ホームポジションから手を離す回数が減り、高速な入力が可能です。また、辞書にない単語を入力すると、ミニバッファで登録を促され、個人用辞書に自動的に追加されます。このシームレスな辞書登録により、使い込むほどに快適な変換を実現できます。
一方で、シフトキーの多用による小指の負担が課題として挙げられますが、設定で他のキーに割り当てることで軽減できます。ローマ字かな変換が基本ですが、
漢字の始点と終点を指定することで、直接かな入力にも対応可能です。親指シフト配列やJISかな入力なども利用できます。
SKKへの初期習得には、
形態素解析を用いた他の入力方法からの転換が必要なため、戸惑いを感じるかもしれません。しかし、慣れると手書きのような感覚で入力できるようになります。
操作方法
SKKでは、通常入力はひらがなで確定されます。変換したい場合は、変換したい語句の頭文字を大文字(Shiftキーを押しながら)で入力し、送り仮名の開始文字も大文字で入力します。スペースキーを押すと、辞書にある変換候補が表示されます。例えば、「ここで履物を脱いでください」を入力する場合は、「kokodeHakimono␣woNuIdekudasai」と入力します(␣はスペースキー)。
SKKのバリエーション
SKKはEmacs Lispで実装されているため、Emacsが動作する環境であれば使用可能です。Emacs以外の環境で使用するためには、様々なプラットフォームに対応したSKKライクな変換エンジンが開発されています。以下に例を挙げます。
skkinput (XIM)
IIIMF (iiimf-skk)
uim (uim-skk)
SCIM (scim-skk)
IBus, Fcitx, Fcitx5
共有ライブラリ
libskk: ibus-skk、fcitx-skk、fcitx5-skkなど
macOS
AquaSKK
MacUIM/SKK
macSKK
Windows
skkime
CorvusSKK
SKK日本語入力FEP
Android
Android用SKK
SKK for Android
Vim
eskk.vim
skk.vim
SKKの辞書とSKKサーバ
SKKは共有辞書と個人用辞書の2種類を使用します。共有辞書は書き換え不可で、個人用辞書には登録単語や変換履歴が追加されます。辞書はかなと
漢字の対応を記述したテキストファイルです。サイズ別にS、M、ML、Lの4種類の基本辞書と、固有名詞や専門用語の辞書が提供されています。
辞書の読み込みに時間がかかる場合や、大きな辞書をEmacs毎に読み込む非効率性を解消するため、辞書サーバを使用できます。skkservというプロトコルを用いて辞書サーバに問い合わせ、変換結果を受け取ります。skkserv以外にも、skkipserv、dbskkd-cdb、multiskkserv、rskkserv、fskkserv、mecab-skkservなどの辞書サーバが存在し、それぞれ高速化や効率化のための工夫が凝らされています。
名前
SKKという名前は、SKIコンビネータ計算における恒等関数と同じ結果となる式に由来しています。作者の佐藤雅彦氏は、「ユーザの頭の中にある日本語のテキストを、なるべくストレスなしに、そのままディスプレイに出力するプログラムにしたいという気持ちが込められている」と述べています。
まとめ
SKKは、
形態素解析に依存しない独自の方式、拡張性の高い辞書システム、そして多様なプラットフォームへの対応など、多くの魅力を持つ
日本語入力システムです。その独特の入力方式に慣れることで、快適な日本語入力環境を構築できるでしょう。