Emacs切换到上部或左侧窗口

时间:2014-01-06 02:53:30

标签: emacs keyboard-shortcuts

我希望在不同窗口之间切换时加快速度 - 当我有多个窗口时,有时候C-x-o太慢了。说,我现在有4个窗口,我希望通过C-x-up arrow切换到上面一个,C-x-left arrow,左侧切换到C-x-down arrow左下方,{{1}右侧切换到}}。我该如何在.emacs中编码?

非常感谢!

2 个答案:

答案 0 :(得分:3)

windmove包专为此而设计。

默认情况下,您可以使用箭头键使用 Shift 切换窗口。如链接帖子所述,只需

(when (fboundp 'windmove-default-keybindings)
  (windmove-default-keybindings))

当然,这是完全可配置的。例如,我将它绑定到没有任何修饰符的箭头键(我已经使用C-pC-n等进行移动),如下所示:

(when (locate-library "windmove")
  (global-set-key (kbd "<left>") 'windmove-left)
  (global-set-key (kbd "<right>") 'windmove-right)
  (global-set-key (kbd "<up>") 'windmove-up)
  (global-set-key (kbd "<down>") 'windmove-down))

windmove随Emacs一起提供。

答案 1 :(得分:0)

这是我的最终答案,它优雅地运作!这是我第一次在Emacs中定义快捷方式。了不起!非常感谢@Chris!

(when (locate-library "windmove")
    (global-set-key (kbd "C-x <left>") 'windmove-left)
    (global-set-key (kbd "C-x <right>") 'windmove-right)
    (global-set-key (kbd "C-x <up>") 'windmove-up)
    (global-set-key (kbd "C-x <down>") 'windmove-down)
  )

PS我的windmove包是自动加载的。