vim:how 将 taglist 和 nerdtree 设置为一个垂直分屏

vim:how to set taglist and nerdtree at one vertical split screen

如图所示,我想你能看懂我的意思。我尝试为 taglist 设置 .vimrc:

let Tlist_Use_Horiz_Window=1

let Tlist_Use_Right_Window = 1

当然有用。

我尝试C+W + H|J|K|L,又失败了...

谁熟悉vim,请帮帮我。

有一个 vim 插件“winmanager”。它可以像您的描述一样设置布局。有很多博客介绍如何设置它与 NERDTree 和 taglist/tagbar 一起工作。好吧,也有一些抱怨说 winmanager 没有得到很好的维护。有时需要修改源代码才能与 NERDTree 一起使用。

我建议您先尝试 winmanager。如果它不起作用,您可以尝试我愚蠢但有用的解决方法:

function! ToggleNerdtreeTagbar()

    " check if NERDTree and Tagbar are opened
    let NERDTree_close = (bufwinnr('NERD_tree') == -1) 
    let Tagbar_close   = (bufwinnr('__Tagbar__') == -1) 

    TagbarToggle
    NERDTreeToggle

    if NERDTree_close && Tagbar_close
        wincmd K
        wincmd b
        wincmd L
        wincmd h
        exe 'vertical resize 30'
    endif

endfunction
nmap <C-e> :call ToggleNerdtreeTagbar()<CR>

如果 1) taglist 或 tagbar 在左侧,2) 您一开始只打开一个 window,然后按 CTRL-e,这将起作用。然后你可以打开其他windows。