他のウィンドウを選択するためにコマンドC-x o
(other-window
)を使う際には、生きたウィンドウを特定の順番で巡回します。与えられた任意のウィンドウ構成にたいして、この順序は決して変更されません。これはウィンドウのサイクル順序(cyclic
ordering of windows)と呼ばれます。
この順序は各フレームのリーフノードである生きたウィンドウを取得するために、ツリーを深さ優先で走査することにより決定されます(ウィンドウとフレームを参照)。ミニバッファーがアクティブならミニバッファーウィンドウも含まれます。この順序は巡回的(cyclic)なので、この順序の最後のウィンドウの次には最初のウィンドウが配置されます。
この関数はウィンドウのサイクル順でwindowの次の生きたウィンドウをリターンする。windowは生きたウィンドウであること。省略またはnil
の場合のデフォルトは選択されたウィンドウ。
オプション引数minibufはサイクル順にミニバッファーウィンドウを含めるべきかどうかを指定する。通常はminibufがnil
のときは、ミニバッファーウィンドウがカレントでアクティブな場合のみミニバッファーウィンドウが含まれる。これはC-x oの振る舞いと合致する(ミニバッファーが使用されている限りミニバッファーウィンドウはアクティブであることに注意。ミニバッファーを参照のこと)。
minibufがt
なら、サイクル順にはすべてのミニバッファーウィンドウが含まれる。minibufがt
とnil
のいずれとも異なる場合には、たとえアクティブであってもミニバッファーウィンドウは含まれない。
オプション引数all-framesは考慮にするフレームを指定する:
nil
はwindowのフレーム上にあるウィンドウを考慮することを意味する。(minibuf引数で指定されたことにより)ミニバッファーウィンドウが考慮される場合には、ミニバッファーウィンドウを共有するフレームも考慮される。
t
はすべての既存フレーム上のウィンドウを考慮することを意味する。
visible
はすべての可視フレーム上のウィンドウを考慮することを意味する。
複数のフレームが考慮される場合は、すべての生きたフレームのリストの順にしたがってそれらのフレームを順に追加することによりサイクル順を取得する(すべてのフレームを探すを参照)。
この関数はウィンドウのサイクル順においてwindowの前に位置する生きたウィンドウをリターンする。その他の引数はnext-window
の場合と同様に処理される。
この関数はウィンドウのサイクル順において、選択されたウィンドウからcount番目に位置する生きたウィンドウをリターンする。countが正の数ならcount個のウィンドウを前方にスキップし、負の数なら−count個のウィンドウを後方にスキップする。countが0なら選択されたウィンドウを単に再選択する.インタラクティブに呼び出された場合には、countはプレフィックス数引数。
オプション引数all-framesは、nil
のminibuf引数を指定したときのnext-window
の場合と同じ意味をもつ。
この関数はignore-window-parameters
がnil
なら非nil
のウィンドウパラメーターno-other-window
をもつウィンドウを選択しない。
選択されたウィンドウのother-window
パラメーターが関数でignore-window-parameters
がnil
なら、この関数の通常の処理のかわりに、other-window
パラメーターの関数が引数countとall-framesで呼び出される。
この関数は生きたウィンドウそれぞれにたいしてウィンドウを引数に関数funを呼び出す。
これはウィンドウのサイクル順にしたがう。オプション引数minibufとall-framesには、含まれるウィンドウセットを指定する。これらはnext-window
の引数の場合と同じ意味をもつ。all-framesがフレームを指定する場合には、最初に処理されるのはそのフレームの最初のウィンドウ(frame-first-window
がリターンするウィンドウ)であり、選択されたウィンドウである必要はない。
funがウィンドウの分割や削除によりウィンドウ構成を変更する場合でも、処理するウィンドウセットは初回のfun呼び出しに先立ち決定されるため変更されない。
この関数は選択されたウィンドウが唯一の生きたウィンドウならt
、それ以外はnil
をリターンする。
ミニバッファーウィンドウがアクティブなら、ミニバッファーウィンドウは通常は考慮される(そのためこの関数はnil
をリターンする)。しかしオプション引数no-miniが非nil
なら、たとえアクティブであってもミニバッファーウィンドウは無視される。オプション引数all-framesはnext-window
の場合と同じ意味をもつ。
以下は何らかの条件を満足するウィンドウを、それらを選択することなくリターンする関数です:
この関数は発見的に最近もっとも使用されていない生きたウィンドウをリターンする。最近もっとも使用されていないウィンドウ(least
recently used
window)とは最近選択されたのがもっとも少ない、すなわち他のすべての生きたウィンドウより使用時間が少ないウィンドウのこと。オプション引数all-framesはnext-window
の場合と同じ意味をもつ。
フル幅のウィンドウが存在する場合には、それらのウィンドウだけが考慮される。ミニバッファーが候補になることは決してない。オプション引数dedicatedがnil
なら、専用バッファー(専用のウィンドウを参照)が候補になることは決してない。唯一の候補が選択されたウィンドウである場合以外は選択されたウィンドウを決してリターンしない。しかしオプション引数not-selectedが非nil
なら、そのような場合でもこの関数はnil
をリターンする。オプション引数no-otherが非nil
なら、no-other-window
パラメーターが非nil
のウィンドウをリターンすることは決してないことを意味する。
この関数はget-lru-window
と同様だが、かわりにもっとも最近使用されたウィンドウをリターンする。最近もっとも使用されたウィンドウ(most
recently used
window)とは最近選択されたのがもっとも多い、すなわち他のすべての生きたウィンドウより使用時間が多いウィンドウのこと。引数の意味はget-lru-window
と同様。
もっとも最近使用されたウィンドウは実際には常に選択されたウィンドウになるので、非nil
のnot-selected引数でこの関数を呼び出すことには通常は道理がある。
この関数はもっとも広い領域(高さ掛ける幅)のウィンドウをリターンする。同サイズの候補ウィンドウが2つある場合には、ウィンドウのサイクル順で選択されたウィンドウから数えて最初にあるウィンドウを優先する。引数の意味はget-lru-window
と同じ。
この関数はウィンドウのサイクル順内の各ウィンドウにたいして、そのウィンドウを引数として関数predicateを順に呼び出す。いずれかのウィンドウにたいしてpredicateが非nil
をリターンすると、この関数は処理を停止してそのウィンドウをリターンする。そのようなウィンドウが見つからなければリターン値はdefault
(これのデフォルトはnil
)。
オプション引数
minibufとall-framesは検索するウィンドウを指定する。意味はnext-window
の場合と同様。