如何在Vim中将当前窗口从水平分割切换为垂直分割,反之亦然?
我偶然做到了,但我再也找不到钥匙了。
#1楼
Vim邮件列表说(重新格式化以获得更好的可读性):
要将两个垂直分割的窗口更改为水平分割
Ctrl - w t Ctrl - w K.
水平到垂直:
Ctrl - w t Ctrl - w H
说明:
Ctrl - w t使第一个(topleft)窗口成为当前窗口
Ctrl - w K将当前窗口移动到最顶部的全宽
Ctrl - w H将当前窗口移动到最左侧的全高
请注意,t是小写的,K和H是大写的。
另外,只有两个窗口,看起来你可以放下Ctrl - w t部分,因为如果你已经只在两个窗口中的一个窗口,那么它的最新点是什么?
#2楼
在VIM中,请查看以下内容,了解您可能已做的不同选择:
:帮助打开窗口
例如:
Ctrl - W s
Ctrl - W o
Ctrl - W v
Ctrl - W o
Ctrl - W s
...
#3楼
以下ex命令将(重新)拆分任意数量的窗口:
要垂直分割(例如在窗口之间制作垂直分隔线),请键入:vertical ball
要水平拆分,请键入:ball
如果存在隐藏缓冲区,则发出这些命令也会使隐藏缓冲区可见。
#4楼
当您有两个或多个水平或垂直打开的窗口并希望将它们全部切换到另一个方向时,您可以使用以下内容:
(切换到水平)
:windo wincmd K
(切换到垂直)
:windo wincmd H
它有效地单独使用^ W K或^ W H到达每个窗口。
#5楼
继马克Rushakoff的尖上面 ,这里是我的映射:
" vertical to horizontal ( | -> -- )
noremap - tK
" horizontal to vertical ( -- -> | )
noremap \| tH
noremap \ tH
noremap / tH
编辑:使用Ctrl - w r交换两个窗口,如果它们不是正常的顺序。