2019-09-28 (Sat) [長年日記]
_ iTerm2でCommandをメタキーとして使う
諸事情で最近中古のMacBook Proを入手したが、ターミナルのメタキーがOptionキーになっていて、TextbrinerなどでEmacsキーバインドが使いづらいのでiTerm2とKarabiner-Elementsの設定をした。
iTerm2の設定
- [Preferneces]->[Profiles]->[Keys]でLeft OptionをEsc+にする。
- [Preferences]->[Keys]->[Remap Modifiers]でLeft OptionをLeft Commandに、Left CommandをLeft Optionに変更する。
これでCommandをメタキーとして使えるが、このままだとiTerm2の時だけOption-TABで切り替えしないといけなくてつらい。
Karabiner-Elements2の設定
- 以下のファイルを~/.config/karabiner/assets/complex_modifications/iterm2.jsonに保存する。
{
"title": "iTerm2 rules",
"rules": [
{
"description": "Command-TAB to Option-TAB on iTerm2",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "tab",
"modifiers": {
"mandatory": ["left_command"]
}
},
"to": [
{
"key_code": "tab",
"modifiers": ["left_option"]
}
],
"conditions": [
{
"type": "frontmost_application_if",
"bundle_identifiers": [
"^com\\.googlecode\\.iterm2"
]
}
]
}
]
},
{
"description": "Command-SPC to Option-SPC on iTerm2",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "spacebar",
"modifiers": {
"mandatory": ["left_command"]
}
},
"to": [
{
"key_code": "spacebar",
"modifiers": ["left_option"]
}
],
"conditions": [
{
"type": "frontmost_application_if",
"bundle_identifiers": [
"^com\\.googlecode\\.iterm2"
]
}
]
}
]
}
]
}
- [Complex modifications]->[Add rule]で[Command-TAB to Option-TAB on iTerm2]を追加する(自分はCommand-SPCを入力ソースの切り替えに割り当てているので、Command-SPCの方も追加しているがお好みで)。
2019/9/30追記
以下の記事を参考にしたらKarabiner-Elementsを使わなくてもiTerm2の設定だけでできた。