2011-08-08 78 views
1

也许这是愚蠢的问题..但我试图让细粒我的Emacs定制..有一个直接的命令来改变这样的窗口?Emacs窗口定位

+----------------+ 
|    |  
|    | 
+----------------+ 
|    | 
|    | 
+----------------+ 

+----------------+------------+ 
|    |   | 
|    |   | 
+----------------+   | 
|    |   | 
|    |   | 
+----------------+------------+ 

还是我需要开始学习elisp的?

+0

CX 1,CX 3,CX 2 –

+0

是但随后的底部窗口被改变到最上面的一个需要CXöCX b FOO ..我希望它简化为1层的步骤,因为即时通讯做这往往 – ChrisR

回答

5

是你的意愿,但与窗口布局和缓冲区玩弄是开始很不错的地方。这里有一个适合你的解决方案,它为你提供了大部分自定义布局所需的东西。

将以下代码添加到您的.emacs中。 C-x C-e来评估它,然后希望按照你的预期击打F5(假设你没有杀死'* Messages *'缓冲区)。

global-set-key '[f5] '(lambda() (interactive)    
         (let ((other (buffer-name (window-buffer (next-window))))) 
         (delete-other-windows) 
        (set-frame-width (selected-frame) 
        (+ (frame-width (selected-frame)) (window-width))) 
        (split-window-horizontally) 
        (split-window-vertically) 
        (with-selected-window (next-window) 
         (set-window-buffer (selected-window) other)) 
        (with-selected-window (previous-window) 
         (set-window-buffer (selected-window) "*Messages*"))))) 
+0

THX,这将需要一段时间来消化:) – ChrisR