如何在emacs中进行缓冲区拆分后切换焦点?

mor*_*man 35 emacs split window emacs23

我希望在拆分窗口(C-x 3C-x 2)之后能够自动获取新打开的缓冲区中的光标(除当前之外).我怎样才能实现这种行为?

Gia*_*ann 55

您可以在缓冲区之间切换C-x o.至于自动执行此操作,我认为没有现成的命令.


Boz*_*sov 30

你可以这样做:

(global-set-key "\C-x2" (lambda () (interactive)(split-window-vertically) (other-window 1)))
(global-set-key "\C-x3" (lambda () (interactive)(split-window-horizontally) (other-window 1)))
Run Code Online (Sandbox Code Playgroud)

在Emacs 24.3.1中,如果您更改参数1,则它可以工作0.

  • 它不应该真的是"拆分窗口右"和"拆分窗口下面"吗? (2认同)

Tho*_*mas 13

!!!不要使用这个答案!- 正如评论中所指出的,建议split-window会导致不良副作用.

我推荐Bozhidar Batsov的回答.


将以下内容放在.emacs文件中:

(defadvice split-window (after move-point-to-new-window activate)
  "Moves the point to the newly created window after splitting."
  (other-window 1))
Run Code Online (Sandbox Code Playgroud)