Macでのキーバインド変更(CtrlとCommand入れ替え,ターミナル.appを使うときは入れ替えない)
昨年の暮れに Mac Book Air を購入.
Windows 一筋 15 年(中学生の頃,自宅で親父が Win95(FM-TOWNSとのデュアルブートというマニアック構成) 購入して以来...)のワタシでも,だんだんと慣れてきた.
で,大学時代から慣れ親しんでいるキーバインド(タイトル)に変更したいという思いが強くなってきた.
会社で使ってる Windows 機も,Caps 殺して Ctrl として使ってるぐらいなので...
Commandキー
Windows でいうところの Ctrl キーの役割.コピー/カット/ペースト/Undo などのショートカットはCommand + c/x/v/z に割り当てられている.
Ctrlキー
ターミナル.app を使うときにはこちらが Ctrl キーとして生きるようだ.
シェル使ってる時に Ctrl + u,Ctrl + k,Ctrl + a,Ctrl + e,Ctrl + r を使いたい.
つまりどういうことかというと
- Mac の Ctrl キーと Command キーを入れ替えたい
- ただし,ターミナル.appを使うときには,上記のキーの役割は入れ替えたくない.
この2つの実現方法はそれぞれ以下.
実現方法
- 設定で入れ替えられる
- KeyRemap4MacBookを使う
ターミナルの時に入れ替えない設定
正確には,入れ替えたキーをさらに入れ替えて元に戻している.
- KeyRemap4MacBookをインストール
- システム環境設定 → KeyRemap4MacBook → Misc&Uninstallタブ → Open Private.xmlボタン
- テキストエディタかなんかで private.xml を開く.
- 以下のように書き込み.identifierタグの内容は適当に変更(最後の2がないと,既存の設定名とバッティングしてしまった).
<?xml version="1.0"?> <root> <list> <item> <name>Command_L to Control_L (TERMINAL ONLY)</name> <only>TERMINAL</only> <identifier>remap.app_term_commandL2controlL2</identifier> <autogen>--KeyToKey-- KeyCode::COMMAND_L, KeyCode::CONTROL_L</autogen> </item> <item> <name>Control_L to Command_L (TERMINAL ONLY)</name> <only>TERMINAL</only> <identifier>remap.app_term_contolL2commandL2</identifier> <autogen>--KeyToKey-- KeyCode::CONTROL_L, KeyCode::COMMAND_L</autogen> </item> </list> </root>
- 保存
- ChangeKeyタブに今設定した内容が出てくるので,チェックボックスをOn.
以上でOK.