我使用NERDTree设置:
""""
" NerdTree
"
Bundle 'scrooloose/nerdtree'
Bundle 'jistr/vim-nerdtree-tabs'
map <F2> :NERDTreeTabsToggle<CR>
我可以通过按&t;&#39;打开任意数量的标签。例如:
|foo.txt|bar.txt|foo.txt|foo.txt|
如何防止重复文件的打开?我想通过按“&#39;
来打开现有的缓冲区。”答案 0 :(得分:2)
我在这里找到了解决方案https://github.com/scrooloose/nerdtree/issues/439
抓住最新版本并坚持下去 〜/的.vim / nerdtree_plugin / override_tab_mapping.vim
谢谢@moeabdol
答案 1 :(得分:1)
根据我的理解,NerdTree没有这样的行为。我相信你要找的是@ :tab drop
,如@Ben所提到的,或者使用:sb
来切换缓冲区,使用以下设置:set swb=useopen,usetabe
。
我个人建议你使用NerdTree来获取更多的文件资源管理器而不是文件/缓冲区管理器。通过利用Vim的缓冲区命令,您可以轻松地在缓冲区之间切换。此外,通过使用Vim的缓冲区命令,您可以避免“一对一:文件到标签关系陷阱”,这么多新的vimmer会被卡住。
NerdTree非常有助于探索复杂或不熟悉的文件结构,但它的代价是占用屏幕空间并破坏缓冲区和窗口/拆分工作流程。有关详情,请参阅Oil and vinegar - split windows and the project drawer。使用像CtrlP这样的漂亮的fuzzyfinder插件经常取代NerdTree给很多人。
我有一篇关于NerdTree的好文章可能有价值:Files, Buffers, and Splits Oh My!
Vim的标签与大多数文本编辑器标签不同。它们更像是一组窗口/分裂的视口。此外,Vim以缓冲区为中心,而不像大多数编辑器那样以标签为中心。因此,如果没有标签,使用快速修复列表等功能通常会更容易(如果必须使用标签,请参阅:h 'switchbuf
)。 Vim的选项卡经常妨碍使用拆分,因为有更好的窗口和缓冲区导航命令可用。我个人有很多文件打开(有时100多个)使用没有标签,平均使用1-2分裂没有任何问题。底线:阅读以下帖子:
:map
变为:nmap
<Plug>
或<SID>
映射,否则您应该使用:noremap
通过遵循以下2条规则,您的映射将成为:
nnoremap <f2> :NERDTreeTabsToggle<cr>
答案 2 :(得分:0)
要打开新缓冲区,只需按o