logo
 
cpacer

3.1 複数ファイルの編集

Emacsでは複数のファイルを同時に開き, 並行して編集できます.

3.1.1 バッファ

``バッファ''とはファイルを読み込んだ作業領域のことです. 図[*]のように ファイルをC-x C-fで開くと,ウィンドウにファイルの内容が表示さ れ,編集を進められます.バッファはファイルそのものではあり ません. すでにファイルがバッファに開かれている ときにC-x C-fで異なるファイルを開くと, 新しいバッファにそのファイルが読み込まれ, 1つのEmacsで複数のファイルを同時に扱えます.

複数のファイルを編集していく際,個々のバッファを操作するために それぞれを識別する必要があります. バッファには``バッファ名''という個別の名称がつけられます. ファイルを開く際に特に指定をしない場合,バッファ名にはファイル名が 指定されます. 異なるディレクトリにある同じ名前のファイルを開いた場合, バッファ名の重複を避けるため, 後から開いたバッファ名はファイル名の最後に <2>が自動的につけられ,識別できるようになっています.

図: バッファの表示

3.1.2 バッファの表示

Emacsでのファイルの作成および編集作業は,すべてウィンドウに表示されてい るバッファで行われます. バッファはウィンドウに表示しないと編集できないため, 複数のファイルを編集する場合には表示するバッファを切り替える必要があります.

次に`memo.txt'を先に編集した後に, `report.txt'というファイルを 読み込んでいる場合の例を示します.

3.1.2.1 バッファ切り替え -- (C-x b)

編集するバッファを切り替えるにはC-x bを入力します.

Switch to buffer: (default memo.txt) _

続けて表示したいバッファ名を入力し,<RET>を押します. ここでは`default'としてmemo.txtが入力されている ため,何も設定しないで<RET>を押すだけでバッファを切り替えられます.

3.1.2.2 ウィンドウの複数表示 -- (C-x 5 2)

Emacsで,複数のウィンドウを 表示させたいときにはC-x 5 2を入力します.

2つ目のウィンドウを表示させたときには1つ目と同じバッファが 表示されています. マウスカーソルを移動させ,どちらかのバッファを切り替えると, 2つの違うバッファを2つのウィンドウに表示させられます.

増やしたウィンドウを1つ消去するには,消去したい ウィンドウにマウスカーソルを移動させて,C-x 5 0を入力します. ウィンドウを消去してもバッファは残っています.

しかし,これらは同一のEmacsなので,1つのウィンドウにおいて Emacsの終了C-x C-cを入力すると全部のウィンドウが消えます.

3.1.2.3 ウィンドウの分割 -- (C-x 2,C-x 3)

ウィンドウを上下に分割するにはC-x 2を入力しま す(図[*]). 左右に分割する場合にはC-x 3を入力しま す(図[*]). カーソルは編集対象のバッファに表示されます. カーソルを移動させたいときは,C-x oを入力するか, マウスで左クリックします.


ウィンドウの分割(上下)

ウィンドウの分割(左右)

Emacsでヘルプなどを表示する場合やMewでメールを読む場合には 自動的にウィンドウが分割されます.

3.1.2.4 ウィンドウの分割の解除 -- (C-x 1,C-x 0)

カーソルのあるウィンドウだけを画面いっぱいに再表示したい場合は, C-x 1を入力します.

反対にカーソルのあるウィンドウを消去したいときは,C-x 0を入力 します. ウィンドウの操作に関わらず,バッファは残っています.

3.1.3 バッファの削除 -- (C-x k)

バッファを削除したいときはC-x kを入力します. エコーエリアに次のように表示されます.

Kill buffer: (default report.txt) _

続けて削除したいバッファ名を指定します. ここでは`default'として`report.txt'が入力されている ため,<RET>を押すだけで`report.txt'のバッファを削除できます.

3.1.4 ファイルの挿入 -- (C-x i)

現在作業中のバッファに,他のファイルの内容を挿入するにはC-x iと入力します. エコーエリアに次のように表示されます.

Insert file: ~/_

ここでファイル名を入力して<RET>を押すと,バッファの中のカーソル 位置に,指定したファイルの内容が挿入できます.