Edited at

HHKB Professional JPをmacOS High Sierraで使うための簡単な設定方法

More than 1 year has passed since last update.

OS が High Sierra になっている Mac のラップトップで HHKB Professional JP をすぐ使ってみようとすると、うまく動きません。

いろいろ試行錯誤してみた結果、動かす方法はわりと簡単だったので紹介します。


設定の前に

まずはキーボードを JIS 配列として認識させる必要があります。

そのために、まずはドライバをインストールしましょう。これが一番大事です。

ドライバをインストールして Mac を再起動させたら、キーボードを繋ぎます。

そうするとキーボード設定アシスタントが起動するので、Mac 自体の物理キーボードを利用してキーボードを JIS 配列として認識させてください。(HHKB で入力してしまうとうまく認識されません

認識が完了したら @ を入力してみてください。

うまく JIS 配列として認識されていれば @ が表示されます。

[ が表示されてしまったら US 配列として認識されています。

この場合は Mac の [システム環境設定] -> [キーボード] -> [キーボードの種類を変更] から再度キーボードを認識させましょう。ただし、キーボードは繋いだままにする必要があるようです。


かんたんな設定

ドライバを入れてキーボードを JIS 配列として認識させるだけでは、英数かなキーによる変換ができません。

キーボード本体の裏に思いっきり書いてあるのですが、背面スイッチの SW1 を ON にして Macintosh モードに切り替えてください。蓋でぐいっとやればスイッチは切り替えれました。

これだけで英数かなキーの変換が有効になります。

ただし、スイッチを切り替えただけでは反映されないので、必ずキーボードの USB を抜き差ししてください。


より高度な設定

背面スイッチでできる変更以外のことをしたい場合は Karabiner-Elements が必要になります。

このページからインストールできます。

ここで注意が必要なのが、Karabiner-Elements は v12.0.0 より Virtual Keyboard の互換性向上のため、Mac 側のキーボード設定を利用することになりました。

悲しいことに HHKB Professional JP は Mac がキーボードをうまく認識しないため、Karabiner-Elements 上では US キーボードとして解釈されてしまいます。

それにより、以下の現象が発生します。


  • Karabiner-Elements を起動させると、先程設定した英数かなキーによる変換が無効になる

  • Karabiner-Elements 側が認識するキーと印字されているキーが一部異なる

なので、 キーバインドは以下のKarabiner-Elements が認識するキーに対して行えば OK です。

印字されているキー
Karabiner-Elements 側の認識するキー

無変換キー
international5

変換キー
international4

HHKB マーク
grave_accent_and_tilde (`)

Fn
なし

たとえば、Karabiner-Elements で英数かなキーの変換を有効にしたいのであればこんな感じになります。

なお、例示しているもの以外でも Karabiner-EventViewer を確認することで、どのキーが Karabiner-Elements ではどう認識されるか分かりますので、必要に応じて確認してみてください。


Karabiner-ElementsにFnキーを認識させる

ただ Fn キーを ⌘ に割り当てたいときに、Karabiner-Elements 側はまったく認識してくれません。

そこで、背面スイッチの SW2 を利用します。

Fn キーを Ctrl に、Ctrl キーを英数にし、それぞれにキーバインドを変更するというやり方です。

Karabiner-Elements の設定はこうします。

これで Ctrl ボタンはそのままに、Fn キーを ⌘ に割り当てることができます。


まとめ

これらを踏まえて、最終的にはこんな感じになりました。

背面スイッチは SW1/SW2/SW5 を ON に、

Karabiner-Elements は英数字キーの変換を有効にし、Fn キーを ⌘ に割り当てて、HHKB マークは ⌥ に割り当てました。

これで Mac 自体の物理キーボードに近い感じになったかと思います。(バックスラッシュは未対応)

ぜひ参考にしてください。