使用命令-T搜索

xra*_*alf 15 vim search vim-plugin nerdtree

当我用命令-T搜索某个文件时,它常常很难找到它,因为我不在正确的目录中,所以我必须更改目录.

是否可以设置命令-T将首先在书签Nerdtree或其他地方的目录中搜索?

我可以将目录更改为/但是此搜索范围非常大的文件.当我将dir更改为我的主目录并且我正在寻找一些普通的东西时,.bashrc我会找到位于.wine目录下的相当多的文件.

在99%的时间里,我需要搜索我积极使用的项目目录中的文件.我可以在某些首选项中设置这些目录吗?

Rco*_*sta 34

根据文档,您可以从搜索中排除目录:

                                            *command-t-wildignore*
  |'wildignore'|                                 string (default: '')

   Vim's |'wildignore'| setting is used to determine which files should be
  excluded from listings. This is a comma-separated list of glob patterns.
  It defaults to the empty string, but common settings include "*.o,*.obj"
  (to exclude object files) or ".git,.svn" (to exclude SCM metadata
  directories). For example:

     :set wildignore+=*.o,*.obj,.git

   A pattern such as "vendor/rails/**" would exclude all files and
  subdirectories inside the "vendor/rails" directory (relative to
  directory Command-T starts in).    
Run Code Online (Sandbox Code Playgroud)

所以如果你想要排除一个备份目录,你会写:

set wildignore+=project/backup
Run Code Online (Sandbox Code Playgroud)

在你的.vimrc中

此外,要忽略dotfiles/dotdirs,您可以查看以下选项:

g:CommandTNeverShowDotFiles
g:CommandTScanDotDirectories
g:CommandTMaxDepth
Run Code Online (Sandbox Code Playgroud)

这些允许您:
- 完全忽略dotfiles;
- 停止在dotdirs中递归搜索;
- 指定Command-T停止扫描的深度.

我在作者的git中找到了这个信息,但是您可以通过在vim中发布来查看此文档:

:help Command-T
Run Code Online (Sandbox Code Playgroud)

(或类似名称)

我在插件中没有看到任何对首选项或书签的引用.
但是,如果您通过在所述项目目录中打开文件来启动vim,则可能需要将此行添加到.vimrc:

    set autochdir
Run Code Online (Sandbox Code Playgroud)

此选项将在启动目录时设置为当前文件的目录.