Next: , Previous: , Up: 複数ウィンドウ   [Contents][Index]


21.7 ウィンドウ処理のための便利な機能

Winnerモードはウィンドウの構成変更(たとえばフレームのウィンドウがどのように分割されたか)を記録するグローバルマイナーモードなのでそれらをundoできます。WinnerモードはM-x winner-mode、または変数winner-modeをカスタマイズすることにより切り替えることができます。このモードが有効な場合には、C-c left (winner-undo)は左のウィンドウの構成変更をundoします。undoしてから気が変わったら、C-c right (M-x winner-redo)を使ってundoした変更をredo(再実行)することができます。WinnerモードによるC-c leftC-c rightのバインドを抑制するために、変数winner-dont-bind-my-keysを非nil値にカスタマイズできます。デフォルトではWinnerモードはフレームごとに最大200個のウィンドウ構成を格納しますが、変数winner-ring-sizeにより変更できます。Winnerモードにリストアさせたくないようなウィンドウをもつバッファーがある場合には、それらの名前を変数winner-boring-buffersか正規表現winner-boring-buffers-regexpに追加しください。

Followモード(M-x follow-mode)は、複数のウィンドウの同じバッファーを同期するので、バッファーの隣接した部分が常に表示されます。Followモードを参照してください。

Windmoveパッケージはフレーム内で隣接するウィンドウに方向的に移動するコマンドを定義します。M-x windmove-rightはカレントで選択されたウィンドウのすぐ右のウィンドウを選択して、他の方向(left、up、down)にたいしても同じように機能します。windmove-default-keybindingsにより、これらのコマンドはS-right等にバインドされます。これを行うことにより、それらのキーによるシフト選択は無効になります(シフト選択を参照)。ウィンドウを方向的に選択するコマンドにたいしても同じ方法でキーバインディングを定義できます。次のコマンドが表示しようとするバッファー用のウィンドウをどの方向に表示するか指定するコマンドの定義にはwindmove-display-default-keybindingsを使用できます。方向的にウィンドウを削除するコマンド用にキーバインディングを定義するにはwindmove-delete-default-keybindings、選択されたウィンドウと指定方向のウィンドウのコンテンツの入れ替えるコマンド用のキーバインディング定義にはwindmove-swap-states-default-keybindingsがあります。

コマンドM-x compare-windowsは、異なるウィンドウに表示されたテキストを比較します。ファイルの比較を参照してください。

Scroll Allモード(M-x scroll-all-mode)は、スクロールおよびポイント移動コマンドが、表示されているすべてのウィンドウに適用されるグローバルマイナーモードです。