Vim CtrlP插件:手动设置root搜索目录?

Jon*_*nah 23 vim vim-plugin

我已经阅读了文档,但无法弄清楚这是否可行.

我想保留默认设置g:ctrlp_working_path_mode = 2,但是如果需要,我希望能够手动覆盖当前窗口中所有缓冲区的设置.

具体来说,我想发出一个ctrlp命令或更改设置根搜索目录的ctrlp配置变量,这样就可以将该目录用于所有将来的搜索,无论我在哪个缓冲区中.

奖金问题:是否可以设置两个根目录,以便搜索它们并组合结果?

谢谢!

Cha*_*ant 15

试试这个:

让g:ctrlp_working_path_mode ='ra'

'c' - 当前文件的目录.

'r' - 包含以下目录或文件之一的最近祖先:.git .hg .svn .bzr

'a' - 与c类似,但仅当CtrlP外部的当前工作目录不是当前文件目录的直接祖先时.

0或''(空字符串) - 禁用此功能.

资料来源:https://github.com/kien/ctrlp.vim

另外,这里:https://github.com/kien/ctrlp.vim/issues/292,作者提供了一种设置完整路径的方法:

:CtrlP /var/www/myproject/bla/bla/theme
Run Code Online (Sandbox Code Playgroud)


小智 11

我用:

let g:ctrlp_cmd='CtrlP :pwd'
Run Code Online (Sandbox Code Playgroud)

这个重映射ctrlp命令到:ctrlp:pwd


Ram*_*Ram 8

您可以在vimrc中使用以下内容

noremap <C-a> :CtrlP /yourdir/<CR>
Run Code Online (Sandbox Code Playgroud)

无论何时按ctrl+actrlp都会将/ yourdir /作为根目录

  • 我发现`noremap &lt;Ca&gt; :CtrlP ~&lt;CR&gt;` 非常有用。 (2认同)