我怎样才能将 switch-to-buffer-other-window 改为垂直分割而不是水平分割?

我怎样才能将 switch-to-buffer-other-window 改为垂直分割而不是水平分割?

我最近在 Ubuntu Jaunty 9.04 中将 Emacs 从 v22 升级到了 v23。升级之前,当我发出命令switch-to-buffer-other-window(通过C-x 4 bM-x switch-to-buffer-other-window)时,新窗口位于现有窗口下方,但升级后它开始水平分割窗口,导致两个窗口并排。

我已经在 Google 上搜索了自定义菜单项,但找不到任何参考或解决方案,您能告诉我如何更改此设置吗?非常感谢。

答案1

来自新闻(C-h n)部分:

*** display-buffer' tries to be smarter when splitting windows. The new option split-window-preferred-function' 允许您指定自己的函数来弹出新窗口。其默认值为 split-window-sensibly' can split a window either vertically or horizontally, whichever seems more suitable in the current configuration. You can tune the behavior of split-window-sensibly by customizing split-height-threshold',新选项为 `split-width-threshold'。这两个选项现在都采用值 nil 来禁止在一个方向上进行分割。将 split-width-threshold 设置为 nil 可禁止水平分割,并在这方面为您提供 Emacs 22 的行为。无论如何,display-buffer 现在可能会垂直分割最大的窗口,即使它不如包含框架那么宽。

因此,解决方案是:

(setq split-width-threshold nil)

相关内容