2013-10-19 26 views
7

Bir tuşa basıldığında, bir pencerede açılan pencerede "geçiş yapmak" istediğim bir arabellek var. ÖrneğinEmacs, belirli bir pencereye geçiş yapın

:

sol taraftaki penceresinde S belirli bir tampon olup
________________  ________________  ________________ 
|    |  | |   |  |    | 
|    |  | |   |  |    | 
|    |  | |   |  |    | 
|  W  | -> | S |  W  | -> |  W  | 
|    | <f3> | |   | <f3> |    | 
|    |  | |   |  |    | 
----------------  ----------------  ---------------- 

.

Sorun, W'un pencere yapısının ne olduğuna bakılmaksızın bunun gerçekleşmesi gerektiği anlamına gelir. W'un içinde birkaç farklı pencere varsa, <F3> tuşlarına basmak yine de ekranın kenarında yeni bir pencere oluşturmalı ve belirli arabelleğe yerleştirmeli ve sonra onu almalıdır.

Bunun nasıl yapılacağından emin değilim emacs.

cevap

6

Bunu başlangıç ​​noktası olarak deneyin, popwin paketine gereksinim duyar.

(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

Great package! Önerin için teşekkürler. –

+0

Muhtemelen şu anlama gelir: http://www.emacswiki.org/emacs/PopWin – phils

İlgili konular