id:kizashi1122 です。
最近 AI の話ばかりですが、あえて AI の話は外して書きます。 この記事も AI は使っていません。
ここ10年以上、仕事もプライベートも US配列キーボードを使っていました。そしてさらに外付けで HHKBなどのUS配列キーボードを接続して使っていました。 情シスの方針で新しく購入する Mac が JIS配列キーボードになり、私は古い US 配列キーボードの MacBookPro にしがみついていました。
そういつまでも悪あがきできず、JIS配列の新しい MacBookAir に移行することになりました。
Homebrew は Brewfile で一気に必要なソフトウェアがインストールできて、わりとすぐに移行は完了しました。
問題はキーボードです。
家では HHKB、会社では Keychron の US配列キーボードを使っています。
OS は Tahoe ですが外付けキーボードがうまく認識されません。通常は左Shiftキーの右隣のキー(と右Shiftキーの左隣のキー)を押すちゃんと US 配列であると認識してくれるのですが。
おかしいと思いながらも手動でANSI配列(US配列)を設定しました。
ここでおかしいことが起こります。なんと外付けキーボードに対して設定したつもりが本体のJIS配列キーボードまでUS配列扱いになってしまったのです。
まあおかしいことではあるのですが、それはそれでアリなのでそのまま使っています。
しかしこの場合困ることがあります。 JIS 配列のバックスペースキーの左のキー(円マークやパイプが刻印してあるキー)がうんともすんとも言わなくなるのです。
そこで、 Karabinar Elements の出番です。
international3 を grave_accent_and_tilde に割り当てると、そのまま押すとバッククォート、Shift を押しながらだとチルダになってくれます。

バックスラッシュとパイプはどこにいった? となりますが、これは Karabinar Elements を使わずともリターンキーの左隣の下側(手前側)に割り当てられています。
あとちょうどこのタイミングで仮想ターミナルを iTerm から Ghostty にしました。 Emacs使いの私としては、iTerm のこの機能がとてもうれしかったのです。

Emacs では M-x というキーバインドを多用します。M はメタキーを使います。デフォルトでは Option キーなわけですが、これが押しにくい。親指がおかしくなってしまいます。 そこで上記の設定のように Left Command キーを Option キーに割り当てることで快適になるのです。
しかし Ghostty ではその設定がない・・・・(今後できるかもしれないけど)
そうなるとまた Karabinar Elements の出番です。
Complex Modification という設定で以下のように定義しました。
{ "description": "Left CMD to left Option in Ghostty", "manipulators": [ { "conditions": [ { "bundle_identifiers": [ "^com\\.mitchellh\\.ghostty$" ], "type": "frontmost_application_if" } ], "description": "Map left Cmd to left Option in Ghostty", "from": { "key_code": "left_command", "modifiers": { "optional": ["any"] } }, "to": [{ "key_code": "left_option" }], "type": "basic" } ] }
これでなんとか仕事できそうです。