我经常有一个Emacs框架被分成两个窗口,如下所示:
--------------------------------
| |
| Window 1 |
| |
|------------------------------|
| |
| Window 2 |
| |
--------------------------------
然后我发现自己需要一个长的垂直窗口,它可以在框架的整个高度上运行,如下所示:
--------------------------------
| | |
| W'dow 3 | Window 1 |
| | |
| |--------------------|
| | |
| | Window 2 |
| | |
--------------------------------
然而,使用 Cx 3 它只能分割窗口1或窗口2.创建长垂直窗口3的唯一方法是再次使用单个窗口填充整个框架,并将其水平分割(然后将其中一个窗口再次垂直拆分)。这很烦人。
我想我要做的就是拆分整个框架,而不仅仅是活动窗口。我用Google搜索了解决方案,但没有成功。是否可以创建一个在Emacs框架的整个长度上运行的新窗口,无论其中是否存在任何窗口?
答案 0 :(得分:1)
这有效:
(defun complex-split ()
(interactive)
(let (
(thisBuffer (buffer-name))
otherBuffer
)
(other-window 1)
(setq otherBuffer (buffer-name))
(delete-other-windows)
(split-window-horizontally)
(other-window 1)
(split-window-vertically)
(switch-to-buffer thisBuffer)
(other-window 1)
(switch-to-buffer otherBuffer)
)
)
答案 1 :(得分:1)
另一个快速提示 - 记住使用C-x r w
拆分窗口(运行命令窗口 - 配置到注册)。