在Vim中快速从垂直分割切换到水平分割

如何在Vim中将当前窗口从水平分割切换为垂直分割,反之亦然? spa

我偶然作到了,但我再也找不到钥匙了。 code


#1楼

Vim邮件列表说(从新格式化以得到更好的可读性): rem

要将两个垂直分割的窗口更改成水平分割 get

Ctrl - w t Ctrl - w K. cmd

水平到垂直: io

Ctrl - w t Ctrl - w H map

说明: bug

Ctrl - w t使第一个(topleft)窗口成为当前窗口 im

Ctrl - w K将当前窗口移动到最顶部的全宽 top

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 <c-w>-  <c-w>t<c-w>K
" horizontal to vertical ( -- -> | )
noremap <c-w>\|  <c-w>t<c-w>H
noremap <c-w>\  <c-w>t<c-w>H
noremap <c-w>/  <c-w>t<c-w>H

编辑:使用Ctrl - w r交换两个窗口,若是它们不是正常的顺序。

相关文章
相关标签/搜索