如果我想在vim中打开一个分割,我会:sp %
- 在这种情况下,在我当前的缓冲区和窗口中对文件进行水平分割。 :vsp
是垂直的。
现在让我说我已经有一个垂直分割,我在右边的窗口。如果我想将窗口中的文件水平分割到右边而不指定其路径,我该怎么办?我相信我已经通过+
或,
看到了这一点,但我似乎无法找到它,并且对vim这个阴暗的部分一无所知。
视觉表现或我想要的东西
+~~~~~~~~~~~~~~~~~~~+~~~~~~~~~~~~~~~~~~~+
| ./test1 | ./test2 |
| Stuff in my other | I am currently in |
| window | this file ... |
| bla foo | |
| bla | |
| bla bar | |
| | |
| | :sp ./te[tab] |
+~~~~~~~~~~~~~~~~~~~+~~~~~~~~~~~~~~~~~~~+
以上工作,但我想指定左边没有文件名的窗口。
有什么想法吗?
答案 0 :(得分:3)
您可以执行以下操作来拆分当前文件,而不指定文件名或function () {}
。
%
如果您不喜欢命令,可以使用窗口映射:
:sp
:vsp
使用文件名与<c-w>s
<c-w>v
和:split
分开。
:vsplit
就像:split foo.txt
:vsplit bar.txt
一样,您可以执行以下操作:
:edit
完成<tab>
<c-d>
或:sp *foo
:sp **/*foo
技巧。例如%
,:e %<.h
。请参阅:e %:h/bar.txt
:_%
的替代文件。例如#
。注意::e #
可能是更好的选择使用<c-^>
作为:sbuffer
的拆分变体。
:buffer
使用:sb foo
:sb 7
进行垂直拆分。
看到:vert sb
的力量:
:b
完成<tab>
列出完成<c-d>
。适用于:b foo
。<tab>
或:b foo*bar
:b foo/**/bar
'hidden'
set hidden
的拆分变体是:b
。常见的映射:
:sb
移动分割可以通过窗口映射来完成
nnoremap <leader>b :ls<cr>:b<space>
向下拆分<c-w>J
分开<c-w>K
向左移动<c-w>H
向右移动<c-w>L