ぐるっとぐりっど

日曜プログラマがいろいろ試してみたことを、後の自分のためにまとめておく場所

skk+azikで意図せず促音が入力されてしまう件

最近、家では、emacs+skk+azikでメモや、その他書き物をしているんだけれど、時々「つ」を入力しようとして「っ」が入力されてしまう事象が発生しており、ひとまず原因がわかったのでメモ

原因

skkで入力した文字がおかしくなる原因といったら、当然ひとつしかない

そのように設定されているから

そして、大体「つ」の代わりに「っ」が入ってしまうのは、「つ」から始まる漢字を入力しようとしているときに発生するため、そのあたりを重点的に調べたところ、次のことがわかった。

  • tuは、「つ」と入力される
  • tUは、「っ」と入力される

そのため、「つ」から始まる漢字を入力しようとして、本来はTuと入力すべきところをTUとシフトから指が離れる前に次を入力してしまっているため、意図せず「っ」が入力されてしまったようだ。

skk-azik.elを確認してみても、以下のようにばっちり「っ」が定義されていることを確認できる。
ドキュメントには、「っ」は;で入力します、としか書いてなかった気がするけどなあ

(defvar skk-azik-additional-rom-kana-rule-list
  '((";" nil ("ッ" . "っ"))
    ("x;" nil ";")

    ...

    ("tU" nil ("ッ" . "っ"))

    ...

    ("tsU" nil ("ッ" . "っ"))

    ...

    ("zz" nil ("ザン" . "ざん"))))

解決策

たぶんtUを「つ」で上書きしてやれば動作するんだろうけど、わかってしまえば便利なような気もするのでひとまず対処は保留

うむむ、azikも奥が深く、なかなか、「ああずっといい感じ」にはなれそうにない。