ポイントより前の文字、またはアクティブな場合はその領域を削除します (delete-backward-char)。
ポイント以降の文字または書記素クラスター、あるいはアクティブな場合はその領域(delete-forward-char)を削除します。
ドット以降の文字 (delete-char) を削除します。
行末まで削除 (kill-line)。
次の単語の末尾 (kill-word) まで前方へキルする。
直前の単語の先頭 (backward-kill-word) まで遡って削除する。
DEL (delete-backward-char)
コマンドは、ポイント直前の文字を削除し、カーソルとそれ以降の文字を後方に移動させます。ポイントが行頭にあった場合、直前の改行が削除され、この行が前の行と連結されます。ポイント直前の文字が、それより前の1つ以上の文字と合成され、単一の表示単位としてそれらと共に表示される場合(すなわち、シーケンス全体を表すいわゆる書記素クラスターである場合)、DEL
は合成されたシーケンスから単一の文字のみを削除します。これにより、場合によっては画面上のテキストの表示態様が著しく変化することがあります。(プログラミングモードで通常
DEL にバインドされている backward-delete-char-untabify コマンドも同様の動作をします。プログラミング言語向けメジャーモード
を参照してください。)これは、ポイント以降の合成された文字シーケンス全体を削除する delete-char-forward などのコマンドとは対照的です(後述)。
合成文字のシーケンスが長い場合、DEL
を使って一つずつ削除するのは不便なことがあります。そのような場合は、オプション composition-break-at-point を nil 以外の値にカスタマイズすることで、Emacs
に合成結果を表示させるのではなく、ポイント周辺の文字を個別に表示させることができます。これにより、合成シーケンスの内部でポイントを移動させ、後続の文字を削除(して後で再挿入)することなく、その部分の文字を削除できるため、合成文字のシーケンスをより便利に編集できるようになります。
リージョンがアクティブな場合、DEL は1文字を削除するのではなく、リージョン内のテキストを削除します。リージョンの説明については、マークとリージョンを参照してください。
ほとんどのキーボードでは、DEL は BACKSPACE と表記されていますが、本マニュアルではこれを DEL と呼びます。(DEL と Delete キーを混同しないでください。Delete については後ほど説明します。)一部のテキスト端末では、Emacs が DEL キーを正しく認識しない場合があります。この問題が発生した場合は、DEL で削除できない場合 を参照してください。
Delete (delete-forward-char)
コマンドは逆方向に削除を行います。つまり、ポイントの次の文字、すなわちカーソル位置の文字を削除します。ポイントが行末にあった場合、後続の行がこの行に結合されます。DEL
と同様に、リージョンが有効な場合はリージョン内のテキストを削除します(マークとリージョンを参照)。ポイントの次の文字が後続の文字と合成されている場合、Delete はその合成シーケンス全体を一度に削除します。これは、たとえ合成されていても常に単一の文字を削除する
DEL とは対照的です。composition-break-at-point が nil でない場合、Delete
はポイントから合成シーケンスの末尾までのすべての合成文字を削除します。ポイントをシーケンス内に移動させた場合、削除されるのはシーケンスの一部のみとなることがあります。
C-d (delete-char) は、Delete と同様にポイント以降の文字を削除しますが、リージョンがアクティブであるかどうかは問いません。
上記の削除コマンドに関する詳細については、削除を参照してください。
C-k (kill-line)
は、1行ずつ消去(削除)します。行の先頭または途中に C-k
と入力すると、その行の末尾までのすべてのテキストが削除されます。行の末尾に C-k
と入力すると、その行が次の行と結合されます。
C-kおよび関連コマンドの詳細については、テキストの削除と移動を参照してください。