ふと思い立って Emacs マニュアルを片手にキーバインドをまとめ直したので記録します。
第1回はカーソル移動についてです。…一部検索も含みますが。
言うまでもありませんが「C-x」は Ctrl キーを押しながら x を押すという意味です。
同様に「M-x」は Alt キーを押しながら(あるいは ESC を押してから) x を押します。
あと「C-x n」は「C-x」の後に(Ctrl を放してから) n を押します。
以下で使用している「a/b」は独自表記で a または b を意味します。
そのキーバインドの説明で【上、下】のように書いてあれば、a の時が「上」で b の時は「下」と考えてください。
単位ごとの移動
- C-p/C-n :【後方(上)、前方(下)】の行へ移動
- C-b/C-f :1文字【後方(左)、前方(右)】に移動
- M-b/M-f :1単語【後方(左)、前方(右)】に移動
- M-a/M-e :文 1つだけ【後方(左)、前方(右)】に移動
- M-[/M-](角括弧の開き/閉じ) :1段落【後方(上)、前方(下)】に移動
- C-x [/](角括弧の開き/閉じ) :1ページ(^L文字で区切られている)【後方(上)、前方(下)】に移動
先頭と末尾への移動
- C-a/C-e :行の【先頭、末尾】へ移動
- M-</M-> :バッファの【先頭、末尾】へ移動
スクロール・位置指定
- C-v :1画面進む(下)方向にスクロール
- M-v :1画面戻る(上)方向にスクロール
- C-l :現在行が画面中央に来るようにスクロール
- M-g M-g :指定する行番号へ移動
- M-r :画面中央の行へカーソル移動
検索(インクリメンタルサーチ)
文字を入力しながら検索します。1文字入れるごとに候補を絞り込みます。
- C-s :前方(画面下)へサーチ、サーチ中なら前方の次候補へ移動
- C-r :後方(画面上)へサーチ、サーチ中なら後方の次候補へ移動
現在位置で検索を終了したければ ENTER か、カーソル移動コマンドを使えばいいです。
検索開始位置に戻りたい場合には C-g を利用します。
特殊:プログラムのソースファイル向け
- C-M-b/C-M-f :式 1つ分だけ【後方(左)、前方(右)】に移動
- C-M-p/C-M-n :リスト 1つ分だけ【後方(左)、前方(右)】に移動
- C-M-a/C-M-e :最上位のまとまり(関数定義など) 1つ分だけ【後方(上)、前方(下)】に移動
- C-M-u/C-M-d :リスト階層で 1つ【上(外)、下(中)】へ移動
- M-m :現在行の先頭の非空白文字(字下げした行頭)へ移動
とまあ色々とありますが、とりあえず下の 3パターンだけ覚えておけば何とかなります。
- C-p/C-n/C-b/C-f :1つ【上、下、左、右】へ移動
- C-s/C-r :【前方(下)、後方(上)】へ検索開始・次候補へ移動
- C-v/M-v :1画面【前方(下)、後方(上)】へスクロール
余裕があれば 単語移動の M-b/M-f、行頭 C-a、行末 C-e、バッファ先頭/末尾 M-<、M-> も覚えておくと便利です。