在emacs python-mode中自定义窗口拆分

时间:2014-06-09 11:19:45

标签: user-interface emacs elisp

每次我在emacs python-mode中向python控制台发送一行时, 它执行split-window-below,如下所示:

enter image description here

在大多数电脑屏幕上,垂直尺寸都很严格, 因此,更需要触发拆分窗口,而不是 像这样:

enter image description here

这可以手动完成(c-x 1 c-x 3 c-x o c-x b),但只需一次 你从源文件,布局执行任何python代码 回到烦人的。

有没有办法持久定制?


编辑:

我尝试了一些事情,包括建议的答案 评论如下。到目前为止,它在.emacs中看起来如下 "有点"工作:

(setq split-height-threshold nil)
(setq split-width-threshold 0)

除了他们将在下面添加一个额外的窗口:

enter image description here

2 个答案:

答案 0 :(得分:5)

根据您的模式行包含Py作为主要模式指标的事实,我假设您使用python-mode.el而不是内置python.el。此包定义了一个名为py-split-windows-on-execute-function的变量,允许您在从py-execute-*系列调用命令时指定用于拆分窗口的函数。

要使水平(并排)拆分显示python-mode缓冲区的窗口的默认值,请将以下内容添加到.emacs

(require 'python-mode)
(setq-default py-split-windows-on-execute-function 'split-window-horizontally)

请注意,您必须使用setq-default而不是setq,因为py-split-windows-on-execute-functionbuffer-local variable

答案 1 :(得分:1)

或者,除了itjeyd所说的,只是:

M-x customize-variable RET py-split-windows-on-execute-function RET

然后从"值菜单"

中选择