macのキーバインド設定

オサレなmacユーザーは優雅にコーヒーを飲みながらタッチパッドやマウスを駆使するんだろうが、昭和レトロなわたしは麦茶をすすりながらもエディタを使ってる時にキーボードから手を離したくない・ホームポジションにしがみつきたい。
なんでタブを入れるのにいちいちタブキーなわけ?control+iにしてくれよ。
なんで改行するのにいちいちエンターキーなわけ?control+mにしてくれよ。
てことだ。
検索してみるとやはりmacの(というかcocoaの)キーカスタマイズ記事がかなりヒットした。
こちらの『テキスト編集のキー操作を自在にコントロールする』が丁寧でわかりやすい解説と有用なリンクがあってオススメ。
システム全体のキーバインド設定は
→「/System/Library/Frameworks/AppKit.framework/Versions/C/Resources/StandardKeyBinding.dict」
でも、こいつはテキストエディタで開くと文字化けして何のことやら皆目見当もつかないし、システム全体のものをいじるのはおっかないので、自分専用のキーバインド設定ファイルを使うことができる。
→「~/Library/KeyBindings/DefaultKeyBinding.dict」
わたしのmac OS 10.10.3にはディレクトリもファイルもなかったので
ホームディレクトリの下の「Library」フォルダに
「KeyBindings/DefaultKeyBinding.dict」を作成した。上記サイトを参考にcontorl+iでタブ入力というのだけの設定ファイル。
→{ "^i" = "insertTab:" }
その後「KeyBindingsEditor」というGUIでキーバインドの設定、キーカスタマイズができるアプリをダウンロードして(http://www.cocoabits.com/KeyBindingsEditor/)DefaultKeyBinding.dictに設定追加していった。
できあがったDefaultKeyBinding.dictが以下。xmlなのでわかりやすい。
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>^ </key>
<string>setMark:</string>
<key>^g</key>
<string>cancelOperation:</string>
<key>^i</key>
<string>insertTab:</string>
<key>^m</key>
<string>insertNewline:</string>
<key>^x</key>
<dict>
<key>^m</key>
<string>selectToMark:</string>
<key>^v</key>
<string>moveToEndOfDocument:</string>
<key>^x</key>
<string>swapWithMark:</string>
<key>^z</key>
<string>moveToBeginningOfDocument:</string>
<key>k</key>
<string>performClose:</string>
<key>u</key>
<string>undo:</string>
</dict>
<key>^z</key>
<string>pageUp:</string>
</dict>
</plist>
これで、emacsもどきでxyzzyもどきとなった。
contol+xをプレフィックスキーにしたキーバインディングなんかも実現できる。
・control+spaceでカーソル位置をマーク
・control+iでタブ入力
・control+mで改行
・control+zでページアップ
・conrol+x control+vで文書末尾にジャンプ
・conrol+x control+zで文書先頭にジャンプ
・conrol+x uでundo
このあたり、よく使うものを設定した。
ただ、
control+x control+f→ファイルオープン
control+x control+s→ファイル保存
control+x control+w→別名保存
なんかが効かないなぁ。ファイル操作系は別なのかな。
しかし、これだけのことで格段に使いやすくなった。
日頃使うエディタのキー入力でストレスが減るのは本当にありがたい。
もちろん、出先のパソコンは、効率が落ちても、デフォルトで使うしかないけど、ウチで使うものに関しては「手に馴染んだやりかた」で使いたい。
以上、んなもん、とっとと設定しろよ、なにを今さら、という話。


