Vim 维姆:我怎样才能从左侧的NerdTree面板打开右侧的文件作为vsplit?

Vim 维姆:我怎样才能从左侧的NerdTree面板打开右侧的文件作为vsplit?,vim,plugins,editor,nerdtree,Vim,Plugins,Editor,Nerdtree,我安装了NerdTree插件 如何从左侧NerdTree面板以vsplit的形式打开右侧的文件?有一个s命令,但它会打开一个拆分到当前缓冲区左侧的文件。尽管您可以按Ctrl+W r来交换窗口。要使vsplit将新缓冲区放在当前缓冲区的右侧: set splitright set splitbelow 同样,要进行拆分,请将新缓冲区置于当前缓冲区下方: set splitright set splitbelow 不过,我还没有在NerdTree上尝试过这一点。这有点像黑客,但我是如何做到这

我安装了NerdTree插件


如何从左侧NerdTree面板以vsplit的形式打开右侧的文件?

有一个s命令,但它会打开一个拆分到当前缓冲区左侧的文件。尽管您可以按Ctrl+W r来交换窗口。

要使
vsplit
将新缓冲区放在当前缓冲区的右侧:

set splitright
set splitbelow
同样,要进行
拆分
,请将新缓冲区置于当前缓冲区下方:

set splitright
set splitbelow

不过,我还没有在NerdTree上尝试过这一点。

这有点像黑客,但我是如何做到这一点的:

  • 将光标放在我要打开文件的窗口中
  • 点击
    nn
    (这将关闭NERDtree,然后在光标位于NERDtree时再次打开它)
  • 选择文件
  • 在我的系统上,如果文件还没有在我的屏幕上打开,它会在我刚刚打开的最后一个窗口中打开。

    从要打开文件的窗口开始

    点击
    nn
    关闭并重新打开NERDTree

    选择你想要的文件


    快速的
    C-w=
    将使您的窗口恢复到适当的比例。

    不确定是否还有其他人还在为此挣扎,但下面是我如何处理的

    你可以用

    :ls 
    
    列出可用的缓冲区。这看起来像:

    1 "foo.txt"
    2 "blame_the_user.java"
    
    :b1
    选择foo.txt

    :b2
    用于责怪用户。java

    此方法可以通过使用
    :sp
    :vs
    在任何窗口设置中完成


    首先打开要拆分的缓冲区

    没关系,但是如果我想打开另一个文件键入s,那么我会得到另一个拆分窗口,但是我想用当前打开的文件替换旧的拆分窗口,我该怎么做呢?似乎在添加
    后,按照@PrinceGoulash的建议,设置splitright
    ,NerdTree中文件的
    s
    将打开右侧拆分,而无需执行
    Ctrl-W r
    。如果我没弄错的话,如果你想只使用两个垂直分割的窗口,你可以切换到旧窗口,通过NerdTree打开一个新文件,只需点击
    Enter
    。不,我想说的是,有两个vsplit窗口,左边是NerdTree菜单,如果我按“s”然后它会到右边。不再显示VSPLITED窗口。@guru,那么您想“打开”新窗口,而不是“拆分”它。窗口总是在最后选择的缓冲区中打开/替换。不幸的是,它很可能是你打开的两个盒子中的左边一个。不理想,但有一个选项可以是通过
    Ctrl+W R
    旋转窗口,然后打开文件并向后旋转。好的,但是如何打开一个vsplit文件来替换旧文件呢?@shibly如果设置了
    splitright
    ,那么您可以退出当前位于右侧的文件,
    vsplit newfilename
    ,这将把新文件放在旧文件所在的位置。您也可以在一行中这样做:
    q | vsplit newfilename
    。这假设右侧的文件是活动文件。刚刚测试过,splitright与nerdtree配合使用效果良好。请注意,这将使所有进一步的拆分水平而不是垂直,除非使用
    vsplit
    伟大的解决方案。你说的
    n
    是指