Cx oコマンド(次のウィンドウ)に、現在のフレームのウィンドウだけでなく、他のフレームのウィンドウも含めたいのですが。
誰かがこれをやってのける方法を知っていますか?使用すべき別のコマンドはありますか?これを簡単に行うことができるelispマジックのスニペットはありますか?
C-x o
ですother-window
。他のフレームに移動するC-x 5 o
には、other-frame
.
差出人C-h f next-window
:
(次のウィンドウとオプションのWINDOW MINIBUF ALL-FRAMES)..。
ALL-FRAMES nilまたは省略は、WINDOWのフレーム上のすべてのウィンドウに加えて、MINIBUF引数で指定されている場合はミニバッファーウィンドウを考慮することを意味します。ミニバッファが重要な場合は、そのミニバッファを共有するすべてのフレームのすべてのウィンドウも考慮してください。ALL-FRAMESの次のnil以外の値には、特別な意味があります。
tは、既存のすべてのフレームのすべてのウィンドウを考慮することを意味します。
「可視」とは、すべての可視フレーム上のすべてのウィンドウを考慮することを意味します。
0(数字のゼロ)は、すべての表示およびアイコン化されたフレーム上のすべてのウィンドウを考慮することを意味します。
フレームとは、そのフレーム上のすべてのウィンドウのみを考慮することを意味します。
それ以外の場合は、WINDOWのフレーム上のすべてのウィンドウを考慮し、他のウィンドウは考慮しないことを意味します。
皮肉なことに、other-window
を使用するため、これもサポートしますnext-window
。残念ながら、数値以外の引数をインタラクティブに渡す方法はわかりませんが、単純な関数でうまくいくはずです。
(defun my-other-window (count)
(interactive "p")
(other-window count t))
C-x 5 o C-hフレームの操作に関するすべての機能を表示するには、 を押す必要があります。
これらの関数のいくつかは、他のフレームです。
ace-jump-modeのバージョン 2.0 を使用しています。それがどのように機能するかを理解するのに約 2 分かかります。バージョン 2.0 以降では、別のフレームに「ジャンプ」することができます。3 つまたは 4 つのキーを押すだけで、実際に画面に表示される任意のバッファー/フレーム/ウィンドウから任意の文字にジャンプできます。倒すのは非常に難しいです。
とにかく大幅な時間の節約になるので、本当に便利なのでチェックすることをお勧めします。
http://www.emacswiki.org/emacs/AceJump
そして、「Emacs Rocks! Episode 10: Jumping around」の 2 分間のスクリーンキャストでは、実際の動作が示されています。
これがあなたの言いたいことかどうかはわかりませんが、フレームに関係なく、 buffer list 内のバッファーを循環させたい場合:
Ctrl x→</kbd>
Ctrl x←</kbd>
これらはそれぞれ (next-buffer) と (previous-buffer) にバインドされます。
これは最初の概算になります。
http://www.gnu.org/software/emacs/manual/html_node/elisp/Cyclic-Window-Ordering.html
http://www.gnu.org/software/emacs/manual/html_node/elisp/Frames.html
other-window
フレームの処理方法を制御するパラメーターがあります。
(global-set-key (kbd "C-x o") (lambda ()
(interactive)
(other-window 1 t)
(let ((nframe (window-frame (selected-window))))
(select-frame-set-input-focus nframe)
(make-frame-visible nframe))))