テキストのコピーや移動は,普通,削除とヤンクによって行ないます.しかし 1つのまとまったテキストを多数の場所にコピーしたり,多くの場所にわかれた テキストを1箇所にまとめてコピーするのに便利な方法もあります.
多くの場所に分散したテキストをバッファやファイルに蓄積できます.これら のコマンドをここで説明します.テキストを記憶したり蓄積するには,Emacsの レジスタも使えます.See section レジスタ.
append-to-buffer
).
テキストをバッファに蓄積するには,C-x a buffername
(append-to-buffer
)のコマンドを使います.これは,バッファ
buffernameのポイントの位置に,リージョンのコピーを挿入します.その
名前のバッファがないときには,作成されます.もし編集に使っていたバッファ
にテキストを加えようとしたら,ポイントがたまたまあった場所,おそらくバッ
ファの中ほどに加えられるでしょう.
バッファのポイントは,コピーしたテキストの終りにあります.そのため C-x aを続けて使うと,コピーした順序でバッファにテキストが蓄積され ます.厳密にはC-x aは,バッファのすでに存在しているテキストに付加 するとは限りません.しかし,C-x aだけを使ってバッファを変更してい るなら,常にテキストを付加します.なぜならポイントはいつもバッファの終り にあるからです.
M-x prepend-to-bufferはC-x aとよく似ていますが,指定したバッ ファのポイントを挿入したテキストの前に置きます.よって続けてこのコマンド を使うと,テキストは逆順に並びます.M-x copy-to-bufferも同じですが, 挿入する前に指定したバッファのテキストをすべて消します.よってバッファに は新たにコピーしたテキストだけが残ることになります.
M-x insert-bufferを使ってバッファに蓄積したテキストを取り込むこ とができます.この場合も引数としてバッファ名buffernameが必要です. このバッファbuffernameのテキストのコピーを選択されたバッファに挿入 します.さもなければ,そのバッファを選択してそこから削除コマンドや C-x aを使ってテキストをもってくることもできます.バッファの成り立 ちについてはSee section マルチプルバッファの使い方.
テキストをEmacs(のバッファ)に蓄積する代わりに, M-x append-to-fileを使ってテキストを直接ファイルに付加できます.こ れはファイル名の引数を使います.リージョンのテキストを指定したファイルの 終りに付加します.ファイルはディスク上で直ちに変更されます.このコマンド では通常Emacsに読み込んでいないファイルを使います.Emacsに読み込んでいる ファイルを使うと混乱します.なぜなら,ファイル自体は変わってもそのファイ ルに対するEmacs内のテキストは変わらないからです.