2013-10-19 9 views
7

私は、キーを押すとemacsのウィンドウで "トグル"したいバッファを持っています。例えばEmacs、特定のウィンドウを切り替える

:左側のウィンドウのS特定のバッファである

________________  ________________  ________________ 
|    |  | |   |  |    | 
|    |  | |   |  |    | 
|    |  | |   |  |    | 
|  W  | -> | S |  W  | -> |  W  | 
|    | <f3> | |   | <f3> |    | 
|    |  | |   |  |    | 
----------------  ----------------  ---------------- 

この問題は、Wのウィンドウ構造が何であるかに関係なく発生する問題が発生します。 Wに複数の異なるウィンドウがある場合は、<F3>を押しても画面の端に新しいウィンドウが作成され、その中に特定のバッファが置かれていなければなりません。

私は本当にこれを行う方法はわかりませんが、emacsです。

答えて

6

これを開始点として試してみると、パッケージpopwinが必要です。

(require 'popwin) 
(popwin-mode 1) 

(generate-new-buffer "special-buffer") 

(setq eab/special-buffer-displaedp nil) 
(setq eab/special-buffer "special-buffer") 

(add-to-list 'popwin:special-display-config 
     `(,eab/special-buffer :width 20 :position left :stick t))  

(defun eab/special-buffer-toggle() 
    (interactive) 
    (if eab/special-buffer-displaedp 
     (progn 
     (popwin:close-popup-window) 
     (setq eab/special-buffer-displaedp nil)) 
    (progn 
     (ignore-errors (popwin:display-buffer eab/special-buffer)) 
     (setq eab/special-buffer-displaedp 't)))) 

(global-set-key (kbd "<f3>") 'eab/special-buffer-toggle) 
+0

素晴らしいパッケージ!提案していただきありがとうございます。 –

+0

おそらくこれを参照してください:http://www.emacswiki.org/emacs/PopWin – phils

関連する問題