全人類SKKとかいうIMEを使った方が良い

# SKK is 何

SKKとは、"Simple Kana to Kanji conversion program"の略であり、IMEの一種です。

当然OSSで、初出はEmacsですが、現在ではどの環境でも使えるようになっています。

Microsoft日本語IMEやGoogle日本語入力といった通常のIMEとは大きく操作方法が異なっています。

通常のIMEの場合、文章入力後に変換を押すと形態素解析により自動で単語に分割変換してくれます。

    例) ねこにこばん ー> 猫に小判

しかし、皆さんご存じの通り、自分の思った通りに変換してくれない事も多く、入力の手戻りが多くなってしまう欠点があります。

    例) きょうはいしゃにいった(今日歯医者に行った、と変換したい) ー> 今日は医者に行った

この場合は、カーソルキーで左に戻って変換して元の場所に戻らなければなりません。

この場合はまだしも、単語の区切りが間違っている場合は入力し直す必要があります。

それに対してSKKは自分で単語毎に分割し、単語毎に変換していきます。

    例) きょう/はいしゃ/に/い/った ー> 今日/歯医者/に/行/った

このように順に文章を書いていくため、後から誤変換を修正する必要が無いという点が特徴です。

慣れれば問題無く扱えるものの、やはり操作性が他のIMEと異なることから一部の逸般人に愛好されているIMEです。


# インストール

### Windowsの場合

~~Windowsなどという不自由なソフトウェアはOSではない~~

CorvusSKKが良さそうです。

https://github.com/nathancorvussolis/corvusskk

これをインストールします。

https://zenn.dev/toriwasa/articles/327d11c45a62e8

設定はこの記事が参考になるので、これに沿って行うと良きかと思います。

### Linuxの場合

自身のディストロのパッケージマネージャーを用いて、fcitx5-skkやibus-skkといったものをインストールしてください。

無い場合は自身でビルドしてください。

https://github.com/ueno/ibus-skk

https://github.com/fcitx/fcitx5-skk

### Macの場合

~~macOSなどという不自由なソフトウェアはOSではない~~

使ったことないので詳しくは分かりませんが、AquaSKKが有名らしいです。

https://github.com/codefirst/aquaskk

# 使い方

以下、例で使用するSpaceは"␣"、Enterは"↵"とします。

変換したい単語を入力する際に、Shiftを押しながら最初の文字を入力します。

それ以降の文字は下線が引かれ変換対象となります。

変換対象は通常のIMEと同様にSpaceで変換を行います。

確定はEnterを入力するか、変換後に別の文字を入力する、で可能です。

    例) Tango␣↵ → 単語

    例) Idou␣↵ → 移動

    例) Idou␣␣↵ → 異動

    例) Henkann␣su(自動確定)ru → 変換する

送り仮名のある文字は漢字部分とひらがな部分でそれぞれShiftを押して入力します。

送り仮名のある文字場合、送り仮名を一文字入力した段階で自動で変換が行われます。

    例) NoMu(自動変換)↵ → 飲む

    例) NoBe(自動変換)ru(自動確定) → 述べる

カタカナに変換したい場合は、Shift+任意の文字列を入力した後、qキーを入力します。

こちらもqを押したタイミングで自動で確定します。

    例) Ki-horuda-q(自動確定) → キーホルダー

以上が基本の操作です。

最初慣れない内は入力に手間取ってしまいますが、慣れるとスムーズに入力できるようになります。

# ハマりそうなポイント

使ってみて初見時に苦労した場面を紹介します。

### 変換候補を戻る時

変換は他のIME同様にSpaceで進むのですが、過ぎてしまったので戻りたいという時に戻る方法が分かりづらいです。

戻る方法はxキーです。

矢印キーの上下では効きません。

### 日本語の小文字入力

通常であればl(小文字のL)+任意の文字で小文字になりますが、SKKの場合はlが他のキーバインドに割り当てられています。

日本語の小文字の入力は、x+任意の文字で可能です。

# SKKの利点

では、SKKにどんな利点があるのか。

※個人の感想です

### カタカナ変換が楽

使っていてまず思ったのは、カタカナ変換が楽だな~と。

通常のIMEの場合、

・入力->スペースキー連打でカタカナを見つける

・入力->F7キーを押す 

という手順でカタカナ変換を行うと思います。

入力->F7も十分楽ではあるのですが、ファンクションキーは遠く、ホームポジションを崩す必要があるのであまり好きではないです。

SKKの場合は 入力->Qを押す これだけで済みます。

小さな違いではありますが、カタカナ変換は利用頻度が高いので、それが楽になるだけでかなり便利になります。

### 記号入力しやすい

"→"といった記号は使用頻度が高いのにも関わらず、出すのに変換が必要なのですが、SKKの場合、"→"はz+lで出すことができます。

このようにzを用いて記号を出すためのキーバインドが設定されています。

(hjklの入力によって矢印が出せる機能は、特にVimmerからすると非常に使いやすいですよね)

この部分はぶっちゃけGoogleIMEでも同じことが出来ます。


### ひらがなの入力時に確定のEnterを押す必要が無い

通常のIMEの場合、入力中の文字全てが変換の対象になるので、全てひらがなの場合でも、一旦Enterで確定する必要があります。

それに対して、SKKではShiftを押さない限り変換の対象にはならないので、ひらがなはすらすらと入力することができます。

### 自分で操作できるマニュアル感

結局これです。

文字の入力を自分で制御できている感覚が味わえます。

変換して、「違う違う、そうじゃ、そうじゃな~い~」などと思う必要がなくなります。

手戻り作業が少なくなるだけで気持ちよく入力することができます。

# SKKの欠点

良い点ばかりというわけではなく、欠点もあるなと感じたので、紹介します。

※個人の感想です

## Ctrlキーを使うキーバインドが存在する

例えば、他のモードからかな入力モードに戻る方法は、Ctrl+j、もしくは全角半角切り変えキーです。

当然キーバインドを変更することは出来るので変更すればよいのですが、Ctrlキーを使うキーバインドは多くのアプリケーションで使われているため、そもそもCtrlキーを使うキーバインドをIMEに入れて欲しくないなという気持ちがあります。

## キーバインドが他のIMEと異なる

ハマりそうなポイントで述べましたが、なぜ他のIMEと一部キーバインドが異なるのでしょうか。

歴史的背景もあるのかもしれませんが、小文字入力や予測変換時のキーバインドが異なる利点があまり分かりません。

そこは他のIMEに合わせた方が良かったのではないかと思います。

## Shiftを押す煩わしさ

SKKでは単語の区切り毎にShiftを押して変換を行いますが、Shiftを押す時には小指を使います。

そうなると、本来Q,A,Zキーのように左端に存在するキーは従来であれば小指を用いて入力する場合がありますが、Shiftに小指を奪われるため、薬指を使うか小指を離して使うことになります。

例えば、"愛"と入力するときShift→小指、a→薬指 or 一旦離した小指となります。

英語の大文字も同様にShift使うんだからそれと同じではないかと言いたいところですが、SKKの変換は比較にならない程使用頻度が増えるので、使っていると小指が疲れます。

右側のShiftを利用する際も同様です。

じゃあどうすればよかったんだってばよっという話ですが、これはSKKのシステムの話なのでどうしようもないと思います。

Ctrlキーなんで更に遠いですし。(Emacsェ...)

強いて言うなら自分の好きなキーに変更するくらいでしょうか、変換や無変換キーであれば親指で変換できるようにはなります。

もしくは両サイドのShiftを入力毎に使い分けることが出来るようになれば、より便利に使いこなせるのかもしれませんね。

# 困った時には

なぜかは分かりませんが、ニコニコ大百科のSKKの項目が異様に詳しく書かれているので、一旦これに目を通しておくのをおすすめします。

https://dic.nicovideo.jp/a/skk

# 結局、速くタイピングできるようになるのか

結局、SKKを使ってタイピングが速くなるのか。

結論、特に変わらないのではないかと思います。

私はタイピングのプロではないので正確な時間計測をした訳ではありませんが、単語が入り乱れている文章かどうか、カタカナが多く入っているか、どのくらいIMEに学習させているか、辞書登録をしているか等、状況によって得意か不得意が別れるからです。

しかしSKKの利点は、タイピングの速度というよりも、使っていてIMEに不満を持ったりすることが無くなる、楽しくタイピングできるようになる、他の人にドヤれる、といった点だと思います。

十分に慣れるまで少し時間がかかりますが、慣れてくるとSKKの魅力が分かっていただけると思うので、是非一度使ってみてはいかがでしょうか。

# 最後に

SKKを触り始めてまだ短いため、間違っている部分や他にも利点や欠点があるやもしれませんが、その場合は是非ご指摘いただければと思います。

SKKについて語ってきましたが、日本語入力に苦労すればするほど、ASCII文字だけで済む英語圏は羨しいな~という気持ちが湧いてきました。