前回は、Google日本語入力からmacOS標準IMEへ移行したものの、ローマ字テーブルが編集できず困ったという話でした。

今回は、その解決に使った Karabiner-Elements の考え方と導入手順を解説します。

Karabiner-Elementsとは?

Karabiner-Elementsは、macOS向けのキーボードカスタマイズソフトです。

例えば、

```text
Caps Lock → Control
```

のような単純なキー入れ替えだけでなく、

  • 特定のアプリでだけキーの動作を変える
  • 日本語入力中だけ特定の処理を行う
  • 複数キーの組み合わせで別の入力を行う

といった複雑な制御もできます。

今回のように「Cの次が特定の母音だった場合だけ別の入力として扱う」という処理にも利用できます。

単純に「CをKへ変更」してはいけない

最初は単純に、

```text
C → K
```

とすればいいように思えます。

そうすれば、

```text
co

ko


```

になります。

ところが、この方法では、

```text
cho → ちょ
```

のような既存のローマ字入力まで壊れてしまいます。

Cを無条件でKへ変えてしまうと、

```text
cho

kho
```

となってしまうからです。

そこで、Cを押した時点では一度待機し、次のキーを確認します。

今回変更したいのは、

```text
ci → き
cu → く
co → こ
```

だけです。

それ以外ではCをそのまま出します。

そのため、

```text
cho → ちょ
cha → ちゃ
chu → ちゅ
```

などは今まで通り使えます。

Xについても同様で、

```text
xi → ひ
xo → ほ
```

だけを特別扱いします。

インストール

Karabiner-Elementsを公式サイトからインストールします。

インストール後は、macOS側でアクセシビリティやドライバ機能拡張などの許可が必要になる場合があります。

Karabiner-Elementsを起動すると必要な許可が表示されるので、その案内に従って設定します。

macOSやKarabiner-Elementsのバージョンによって画面表示は変わる可能性があります。

実際のKarabiner設定を入れる

Karabiner-Elementsでは、Complex Modificationsという機能でJSON形式のカスタムルールを追加できます。

ユーザーが追加する設定ファイルは通常、

```text
~/.config/karabiner/assets/complex_modifications/
```

へ置きます。

Finderから開く場合は、

Finder → 移動 → フォルダへ移動

を選択し、

```text
~/.config/karabiner/assets/complex_modifications/
```

と入力します。

そこへ、本シリーズで配布している、

```text
apple_japanese_custom_romaji_v4.json
```

を置きます。

次にKarabiner-Elementsを開き、

Complex Modifications → Add predefined rule

から、

Apple日本語入力 カスタムローマ字 v4

を有効にします。

この設定で変わる入力

今回、Karabiner側で特別扱いするのは次の5つだけです。

```text
ci → き
cu → く
co → こ

xi → ひ
xo → ほ
```

それ以外はmacOS標準IMEの入力をそのまま使います。

つまり最終的には、

```text
か → ka
き → ci
く → cu
け → ke
こ → co

は → ha
ひ → xi
ふ → fu
へ → he
ほ → xo
```

という入力になります。

また、

```text
cho → ちょ
cha → ちゃ
chu → ちゅ
```

などの既存の入力も維持できます。

次回は、この方式の制約と、動かない場合の確認ポイント、そして全体のまとめを扱います。