Mac OS Xで使っているキーバインド

機能 キーバインド Emacs DefaultKeyBinding.dict Butlerでの定義
1文字前に移動 C-j backward-char moveBackward:
1文字後ろに移動 C-; forward-char moveForward:
1行前に移動 C-l previous-line moveUp:
1行後ろに移動 C-k next-line moveDown:
1単語前に移動 C-, forward-word moveWordBackward: A-←
1単語後ろに移動 C-. backward-word moveWordForward: A-←
行頭に移動 C-a beginning-of-line moveToBeginningOfParagraph: M-←
行末に移動 C-e end-of-line moveToEndOfParagraph: M-→
1画面前に移動 C-b scroll-up pageUp: A-PageUp
1画面後ろに移動 C-v scroll-down pageDown: A-PageDown
文書の先頭に移動 C-M-, beginning-of-buffer moveToBeginningOfDocument: M-↑
文書の末尾に移動 C-M-. end-of-buffer moveToEndOfDocument: M-↓
1文字前に選択移動 C-S-j moveBackwardAndModifySelection: S-←
1文字後ろに選択移動 C-S-; moveForwardAndModifySelection: S-→
1行前に選択移動 C-S-l moveUpAndModifySelection: S-↑
1行後ろに選択移動 C-S-k moveDownAndModifySelection: S-↑
1単語前に選択移動 C-S-, A-S-←
1単語後ろに選択移動 C-S-. A-S-→
行頭まで選択移動 C-S-a M-S-←
行末まで選択移動 C-S-e M-S-→
1画面前に移動 C-S-b S-PageUp
1画面後ろに移動 C-S-v S-PageDown
文書の先頭まで選択移動 C-M-S-, M-S-↑
文書の末尾まで選択移動 C-M-S-. M-S-↓
前の文字を削除 C-h delete-backward-char deleteBackward: BS
後ろの文字を削除 C-d delete-char deleteForward: DEL
前の単語を削除 C-M-h backward-killword deleteWordBackward: A-BS
後ろの単語を削除 C-M-d backward-killword deleteWordForward: A-DEL
行末まで削除 C-k kill-line deleteToEndOfParagraph: M-S-→ BS
行頭まで削除 C-M-k M-0 C-k deleteToBeginningOfParagraph: M-S-← BS
ヤンク C-i yank yank:
クリップボード履歴 C-S-i yank-pop
改行 C-m newline insertNewline: RET
前方に1つ空行を追加 C-o open-line insertNewlineIgnoringFieldEditor: RET ↑ M-→
前後の文字を入れ替え C-t transpose-chars transpose: → ← S-← M-x → M-v
前後の単語を入れ替え C-M-t transpose-words A-← A-→ A-→ A-← A-S-← M-x A-→ SPC C-v A-S-← A-S-→ M-x A-← M-v A-← A-→ DEL A-→
前後の単語を入れ替え(Firefox) C-M-t transpose-words A-← A-→ A-→ A-← BS C-x A-→ SPC C-v
前後の行を入れ替え C-S-t transpose-lines M-← M-s-→ M-x DEL C-← M-v RET
単語を選択 C-S-w selectWord: A-→ A-S-←
行を選択 C-S-p selectParagraph: M-→ M-S-←
単語を大文字に C-M-u upcase-word uppercaseWord:
単語を小文字に C-M-l downcase-word lowercaseWord:
単語をキャピタライズ C-M-c capitalize-word capitalizeWord:
マークを設定 C-SPC set-mark-command setMark:
マークを入れ替え C-x C-x exchange-point-and-mark swapWithMark:

略号の意味など

M- Command +
C- Control +
A- Option +
S- Shift+
SPC スペースバー
RET Return
BS Backspace
DEL Foward Delete

EmacsEmacs において対応するものだが、caseの扱いなど、完全に対応しているわけではない。

設定方法

Butler では「スマートアイテム:キーストローク」を使って定義する。


DefaultKeyBinding.dict は Cocoaアプリ(正確にはNSTextViewを使用するアプリ)でのみ使用可能。
~/Library/KeyBindings/DefaultKeyBinding.dict というテキストファイルを作ってると設定できる。(要再ログイン)
C-x C-f のようなマルチアクションも設定可能となっている。
参考:Translations/Mac OS X Key Bindings - Log By Kenji Akeno

追記(2009-04-25)

画面単位の移動で、PageUp / PageDownだと画面は移動するもののカーソルは移動しないらしく、
A-PageUp / A-PageDownなら問題ないということがわかったので書き換えた。
(ただしWebブラウザのスクロールではPageUp / PageDownでなければならない)