Next: , Previous: , Up: サイドウィンドウ   [Contents][Index]


29.17.2 サイドウィンドウのオプションと関数

以下のオプションはサイドウィンドウ配置において更なる制御を提供します。

User Option: window-sides-vertical

nilならフレームの左右のサイドウィンドウはフレームの全高さを占有する。それ以外ならフレームの上下のサイドウィンドウはフレームの全幅を占有する。

User Option: window-sides-slots

このオプションはフレーム各サイドのサイドウィンドウの最大数を指定する。値は各フレームのサイドウィンドウのスロット数を左辺、上辺、右辺、下辺の順で指定する4要素のリスト。要素が数値なら対応するサイドで表示できる最大のウィンドウ数を意味する。要素がnilならそのサイドのスロット数に制限がないことを意味する。

指定された値のいずれかが0なら、対応するサイドへのウィンドウは作成できない。この場合にはdisplay-buffer-in-side-windowはエラーをシグナルしないがnilをリターンする。指定した値が単にサイドウィンドウの追加作成を禁止する場合には、そのサイド上にあるもっとも適したウィンドウが再利用されて、それに応じてウィンドウのwindow-slotも変更される。

User Option: window-sides-reversed

このオプションは上や下のサイドウィンドウが逆順で表示されるかどうかを指定する。nilならフレームの上や下にあるサイドウィンドウはスロット値の増加にともない常に左から右に描画される。tなら描画順は反転してフレームの上や下にあるサイドウィンドウはスロット値の増加にともない右から左に描画される。

これがbidiなら描画順はフレームのメインウィンドウ内でもっとも最近選択されたウィンドウに表示されるバッファーのbidi-paragraph-direction (双方向テキストの表示を参照)の値がright-to-leftの場合のみ逆順になる。このウィンドウを見つけるのが困難なときがあるかもしれないので、別のウィンドウ選択時に意図せず描画順が変更されることを避けるために経験則が使用される。

フレームの左右にあるサイドウィンドウのレイアウトは、この変数の値から影響を受けない。

以下の関数はサイドウィンドウをもつフレームのメインウィンドウをリターンします。

Function: window-main-window &optional frame

この関数は指定したframeのメインウィンドウをリターンする。オプション引数frameは生きたフレームでなければならず、デフォルトは選択されたフレーム。

frameにサイドウィンドウがなければframeのルートウィンドウをリターンする。それ以外ならframe上にある他のすべての非サイドウィンドウの系統元であるようなサイドウィンドウではない内部ウィンドウ、またはframeの単一の生きた非サイドウィンドウのいずれか。フレームのメインウィンドウはdelete-windowで削除できないことに注意。

以下のコマンドは指定したフレーム上にあるすべてのサイドウィンドウの外観を手軽にトグル(toggle: オンとオフを切り替える)できます。

Command: window-toggle-side-windows &optional frame

この関数は指定されたframeのサイドウィンドウをトグルする。オプション引数frameは生きたフレームでなければならずデフォルトは選択されたframe

frameに少なくとも1つのサイドウィンドウがあれば、このコマンドはframeのルートウィンドウの状態をframewindow-stateパラメーターに保存して、その後にframeのサイドウィンドウをすべて削除する。

frameにサイドウィンドウがなく、しかしwindow-stateパラメーターがあれば、このコマンドはパラメーターの値を使用してframeのメインウィンドウを残しつつframeのサイドウィンドウをリストアする。

frameにサイドウィンドウがなく保存した状態も見つからなければエラーをシグナルする。