Next: , Previous: Commands for Insertion, Up: Text


31.6 テキストの削除

削除とは、バッファ内のテキストのある部分をキルリング (see The Kill Ring)に保存せずに取りさることです。 削除したテキストはヤンクはできませんが、 アンドゥ機構(see Undo)を使って再度挿入できます。 特別な場合にはキルリングにテキストを保存する削除関数もあります。

すべての削除関数はカレントバッファに作用し、nilの値を返します。

— コマンド: erase-buffer

この関数は、カレントバッファから全テキストを削除して空にする。 バッファが読み出し専用であると、エラーbuffer-read-onlyを通知する。 さもなければ、いっさい確認を取らずにテキストを削除する。 nilを返す。

バッファから多量のテキストを削除すると、通常、 『バッファが縮小した』としてそのバッファの自動保存を禁止する。 しかし、erase-bufferはこうしない。 これまでのテキストと将来のテキストには関連がなく、 これまでのテキストのサイズと比較すべきでないと考えるからである。

— コマンド: delete-region start end

このコマンドは、startendで定義されるカレントバッファの テキストを削除する。 戻り値はnilである。 削除された領域の内側にポイントがあると、 その値は削除後にはstartになる。 さもなければ、マーカと同様にポイントは 周りのテキストに留まるように再配置される。

— コマンド: delete-char count &optional killp

このコマンドは、ポイントの直後の、あるいは、 countが負であるとポイントの直前のcount個の文字を削除する。 killpnil以外であると、 削除した文字をキルリングに保存する。

対話的に呼ばれると、countは数値前置引数であり、 killpは未処理の前置引数である。 つまり、前置引数を指定すると、テキストをキルリングに保存する。 前置引数を指定しないと1文字だけを削除するが、 キルリングには保存しない。

戻り値はつねにnilである。

— コマンド: delete-backward-char count &optional killp

このコマンドは、ポイントの直前の、あるいは、 countが負であるとポイントの直後のcount個の文字を削除する。 killpnil以外であると、 削除した文字をキルリングに保存する。

対話的に呼ばれると、countは数値前置引数であり、 killpは未処理の前置引数である。 つまり、前置引数を指定すると、テキストをキルリングに保存する。 前置引数を指定しないと1文字だけを削除するが、 キルリングには保存しない。

戻り値はつねにnilである。

— コマンド: backward-delete-char-untabify count &optional killp

このコマンドは、タブを空白にかえながら後向きにcount個の文字を削除する。 つぎに削除する文字がタブであると、まずタブを配置を保つだけの等価な個数の 空白に置換してから、タブのかわりにそれらの空白を削除する。 killpnil以外であると、このコマンドは 削除した文字をキルリングに保存する。

countが正である場合に限って、タブを空白に変換する。 countが負であると、ポイントのうしろのちょうど −count個の文字を削除する。

対話的に呼ばれると、countは数値前置引数であり、 killpは未処理の前置引数である。 つまり、前置引数を指定すると、テキストをキルリングに保存する。 前置引数を指定しないと1文字だけを削除するが、 キルリングには保存しない。

戻り値はつねにnilである。

— User Option: backward-delete-char-untabify-method

このオプションは、backward-delete-char-untabifyでの 白文字の扱い方を指定する。 可能な値は、タブを空白に変換してから空白を削除することを意味する デフォルトのuntabify、 1回の呼び出しでポイントのまえにある白文字をすべて削除することを意味する hungry、 白文字に対して特別なことをしないことを意味するnilである。