削除とは、テキストを消去してkillリングに保存しないという意味です。テキストを削除するたいていのEmacsコマンドは、1文字または空白文字しか消去しません。
前の文字を削除します。リージョンがアクティブのときは、リージョンのテキストを削除します(delete-backward-char
)。
次の文字を削除します。リージョンがアクティブのときは、リージョンのテキストを削除します(delete-forward-char
)。
次の文字を削除します(delete-char
)。
ポイントの周囲のスペースとタブを削除します(delete-horizontal-space
)。
スペースを1つ残して、ポイントの周囲のスペースとタブを削除します。
スペースを1つ残して、ポイントの周囲のスペースとタブを柔軟性のある方法で削除します(cycle-spacing
)。
現在行の周囲の空行を削除します(delete-blank-lines
)。
行間にある改行をインデントと共に削除して2行を1行にします(delete-indentation
)。
基本的な削除コマンドDEL (delete-backward-char
)、delete
(delete-forward-char
)、C-d
(delete-char
)については既に説明しました。テキストの消去を参照してください。数引数を指定すると、指定した数の文字を削除します。リージョンがアクティブのとき、数引数に1を指定するか省略した場合、DELとdeleteは、リージョンのすべてのテキストを削除します。
他の削除コマンドはスペース、タブ、改行といった空白文字だけを削除します。M-\
(delete-horizontal-space
)はポイント前後にあるすべてのスペースとタブ文字を削除します。プレフィックス引数を指定した場合には、ポイントの前にあるスペースとタブ文字だけを削除します。
M-x just-one-spaceはポイント周辺にあるタブとスペースを削除しますが、前にあったスペースの数に関わらず(たとえ1つも存在しなくても)、ポイントの前にスペースを1つ残します。数引数nを指定した場合には、nが正ならポイントの前にn個のスペースを残し、nが負ならポイントの前に-n個のスペースを残すとともに、スペースとタブに加えて改行も削除します。
just-one-space
のより柔軟なバージョンがコマンドcycle-spacing
(M-SPC)です。このコマンドを連続して繰り返し呼び出すことによって、cycle-spacing-actions
によって定義されている複数のスペースクリーンアップアクションを巡回することができます。デフォルトでは1回目の呼び出しではjust-one-space
と同じ動作、2回目はdelete-horizontal-space
のようにポイント周辺のすべての空白文字を削除、3回目は元の空白文字を削除、以降はこれらのアクションを巡回します。プレフィックス引数とともに呼び出された場合には、引数の値がそれぞれのアクションにたいして与えられます。ユーザーオプションcycle-spacing-actions
にこれら以外のメンバーを含めることができます。詳細についてはこのオプションのドキュメント文字列を参照してください。
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を指定すると、連続する空行は残します。