【问题标题】:nerdtree auto focus to file when opened in new tab在新选项卡中打开时,nerdtree 自动聚焦到文件
【发布时间】:2010-11-25 13:55:24
【问题描述】:

我在 Linux 上使用 NerdTree。在使用“t”在新选项卡中打开文件后,我想从书呆子树缓冲区跳转到文件缓冲区。 我需要一直按“Ctrl+W+W”。

关于在创建新缓冲区后如何让 vi 执行 C-W-W 的任何想法。

塞拉姆

【问题讨论】:

    标签: nerdtree vim


    【解决方案1】:

    vim 启动时,会为文件打开一个窗口,然后为NerdTree 打开另一个窗口。

    回到主窗口最简单的方法就是像这样跳到上一个窗口:

    " Start NERDTree
    autocmd VimEnter * NERDTree
    " Go to previous (last accessed) window.
    autocmd VimEnter * wincmd p
    

    【讨论】:

    • 正是我需要的!使用 vim 打开文件时,这会将焦点设置为新打开的文件,同时仍打开 NERDTree
    • 可以组合命令:autocmd VimEnter * NERDTree | wincmd p
    • 非常感谢通过搜索vimenter window来到这里
    • 这确实有效。像@NARKOZ 所说的那样组合对我不起作用,不知道为什么。
    • 让 NERDTree 在启动时打开,如果没有指定文件,则继续关注 nerdtree autocmd StdinReadPre * let s:std_in=1 autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | else | NERDTree | wincmd p | endif
    【解决方案2】:

    您可以使用所谓的自动命令,例如:

      au BufNew * <command>
    

    创建新缓冲区时会执行命令。从那里开始。查看 vimdoc 关于这个主题。

    【讨论】:

      【解决方案3】:

      只需将autocmd BufNew * wincmd l 添加到您的.vimrc 中

      【讨论】:

      • 对于未来的旅行者:这对我不起作用(vim 7.2),但是将 PaulP 的解决方案放在 .vimrc 中 autocmd vimenter * NERDTree 行之后
      • Yohann 的解决方案对我有用,而不是这个。不确定这是否过时,但肯定非常相似。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-04-27
      • 2012-07-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多