Vim - 如何将光标自动定位在第一个文件或我来自(辅助)NerdTreeBuffer的文件中?

时间:2013-01-11 13:01:05

标签: vim nerdtree

我还没有设法弄清楚如何通过:ex .(NERDTreeHijackNetrw = 1)将光标定位在NerdTree缓冲区开头的第一个文件条目对应的第四/第五行。

我的.vimrc中的以下行不起作用:

autocmd BufEnter * silent! if (exists("b:NERDTreeType") && b:NERDTreeType == "secondary") | <missing command> | endif

1 个答案:

答案 0 :(得分:1)

我一直在尝试多种方式,但问题是所有NERDTrees内部方法都是私有的(它们是在s:前面定义的,这使得很难重用它们,并且挂钩BufEnter事件也不是很有用,因为当该事件被触发时,NERDTree似乎还没有完全初始化。

目前,我认为这将是最佳解决方案:

fun! NewTreeOpen()
    NERDTreeFind
    wincmd o
    let g:NERDTreeQuitOnOpen=1
endfun

这是做什么的:

  • 打开一个新的NERDTree侧边栏窗口,其中选择了当前文件
  • 使NERDTree窗口成为唯一的窗口
  • 告诉NERDTree在您选择文件后再次关闭(全尺寸)侧边栏

我希望这已经够好了。否则我认为您应该向NERDTree的作者提出功能请求,询问他是否可以添加此功能。