Emacs キーバインド その2 ヘルプ・リージョン・キーマクロ

続けての投稿です。

第2回はちょっと慣れてきた人向けのシリーズです。
ヘルプ、範囲選択と切り貼り、+α を書いています。

ヘルプ

  • C-h b :キーバインドの一覧を表示
  • C-h k KEY :キーバインド KEY の説明を表示
  • C-h m :現在のモードに関する説明を表示
  • C-h a STRING :文字列 STRING を含むコマンドのリストを表示

マーク

  • C-SPC/C-@ :カーソル位置にマークを設定してリージョン指定を開始
  • C-u C-SPC/C-@ :一つ前のマーク位置に移動
  • C-x C-x :カーソル位置とマーク位置を入れ替え(と同時にリージョンに設定)

「リージョン」とはマークとカーソルに挟まれている部分です。
リージョンを対象にするコマンドや、リージョン設定中に実行するとリージョン内だけで動くコマンドがあります。

キルとヤンク
「キル」は「切り取り(カット)」の、「ヤンク」は「貼り付け(ペースト)」の Emacs 版です。

  • C-w :リージョンをキル
  • M-w :リージョンの内容を残したままキル(いわゆる「コピー」)
  • C-y :カーソル位置へヤンク(キルしてあった内容を挿入)
  • M-z CHAR :文字 CHAR まで(CHAR も含めて)キル

いろいろ

  • C-x C-n :カーソルのある桁位置を行移動(C-n,C-p)の目標桁に設定
  • C-u C-x C-n :上で設定した目標桁を解除
  • C-x = :カーソル位置の情報(文字コード、文字位置、桁位置)を表示
  • M-( :かっこの対「()」を挿入して、その中にカーソルを移動
  • C-x n n :表示(と編集)をリージョン内のみに限定(ナローイング)
  • C-x w :ナローイングの解除

キーボードマクロ
記録開始から終了までの操作を覚えておいて再利用します。

  • C-x ( :マクロの記録を開始
  • C-x ) :マクロの記録を終了
  • C-x e :最後に記録したマクロを実行
  • M-x insert-kbd-macro ENTER :最後に記録したマクロの内容をカーソル位置に挿入

設定ファイル(.emacs など)にマクロ内容を保存しておく事で、次回以降の Emacs 起動時でも利用できます。
ただし、名前を付けてキーバインドを設定(global-set-key などを利用)しないとダメですが。