Next: Windows and Frames, Up: Windows [Contents][Index]
ウィンドウ(window)とは任意のバッファーを表示するために使用されるスクリーン領域です。Emacs LispではウィンドウはスペシャルLispオブジェクトとして表現されます。
ウィンドウはフレームへとグループ化されます(Framesを参照)。それぞれのフレームは最低でも1つのウィンドウを含みます。ユーザーは複数のバッファーを一度に閲覧するために、それを複数のオーバーラップしないウィンドウに分割することができます。Lispプログラムはさまざまな目的にたいして複数のウィンドウを使用できます。たとえばRmailでは1つのウィンドウでメッセージタイトル、もう一方のウィンドウで選択したメッセージのコンテンツを閲覧できます。
Emacsはグラフィカルなデスクトップ環境やX Window Systemのようなウィンドウシステムとは異なる意味で“ウィンドウ(window)”という単語を使用します。EmacsがX上で実行されているときはXのグラフィカルなXウィンドウは、Emacsでの(1つ以上のEmacsウィンドウを含んだ)フレームになります。Emacsがテキスト端末上で実行されているときはフレームが端末スクリーン全体を占有します。
Xのウィンドウとは異なり、Emacsのウィンドウはタイル表示(tiled)されるので、フレームの領域内でオーバーラップされることは決してありません。あるウィンドウが作成、リサイズ、削除されるとき変更されたウィンドウスペースの変更は各ウィンドウの調整により取得・譲与されるので、そのフレームの総領域に変化はありません。
この関数はobjectがウィンドウ(バッファーの表示有無に関わらず)ならt
、それ以外はnil
をリターンする。
生きたウィンドウ(live window)とは、あるフレーム内で実際にバッファーを表示しているウィンドウのことです。
この関数はobjectが生きたウィンドウならt
、それ以外はnil
をリターンする。生きたウィンドウとはバッファーを表示するウィンドウのこと。
各フレーム内のウィンドウはウィンドウツリー(window tree)内へと組織化されます。Windows and Framesを参照してください。それぞれのウィンドウツリーのリーフノード(leaf nodes)は、実際にバッファーを表示している生きたウィンドウです。ウィンドウツリーの内部ノード(internal node)は内部ウィンドウ(internal windows)と呼ばれ、これらは生きたウィンドウではありません。
有効なウィンドウ(valid window)とは、生きたウィンドウか内部ウィンドウのいずれかです。有効なウィンドウにたいしては、それを削除(delete)、すなわちそのウィンドウのフレームから削除することができます(Deleting Windowsを参照)。その場合、それは有効なウィンドウではなくなりますが、それを表すLispオブジェクトは依然として他のLispオブジェクトから参照されたままかもしれません。削除されたウィンドウは保存されたウィンドウ設定(window configuration)をリストアすることにより再び有効にすることができます(Window Configurationsを参照)。
window-valid-p
により、削除されたウィンドウから有効なウィンドウを区別できます。
この関数はobjectが生きたウィンドウかウィンドウツリー内の内部ウィンドウならt
をリターンする。それ以外(objectが削除されたウィンドウの場合も含む)はnil
をリターンする。
それぞれのフレーム内において、常にただ1つのEmacsウィンドウがそのフレームで選択されている(selected within the
frame)ウィンドウとして指定されます。選択されたフレームにたいして、そのウィンドウは選択されたウィンドウ(selected
window)と呼ばれます。選択されたウィンドウは編集のほとんどが行われるウィンドウであり、カーソルはその選択されたウィンドウに表示されます(Cursor Parametersを参照)。選択されたウィンドウのバッファーは、通常はset-buffer
が使用された場合を除きカレントバッファーでもあります(Current Bufferを参照)。選択されていないフレームでは、そのフレームが選択されたときはそのフレームで選択されていたウィンドウが選択されたウィンドウになります。Selecting Windowsを参照してください。
この関数は選択されたウィンドウをリターンする(これは常に生きたウィンドウ)。