Emacs において、「バッファ」とはテキストを編集するための一時的な作業領域のことです。ファイルを開くと、Emacs はその内容をバッファに読み込みます。また、*scratch*バッファのように、ファイルに対応しないバッファを持つこともできます。これらのバッファを効率的に管理することが、スムーズなワークフローの鍵となります。emacs navigation(Emacs のナビゲーション)を習得することで、編集プロセスは大幅にスピードアップします。
バッファ間の切り替え
開いている異なるバッファ間を移動するには、いくつかのコマンドを使用できます。emacs switch buffer(Emacs のバッファ切り替え)の主要なコマンドは、開きたいバッファの名前を尋ねてきます。
C-x b - 名前で別のバッファに切り替える
C-x right arrow - 次のバッファに循環する
C-x left arrow - 前のバッファに循環する
バッファウィンドウの管理
Emacs では、画面(または「フレーム」)を複数のウィンドウに分割することで、複数のバッファを同時に表示できます。
C-x 2 - 現在のウィンドウを垂直に分割する
このコマンドは上下に 2 つのウィンドウを作成し、2 つのバッファを同時に見ることができます。これらのウィンドウ間でカーソルを移動するには、以下を使用します。
C-x o - 他のウィンドウに移動する
分割画面表示を終了し、単一のウィンドウに戻りたい場合は、次のコマンドを使用できます。これにより、現在のウィンドウのみが画面上に残ります。
C-x 1 - 他のすべてのウィンドウを閉じる
バッファのクローズ
ファイルや一時的なバッファでの作業が完了したら、作業領域を整理するためにそれを閉じることができます。
C-x k - 現在のバッファをキル(閉じる)
screenやtmuxのようなターミナルマルチプレクサを使用した経験があれば、これらのバッファ管理コマンドは非常によく似ていると感じるでしょう。