コンピュータリテラシー演習目次
Emacsの使い方目次

削除,コピー,ペースト

mizutani@edu.tuis.ac.jp
目次
削除
行末
行末まで一括削除
削除した文字列のペースト
領域指定
領域の削除
領域内容のコピー

目次

削除

Emacsでは編集作業を効率よく行うために,次の2つの一括削除の方法が与えられている. 大切なことは,こうして一括削除された内容は完全に放棄されるのではなく,メモリに蓄積されており,これをカーソル位置に張り戻る(貼り付ける)ことが可能である. これをペースト(paste, 張り付け)と呼ぶ.

目次

行末

行末とは改行キー(Enterキー)を押す--厳密には改行文字を入力--ことによって,「次の行」が始まる直前の位置である. つまり,Emacsにおける論理的一行とは行頭から行末までの文字列のことである.
論理的一行が長くなって,Emacsウィンドウの幅を超えた場合にEmacsは自動的に文字列を折り返して結果的に複数行に表示するが,それでもその行は論理的には一行である(折り返しであることがわかるようにEmacsは記号『//』をウィンドウの右端に表示する).

目次

行末まで一括削除

■のあるカーソル位置かた行末まで一括して削除するには C-k を押す.

コマンド機能
C-kカーソル位置から行末まで削除

目次

削除した文字列のペースト

C-k によって行末まで削除した文字列はメモリに記憶されている. ■があるカーソル位置にこのメモリ内容を貼り付ける(ペースト)するには C-yを押す. カーソルを行頭に移動して C-k で削除することは,一行をそっくり削除することになることに注意.

コマンド機能
C-yカーソル位置にメモリ内容をペースト

行を削除し,直ちにC-yでペーストするとその行は回復される. この場合でもメモリには削除した文字列が記憶されている. しかがって,カーソルを適当な場所に移動してから,C-yでペーストすると,結果的に削除した行がカーソル位置にコピーされたことになる.

行を(途中で他の作業をおこなわずに)連続的に削除した場合,カーソル位置にC-y でペーストした場合には,連続削除した行全部がペーストされる. この場合でも,行を連続削除し直ちにC-yでペーストして,削除行群を回復してから,カーソル位置を適当に移動してから C-y を押すと,結果的にコピーしたことになる.

ただし,ある程度まとまった指定領域を削除したりコピーするには,次の領域を指定して削除・コピーする方法を使う.

目次

領域指定

領域を指定するのは,まず領域開始地点をマークする. マークするには,マークしたい位置に適すとカーソルを移動してから,C-spc(Ctrlキーを押しながらSpaceキー)を押す.

マークされると,ミニバッファに次のようにその旨メッセージが表示される.

------------------------------------
Mark set
------------------------------------

コマンド機能
C-spcカーソル位置をマークする

目次

領域の削除

マークした地点から現在■のカーソルのある地点までの領域(これをリージョンと呼ぶ)を一括削除することができる.

マークした地点から現在■のカーソルのある地点までのリージョンを削除するには C-wを押す.

コマンド機能
C-wマーク位置とカーソル位置で決まるリージョンを削除

同様に,削除領域のないようはメモリに記憶されているので,C-yで削除内容をペーストすることができる.

コマンド機能
C-yカーソル位置にメモリ内容をペースト

リージョンを削除して直ちにC-yで領域を回復してから,カーソルを適当に移動させてから C-y でペーストすると,結果的に削除領域を別の場所にコピーしたことになる. しかし,領域内容を別の場所にコピーするのであれば,次の領域内容のコピーによる方法がある.

目次

領域内容のコピー

マークした地点から現在■のカーソルのある地点までのリージョン内容をメモリに記憶することができる.

マークした地点から現在■のカーソルのある地点までのリージョン内容をメモリにコピーするには M-w(ESCキーを打った後にw)を押す.

コマンド機能
M-wマーク位置とカーソル位置で決まるリージョン内容を記憶

この場合も C-y でその内容をペーストすることができる.

コマンド機能
C-yカーソル位置にメモリ内容をペースト

目次

Emacsの使い方目次
コンピュータリテラシー演習目次


mizutani@edu.tuis.ac.jp