首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vim NERDTree.如何禁止标签中的重复文件?

Vim NERDTree.如何禁止标签中的重复文件?
EN

Stack Overflow用户
提问于 2014-11-27 14:24:40
回答 3查看 1.7K关注 0票数 0

我在设置中使用NERDTree:

代码语言:javascript
运行
复制
""""
" NerdTree
"
Bundle 'scrooloose/nerdtree'
Bundle 'jistr/vim-nerdtree-tabs'
map <F2> :NERDTreeTabsToggle<CR>

我可以用同一个文件打开任意数量的选项卡,只需按“t”即可。例如:

代码语言:javascript
运行
复制
|foo.txt|bar.txt|foo.txt|foo.txt|

如何防止重复文件的打开?我想通过按't‘打开一个现有的缓冲区。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-05-12 11:51:41

我在这里找到了解决方案,https://github.com/scrooloose/nerdtree/issues/439

获取最新版本,并将其放在~/.vim/nerdtree_plugin/override_tab_mapping.vim中 https://gist.github.com/scrooloose/0495cade24f1f2ebb602

谢谢@moeabdol

票数 2
EN

Stack Overflow用户

发布于 2014-11-27 23:21:42

据我所知,NerdTree没有这样的行为。不过,我相信您要寻找的不是像@ :tab drop提到的那样的:sb,也可以是使用:sb切换缓冲区的设置如下:set swb=useopen,usetabe

就我个人而言,我建议您将NerdTree用于更多的文件资源管理器,而不是文件/缓冲区管理器。通过利用Vim的缓冲区命令,您可以轻松地在缓冲区之间切换。此外,通过使用Vim的缓冲区命令,您可以避免“一对一:文件到选项卡关系陷阱”,从而使许多新的vimmers陷入困境。

撇开NerdTree不说

NerdTree对于探索复杂或不熟悉的文件结构非常有帮助,但它的代价是占用屏幕房地产,破坏缓冲区和窗口/拆分工作流。有关更多信息,请参见油醋窗和项目抽屉。对于很多人来说,使用像CtrlP这样漂亮的fuzzyfinder插件通常会取代NerdTree。

我有一篇很好的关于NerdTree的文章,这篇文章可能很有价值:文件,缓冲区,和分裂-哦,天啊!

除了标签

Vim的选项卡与大多数文本编辑器选项卡不同。它们更像是一组窗口/分区中的视图。此外,Vim是以缓冲区为中心的,而不是像大多数编辑器那样以标签为中心的。因此,使用像quickfix这样的特性通常更容易没有制表符(如果必须使用选项卡,请参见:h 'switchbuf )。由于有更好的窗口和缓冲区导航命令,Vim的选项卡经常妨碍使用拆分。我个人有很多文件是打开的(有时是100+),不使用制表符,平均使用1-2个分片,没有任何问题。底线:阅读以下文章:

Vim映射的最佳实践

  • 提供一个模式。所以:map变成了:nmap
  • 除非使用<Plug><SID>映射,否则您可能应该使用:noremap

通过遵循这2条规则,您的映射将变成:

代码语言:javascript
运行
复制
nnoremap <f2> :NERDTreeTabsToggle<cr>
票数 1
EN

Stack Overflow用户

发布于 2014-11-27 15:12:10

要打开一个新缓冲区,只需按o

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27172873

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档