Next: , Up: Windows


14.1 Emacsウィンドウの概念

各Emacsウィンドウは、いつでも1つのEmacsバッファを表示します。 1つのバッファは複数のウィンドウに表示できます。 その場合、そのテキストの変更は、そのバッファを表示している すべてのウィンドウで表示されます。 しかし、同じバッファを表示している各ウィンドウでは バッファの異なる部分を表示することができます。 なぜなら、各ウィンドウはそれ自身のポイント値を持つからです。

どんなときでも、1つのウィンドウだけが選択されたウィンドウです。 そのウィンドウに表示されているバッファがカレントバッファです。 端末のカーソルは、そのウィンドウのポイント位置を示します。 別の各ウィンドウにもそれぞれ同じようにポイント位置がありますが、 端末にはカーソルは1つしかないので、 それらの位置を示す方法がありません。 Xウィンドウシステムで複数フレームを表示しているときには、 各フレームには、そのフレームで選択されたウィンドウにカーソルがあります。 選択されているフレームのカーソルは塗り潰されている矩形で、 それ以外のフレームのカーソルは中空の矩形です。

ポイントを移動するコマンドは、選択されているEmacsウィンドウのポイント 値に対してだけ影響します。 たとえ同じバッファを表示しているとしても、 他のEmacsウィンドウのポイント値は変更しません。 選択しているウィンドウで選択しているバッファを変更する C-x bといったコマンドでも同様です。 他のウィンドウには少しも影響しません。 しかし、別のウィンドウを選択してそのバッファを切り替える C-x 4 bのようなコマンドもあります。 さらに、(たとえば)C-h fdescribe-function)や C-x C-blist-buffers)などを含む ウィンドウに情報を表示するコマンドは、 選択されているウィンドウに影響することなく、 選択されていないウィンドウのバッファを切り替えます。

複数のウィンドウが同じバッファを表示するとき、 異なるリージョンを持つことができます。 というのは、各ウィンドウは、それぞれ異なるポイント値を持てるからです。 しかしながら、各バッファにはたった1つのマーク位置しかないため、 マークの値はすべて同じになります。

各ウィンドウにはそれ専用のモード行があり、 そこにはウィンドウに表示しているバッファの名前、修正状態、 バッファのメジャーモード、バッファのマイナモードを表示します。 モード行に関して詳しくは、See Mode Line