当前位置:  开发笔记 > 开发工具 > 正文

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

如何解决《在Vim中快速从垂直分割切换到水平分割》经验,为你挑选了8个好方法。

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

我偶然做到了,但我再也找不到钥匙了.



1> Mark Rushako..:

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部分,因为如果你已经只在两个窗口之一,那么它是什么意思?


因此,如果你有两个水平分割的窗口,并且你在下窗口,你只需使用^ WL.
......权力......今天我的vim-fu加倍了,谢谢.有很多有趣的^ w命令(b,w等)
@Eno对我来说很好.只需在"旋转"分割之前切换NERDTree面板,然后将其切换回打开状态.:NERDTreeToggle(为方便起见,我将它映射到一个功能键).
我在我的vim配置中添加了一些引导映射:`:nmap th t H`和`:nmap tk t K`

2> respectTheCo..:

Ctrl- w其次H,J,KL(大写)将当前窗口移动到远left,bottom,topright分别像正常光标导航.

小写等效项移动焦点而不是移动窗口.


接受的答案很好,但对我来说,这个答案更容易记住.谢谢!
因为用户使用hjkl在缓冲区之间移动,所以它要好得多.

3> Steve..:

当您有两个或多个水平或垂直打开的窗口并希望将它们全部切换到另一个方向时,您可以使用以下方法:

(切换到水平)

:windo wincmd K

(切换到垂直)

:windo wincmd H

它有效地单独使用每个窗口并使用^WK^WH.



4> Mark..:

以下ex命令将(重新)拆分任意数量的窗口:

要垂直分割(例如在窗口之间制作垂直分隔线),请键入 :vertical ball

要水平拆分,请键入 :ball

如果存在隐藏缓冲区,则发出这些命令也会使隐藏缓冲区可见.



5> Anon..:

在VIM中,请查看以下内容,了解您可能已做的不同选择:

:帮助打开窗口

例如:

Ctrl- W s
Ctrl- W o
Ctrl- W v
Ctrl- W o
Ctrl- W s
......



6> Serge Stroob..:
水平到垂直拆分

Ctrl+ W用于窗口命令,后跟Shift+ HShift+L


垂直至水平分割

Ctrl+ W用于窗口命令,后跟Shift+ KShift+J

当只有两个窗口时,两种解决方案均适用。



7> Adam Faryna..:

受史蒂夫(Steve)答案的启发,我编写了一个简单的函数,该函数可在当前选项卡中所有窗口的垂直和水平拆分之间切换。您可以将其绑定到映射,如下面的最后一行所示。

function! ToggleWindowHorizontalVerticalSplit()
  if !exists('t:splitType')
    let t:splitType = 'vertical'
  endif

  if t:splitType == 'vertical' " is vertical switch to horizontal
    windo wincmd K
    let t:splitType = 'horizontal'

  else " is horizontal switch to vertical
    windo wincmd H
    let t:splitType = 'vertical'
  endif
endfunction

nnoremap  wt :call ToggleWindowHorizontalVerticalSplit()



8> Jabba..:

继马克Rushakoff的尖上面,这里是我的映射:

" vertical to horizontal ( | -> -- )
noremap -  tK
" horizontal to vertical ( -- -> | )
noremap \|  tH
noremap \  tH
noremap /  tH

编辑:使用Ctrl- w r交换两个窗口,如果他们不是良好的顺序.

推荐阅读
周扒pi
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有