我在Emacs中有多个窗口,(C-x o)会把我带到“其他”窗口,其他意思是什么?

时间:2011-06-19 03:56:16

标签: emacs window

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

由于

4 个答案:

答案 0 :(得分:16)

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

http://www.gnu.org/software/libtool/manual/emacs/Other-Window.html

如果你只有两个窗口,那么C-x o和其他任何一个一样快。当你有超过2个窗口时,使用C-x o可能很难找到你想要的窗口。

将特定窗口移动到当前窗口的左/右/顶部/底部的最快方法是Wind Move。它配备了Emacs 21及更高版本。您可以使用Shift +箭头键移动到窗口。

http://www.emacswiki.org/emacs/WindMove

答案 1 :(得分:9)

首先你必须注意到Emacs俚语中的“窗口”并不意味着你认为它意味着什么。通常称为窗口的东西在Emacs中称为“帧”。 Emacs称之为“窗口”的是框架内的拆分窗口

了解 C-x o 的最简单方法是亲自尝试。

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

现在反复键入 C-x o 以循环浏览不同的窗口。就是这样。

一旦你已经习惯了循环浏览窗口的顺序,你可以一次做多跳,从而跳过一些窗口,使用密钥组合和前缀参数。所以说,你想跳过一个窗口,然后一次跳两个,输入 C-2 C-x o 。这样您就可以快速跳转到所需的窗口。

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

答案 2 :(得分:0)

C-x o 循环通过当前帧中的opend窗口。如果您经常有许多opend窗口,请尝试dim switch window。它直观地显示窗口索引,您可以使用其索引切换到窗口。

答案 3 :(得分:0)

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

500/50/5

它将Windows方向切换绑定到超级(Windows键)+箭头键方向。这些情况应该不受约束。

编辑

contention是更简单的代码,这要归功于下面的@phils评论。

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