XEmacsのコマンド・メモ(領域指定)

XEmacs(Emacs)での領域指定(リージョン操作)のメモ。

領域指定による編集の基礎

XEmacs(Emacs)では、文中にマークをセットしてカーソルを移動、カットorコピーしてペーストするのが基本的な流れになる。

★領域の指定方法

文中で、「C-@」もしくは「C-スペース」を押すとマークがセットされる。
マークをセットしたら、カーソルを動かすと領域が選択される。

★選択領域の削除(カットorコピー)

領域を選択したら、「C-w」で選択領域を削除して、キルリング(kill-ring)に削除したテキストが入る。
何度も繰り返せば、キルリングにどんどんテキストが溜っていく。(変数のkill-ring-maxまで)
例えると、回転銃に弾を補充していくイメージ。


文字を削除せずにキルリングに格納したいなら、「C-w」の代わりに「M-w」を使う。

★削除したテキストの取り出し(ペースト)

「C-y」で削除したテキストがペースト(Emacs風に述べるとヤンク)される。
選択される領域は、カーソルの1つ前の文字までになる。この場合、キルリングから最後に格納されたテキストが取り出されるが、続けて「M-y」を押す毎に、取り出されるテキストがキルリングに入ってる順番で入れ替わる。
例えると、ルーレットを回してるイメージ。

その他の操作

★範囲指定
  • M-@ … 1単語選択
  • M-h … 1段落選択
  • C-x C-p … 1ページ選択
  • C-x h … 全体を選択

「M-@」は繰り返し押していくと、単語毎に選択範囲が伸びていく。

★カーソル移動
  • C-x C-x … マークの位置に移動
  • C-x C-@ or C-x C-スペース … グローバルマークの位置に移動

「C-x C-x」は繰り返し押すと、選択位置の最初と最後を行ったり来たりする。


グローバルマークは、主に複数のテキストを編集する時に使う。
バッファの最初にマークした位置がグローバルマークになる。
編集するバッファを(編集するファイル)切り換えて最初にマークしたら、そこがグローバルマークに追加される。
「C-x C-@」を繰り返し押していくと、グローバルマークを新しい方から順にたどっていく。

★キルリングの文字を繋げる

下記の様な文章があって、

トミーズ健が尻出しで謹慎。

「尻出しで」を抜かして、「トミーズ健が謹慎。」を選択したいとする。
こういう場合は、まず「トミーズ健が」を領域選択して、普通に「C-w」か「M-w」を押す。
そして、「謹慎。」を選択して「M-C-w」を押してから「C-w」か「M-w」を押す。
すると、「トミーズ健が謹慎。」と繋げられてキルリングに入るので、このまま「C-y」で繋げられたテキストがペースト(ヤンク)される。