Next: , Up: Deletion and Killing   [Contents][Index]


12.1.1 削除

削除とは、テキストを消去してkillリングに保存しないという意味です。テキストを削除するたいていのEmacsコマンドは、1文字または空白文字しか消去しません。

DEL
BACKSPACE

前の文字を削除します。リージョンがアクティブのときは、リージョンのテキストを削除します(delete-backward-char)。

Delete

次の文字を削除します。リージョンがアクティブのときは、リージョンのテキストを削除します(delete-forward-char)。

C-d

次の文字を削除します(delete-char)。

M-\

ポイントの周囲のスペースとタブを削除します(delete-horizontal-space)。

M-SPC

スペースを1つ残して、ポイントの周囲のスペースとタブを削除します(just-one-space)。

C-x C-o

現在行の周囲の空行を削除します(delete-blank-lines)。

M-^

行間にある改行をインデントと共に削除して2行を1行にします(delete-indentation)。

基本的な削除コマンドDEL (delete-backward-char)、delete (delete-forward-char)、C-d (delete-char)については既に説明しました。Erasingを参照してください。数引数を指定すると、指定した数の文字を削除します。リージョンがアクティブのとき、数引数に1を指定するか省略した場合は、リージョンのすべてのテキストを削除します。

他の削除コマンドは、空白文字(スペース、タブ、改行)だけを削除するものです。M-\ (delete-horizontal-space)は、ポイントの前後にあるすべてのスペースとタブを削除します。プレフィクス引数を指定すると、ポイントの前にあるスペースとタブだけを削除します。M-SPC (just-one-space)も同様ですが、前にスペースが何個あるかに関係なく、ポイントの前に1つのスペースを残します。数引数nを指定すると、nが正のときはポイントの前に、n個のスペースを残します。nが負の場合は、スペースとタブに加えて改行も削除し、ポイントの前に-n個のスペースを残します。コマンドcycle-spacingは、just-one-spaceのようなコマンドで、よりフレキシブルな動作をします。これは連続で呼び出すと異なる処理を行います。1番目の呼び出しではjust-one-spaceと同様の処理をし、2番目の呼び出しではすべての空白文字を削除し、3番目の呼び出しでは元の空白文字を復元します。

C-x C-o (delete-blank-lines)は、現在行の下にあるすべての空行を削除します。現在行が空行のときは、現在行の上にあるすべての空行も削除します(空行を1つ、つまり現在行は残します)。単独の空行で実行するとその行を削除します。

M-^ (delete-indentation)は、改行と周囲のスペース(通常1つのスペースを残す)を削除することにより、現在行とその上の行を結合します。M-^を参照してください。

コマンドdelete-duplicate-linesは、リージョン内の重複した行を検索して、それぞれ1行を残して削除します。通常は重複した行の最初の行を残しますが、プレフィクス引数C-uを指定すると、最後の行を残します。プレフィクス引数C-u C-uを指定すると、隣接した重複行だけを検索します。これは行がソート済みのとき効果的です。プレフィクス引数C-u C-u C-uを指定すると、連続する空行は残します。