最近MacのMagic KeyboardをUK配列(USとほぼ同じ)に切り換えたので、Karabiner-Elementsを使用してキーバインドをカスタマイズしました。
caps_lockをcontrolに変更する
これはJIS配列でもお馴染みですね。Karabiner-ElementsのPreferences>Simple modificationsから、Add itemで設定します。

commandで英語・日本語入力を切り替える
UK/USキーボードに乗り換える際の懸念点として、英数・かな入力キーのキーがないことが挙げられます。
その代わりとして、左下の地球儀キーでToggleで言語の切り替えができるようになっているのですが、正直遠くて押しにくいです。また個人的にはToggleよりそれぞれキーが分かれている方が、今どちらの言語なのか考えずに使えるので好きです。
なので、左右のcommandキーをそれぞれ英数・かな入力キーとして割り当てます。こうするとJISの配置にも近くずっと扱いやすくなります。
これはWeb上で提供されているカスタムルールを利用します。
Karabiner-ElementsのPreferences>Complex modifications>Add rule>Import more rules from the Internetをクリックし、ブラウザでInternational(Language Specific)>For JapaneseをImportします。
この中に「コマンドキーを単体で押したときに、英数・かなキーを送信する。(左コマンドキーは英数、右コマンドキーはかな)」というルールが含まれているので、再度Preferences>Complex modifications>Add ruleと進んでこれをEnableすれば設定完了です。
ちなみに使っていると気づきますが、UK/US配列では親指はそれぞれ左右のcommand上にいるのが基本で、そのままcommand関連の大抵の操作が可能です。慣れると非常に楽で、これが元々の設計思想における使い方なのだと勝手に理解しました。
escapeのショートカットを設定する
これもJIS配列と共通の話ですが、escキーはそのままだと押しにくいため、control-[をショートカットとして設定すると便利です。
これは先ほどImportしたルールの中の「Ctrl+[を押したときに、escキーと英数キーを送信する」をEnableすれば使用できます。
shift-3を£から#に変換する
こちらはUK配列特有ですが、#の入力はoption-3になっています。これが非常に使いづらいです。
一方shift-3の組み合わせが日本ではあまり使うことのない£(Pound)に設定されています。
よって、shift-3をoption-3のショートカットとして設定します。
先ほどはWebからルールを引っ張ってきましたが、ユーザー自身でルールを定義することも可能です。~/.config/karabiner/assets/complex_modificationsディレクトリに以下の内容のJSONファイルを配置します。
定義の詳細についてはこちらの記事が参考になります:https://qiita.com/s-show/items/a1fd228b04801477729c
{
"title": "Custom Rules",
"rules": [
{
"description": "Change £ to #",
"manipulators": [
{ "type": "basic",
"from": {
"key_code": "3",
"modifiers": { "mandatory": [ "shift" ] }
},
"to": [
{
"key_code": "3",
"modifiers": [ "option" ]
}
]
}
]
}
]
}
その後Preferences>Complex modifications>Add ruleで定義したルールをEnableします。

ctrl-commandで英語・日本語入力を切り替える
先にcommandを使って英語・日本語入力を切り替える設定について記載しましたが、実際使っていくと他のキーを押す際にcommandを押したままとなり、意図しないショートカットが効いてしまうミスが頻発することがわかってきました。
したがって、英語・日本語入力を切り替える操作をctrl-commandに変更するのも一案です。
これはWebからImportした「コマンドキーを単体で押したときに、英数・かなキーを送信する。(左コマンドキーは英数、右コマンドキーはかな)」のルールを修正することで設定できます。
Importしたルールは~/.config/karabiner/assets/complex_modifications配下のファイル内で定義されていますので、コピペして修正します。
変更内容は以下です。
{
"description": "Ctrlとコマンドキーを押したときに、英数・かなキーを送信する。(左コマンドキーは英数、右コマンドキーはかな) (rev 3)",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "left_command",
"modifiers": {
"mandatory": [
"left_control"
]
}
},
"parameters": {
"basic.to_if_held_down_threshold_milliseconds": 100
},
"to": [
{
"key_code": "left_command",
"lazy": true
}
],
"to_if_held_down": [
{
"key_code": "left_command"
}
],
"to_if_alone": [
{
"key_code": "japanese_eisuu"
}
]
},
{
"type": "basic",
"from": {
"key_code": "right_command",
"modifiers": {
"mandatory": [
"left_control"
]
}
},
"parameters": {
"basic.to_if_held_down_threshold_milliseconds": 100
},
"to": [
{
"key_code": "right_command",
"lazy": true
}
],
"to_if_held_down": [
{
"key_code": "right_command"
}
],
"to_if_alone": [
{
"key_code": "japanese_kana"
}
]
}
]
}

