GNU Emacs 32.0.50 (9008bf64c3) のマニュアルを PLaMo 翻訳で機械翻訳したものです。誤訳を含むことがあります。原文: https://www.gnu.org/software/emacs/manual/html_node/emacs/Appending-Kills.html ・ emacs-doc.conao3.com

14.2.3 キルの追加

通常、各キルコマンドはキルリングに新しいエントリを追加します。しかし、2つ以上のキルコマンドが連続して入力されると、そのテキストが1つのエントリにまとめられます。そのため、単一の C-y が、キルされる前と同様に、すべてのテキストをひとまとまりとしてヤンクします。

したがって、テキストをひとまとまりとして抜き出したい場合、一度のコマンドですべてを消去する必要はありません。すべて消去し終えるまで、一行ずつ、あるいは単語ずつ消去し続けても、後で一度にすべて復元することができます。

ポイントから前方へキルするコマンドは、直前にキルされたテキストの末尾に追記されます。ポイントから後方へキルするコマンドは、先頭にテキストを追記します。これにより、前方と後方のキルコマンドが混在しても、キルされたすべてのテキストが並べ替えられることなく一つのエントリにまとめられます。数値引数によって、キルの追記順序が途切れることはありません。例えば、バッファに次のようなテキストが含まれているとします。

This is a line ∗of sample text.

∗ で示される点。M-d M-DEL M-d M-DEL と入力して前方と後方に交互にキルすると、キルリングの1つのエントリとして ‘a line of sample’ が、バッファに ‘This is  text.’ が残ります。(‘is’ と ‘text’ の間にある2つのスペースに注意してください。これは M-SPC や M-q で解消できます。)

同じテキストを削除する別の方法は、M-b M-b で2単語分戻り、次に C-u M-d で前方の4単語すべてを削除することです。これにより、バッファとキルリングでまったく同じ結果が得られます。M-f M-f C-u M-DEL も同様に、すべて後方に向かって同じテキストを削除しますが、ここでも結果は同じです。キルリングのエントリにあるテキストは、削除前のバッファにあったときと常に同じ順序になります。

キルコマンドが、直前のキルコマンドから(数値引数だけでなく)他のコマンドによって隔てられている場合、キルリングに新しいエントリが作成されます。ただし、その直前に C-M-w (append-next-kill) と入力することで、直前のキル済みテキストと強制的に結合させることができます。C-M-w は、それに続くコマンドがキルコマンドである場合、そのキルを直前のキルの連続の一部として扱うよう指示します。通常どおり、コマンドが前方へキルする場合は直前のキル済みテキストの末尾に、後方へキルする場合は先頭に追記されます。このようにして、離れた複数のテキストをキルし、それらを蓄積して一箇所にヤンクし戻すことができます。

M-w (kill-ring-save) に続くキルコマンドは、M-w がキルリングにコピーしたテキストに追記されません。