2013-10-19 16 views
7

Tôi có một bộ đệm mà tôi muốn "chuyển đổi" mở trong một cửa sổ trong emacs trên một phím nhấn.Emacs, chuyển một cửa sổ cụ thể

Ví dụ:

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

đâu S trong cửa sổ phía bên tay trái là một bộ đệm cụ thể.

Vấn đề đặt ra rằng điều này sẽ xảy ra bất kể những gì cấu trúc cửa sổ của W là. Nếu W có một vài cửa sổ khác nhau trong đó, nhấn <F3> vẫn nên tạo một cửa sổ mới ở cạnh màn hình và đặt bộ đệm cụ thể vào đó và sau đó sẽ xóa nó đi.

Tôi không thực sự chắc chắn làm thế nào để làm điều này là emacs tuy nhiên.

Trả lời

6

Hãy thử điều này như là điểm khởi đầu, nó cần gói 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

Gói tuyệt vời! Cám ơn vì sự gợi ý. –

+0

Có lẽ là đề cập đến điều này: http://www.emacswiki.org/emacs/PopWin – phils

Các vấn đề liên quan