我在Emacs中有多个窗口,(C-x o)将带我到;其他";窗口,其他是什么意思?

我在Emacs中有多个窗口,(C-x o)将带我到;其他";窗口,其他是什么意思?,emacs,window,Emacs,Window,我是Emacs的新手。我对C-xo命令感到困惑。此命令将焦点移动到其他窗口。如果我有多个窗口,将选择哪个窗口作为目标?最快的方法是什么 谢谢“当有两个以上的窗口时,此命令以循环顺序在所有窗口中移动,通常从上到下,从左到右。”-Emacs手册 如果你只有两个窗口,C-Xo和其他窗口一样快。但是,当您有两个以上的窗口时,使用C-x o访问您想要的窗口可能会很痛苦 移动到当前窗口左/右/上/下的特定窗口的最快方法是“风移”。它带有Emacs 21及以上版本。可以使用Shift+箭头键移动到窗口 首先

我是Emacs的新手。我对C-xo命令感到困惑。此命令将焦点移动到
其他
窗口。如果我有多个窗口,将选择哪个窗口作为目标?最快的方法是什么

谢谢

“当有两个以上的窗口时,此命令以循环顺序在所有窗口中移动,通常从上到下,从左到右。”-Emacs手册

如果你只有两个窗口,C-Xo和其他窗口一样快。但是,当您有两个以上的窗口时,使用C-x o访问您想要的窗口可能会很痛苦

移动到当前窗口左/右/上/下的特定窗口的最快方法是“风移”。它带有Emacs 21及以上版本。可以使用Shift+箭头键移动到窗口


首先,您必须注意,Emacs俚语中的“窗口”并不是您想象中的意思。在Emacs中,通常称为窗口的称为“框架”。Emacs所谓的“窗口”是框架内的拆分窗口

了解C-XO的最简单的方法是自己尝试一下

在正在运行的Emacs实例中,首先键入C-x2。现在,框架垂直拆分为两个窗口。光标(“点”)位于两个窗口的上部。现在键入C-x 3,您将再次水平拆分上部窗口。总而言之,你现在有三扇窗户了

现在重复输入C-xo,在不同的窗口中循环。就这样

一旦习惯了窗口循环的顺序,就可以通过使用键组合和前缀参数一次进行多跳,从而跳过一些窗口。比如说,你想跳过一个窗口,然后一次跳过两个窗口,输入C-2c-xo。这样你可以快速跳转到你想要的窗口


(要返回到单个窗口,请键入C-x 1。)

C-x o循环通过当前帧中打开的窗口。如果您经常有许多打开的窗口,请尝试。它以可视方式显示窗口索引,您可以使用其索引切换到窗口。

如果像我这样的人使用搜索引擎浏览web,以简化多个窗口之间的切换,我建议此绑定键配置(放入您的init文件中):

它将窗口方向切换绑定到超级(windows键)+箭头键方向。这些案子应该不受约束

编辑
(windmove default keybindings'super)
由于下面的@phils注释,代码更简单


顺便说一句,如果您使用gnome,这些键可能会绑定到某些windows移动,因此您必须对其进行更改。

必须翻转M-x windmove默认键绑定标志才能开始使用
shift+[方向]
shift+箭头键实际上绑定到标记设置stuffwindmove日期之前的移动选择,因此后者(如果已启用)引入了与默认windmove修饰符的冲突——但您可以简单地自定义windmove,以使用Shift以外的内容。或者只使用
(windmove默认键绑定的super)
(global-set-key [s-left]  'windmove-left)
(global-set-key [s-right]  'windmove-right)
(global-set-key [s-up]  'windmove-up)
(global-set-key [s-down]  'windmove-down)