【问题标题】:Make NERDTree open a file where the cursor was last使 NERDTree 打开光标上次所在的文件
【发布时间】:2012-06-27 13:46:28
【问题描述】:

我发现 NERDTree 真正令人讨厌的一件事是,当我打开一个五分钟前刚刚查看的文件时,该文件是从一开始就打开的,而不是光标上次打开的位置。

如果我使用 :b 缓冲区列表打开文件(它已经打开过一次),我没有这个问题,因为我被直接传送到我的光标最后的位置。这很有帮助,因为我的源文件很大。

有没有办法让 NERDTree 先在缓冲区列表中查看文件是否已经打开?或者也许有其他方法可以解决我的问题?

【问题讨论】:

  • NERDTree 不是缓冲区管理器或项目管理器,它是文件系统资源管理器。如果:b 有效,为什么不使用它呢?
  • 这并没有回答我的问题,但我找到了一种通过配置 vimrc 来配置 netrw 使其行为类似于 NERDTree 的方法。见这里:shapeshed.com/vim-netrw

标签: vim nerdtree


【解决方案1】:

灵感来自this Vim tip 我的vimrc 中有以下内容,它会在打开时自动将光标移动到最后一个位置。 NERDTree 似乎可以正常工作

au BufReadPost *
     \ if line("'\"") > 1 && line("'\"") <= line("$") |
     \   exe "normal! g`\"" |
     \ endif

请注意,光标位置存储在您的 viminfo 文件中,因此应适当设置 viminfo 选项。我觉得默认值就好了。

【讨论】:

    【解决方案2】:

    试试这个,它确实恢复了光标的最后一个位置

    设置隐藏

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多