当有三个窗口时交换两个窗口

时间:2019-07-18 08:24:25

标签: vim

我在Vim中有以下窗口布置:

┌─────┬─────┐
│     │  2  │
│  1  ├─────┤
│     │  3  │
└─────┴─────┘

我想交换窗口2和3。现在窗口2处于活动状态。 CTRL-w J 不起作用,因为它将把窗口2移至底部,将窗口1和3移至顶部,成为两个垂直分割的窗口。

之后,我尝试使用其他 CTRL-w H / J / K / L 运动,但无法获得最终结果。

一个人怎么能做到这一点?

2 个答案:

答案 0 :(得分:7)

:h window-moving(或简单地:h windows然后向下浏览)列出了所有此类内容。

我相信您想要 CTRL-w CTRL-x (或 CTRL-w x )(窗口eXchange)。

答案 1 :(得分:2)

我不相信马特的答案就是您想要的。它仅允许将窗口与下一个窗口交换。这可能适用于给定的示例,但不适用于更复杂的情况。

我使用vim-windowswap插件,该插件可以交换任意两个窗口:https://github.com/wesQ3/vim-windowswap