标签: ctrlp

在CtrlP上性能下降,它无法忽略某些文件夹

我试图忽略vendor通过添加以下设置,.vimrcctrlP通过键入启动我ff

map ff :CtrlP<.><cr>
Run Code Online (Sandbox Code Playgroud)

但是,它仍然试图索引zeus包含vendor文件夹的文件夹下的所有文件.

在此输入图像描述

但在完成索引后,我仍然可以NOT搜索下的文件vendor,

在此输入图像描述

为什么CtrlP需要很长时间才能编入索引?

129 "add ctrlp.vim setting
130 ""
131 set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*/vendor/*,*/\.git/*
132 let g:ctrlp_custom_ignore = 'tmp$\|\.git$\|\.hg$\|\.svn$\|.rvm$|.bundle$\|vendor'
133 let g:ctrlp_working_path_mode = 'ra'
134 let g:ctrlp_match_window_bottom=1
135 let g:ctrlp_max_height=25
136 let g:ctrlp_match_window_reversed=0
137 let g:ctrlp_mruf_max=500
138 let g:ctrlp_follow_symlinks=1
139 let g:ctrlp_clear_cache_on_exit=0
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

这是我的.vimrc,我以为可能会有一些设置相互冲突

hi  Comment  ctermfg=6

"make vim save and load the folding of the document each time it …
Run Code Online (Sandbox Code Playgroud)

vim ctrlp

28
推荐指数
3
解决办法
1万
查看次数

在ctrlp + vim中使用ag

我想用ctrlp和vim使用ag(银色搜索器).我在.vimrc中有这个:

if executable("ag")
    set grepprg=ag\ --nogroup\ --nocolor
    let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'
endif

let g:ctrlp_show_hidden = 1

set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*/.tmp/*,*/.sass-cache/*,*/node_modules/*,*.keep,*.DS_Store,*/.git/*
Run Code Online (Sandbox Code Playgroud)

我希望ctrlp包含隐藏文件但隐藏文件.如果我添加-u到ag命令它显示所有隐藏文件但不尊重wildignore或.gitignore.有可能让它尊重这些吗?

vim ctrlp

22
推荐指数
1
解决办法
1万
查看次数

ctrlp仍会搜索被忽略的目录

我试图在.vimrc中放置忽略的设置

但是当我用ctrlprails搜索rails app文件夹时

它仍然搜索vendor文件夹,因此花了很多时间.

但是当搜索完成后,我无法在搜索下搜索任何内容 vendor

太奇怪了!如何解决它.

这是我的.vimrc设置文件.

http://d.pr/i/yMtK http://d.pr/i/Hy4u

" Sane Ignore For ctrlp
let g:ctrlp_custom_ignore = {
  \ 'dir':  '\.git$|vendor\|\.hg$\|\.svn$\|\.yardoc\|public\/images\|public\/system\|data\|log\|tmp$',
  \ 'file': '\.exe$\|\.so$\|\.dat$'
  \ }
Run Code Online (Sandbox Code Playgroud)

当我在最后添加代码 .vimrc

217 let g:NERDTreeIgnore=['\~$', 'vendor']
218 set wildignore+=*\\vendor\\**
Run Code Online (Sandbox Code Playgroud)

当我第一次使用CTRLP在RAILS应用程序文件夹下搜索时它工作,但仍然NOT在以下时间工作.

我想也许有些设置会禁用忽略的设置?

这是我的文件夹的结构

.
??? Gemfile
??? Gemfile.lock
??? README.rdoc
??? Rakefile
??? app
?   ??? assets
?   ??? controllers
?   ??? helpers
?   ??? mailers
?   ??? models
?   ??? uploaders
?   ??? views
? …
Run Code Online (Sandbox Code Playgroud)

vim ctrlp

18
推荐指数
4
解决办法
9842
查看次数

如何重新索引CtrlP Vim插件?

我一直在使用CtrlP一段时间,但我仍然没有弄清楚如何重新索引它.因此,每当我想创建一个新文件时,我必须关闭所有现有的vim会话,创建该文件,然后重新打开它们.否则新文件将不会显示在结果中.

虽然这对屁股来说确实是一个巨大的痛苦,但我一直这样做而没有多想.今天我决定最后问.有谁知道如何重新索引CtrlP?我在文档中找不到它.

vim macvim ctrlp

17
推荐指数
1
解决办法
6376
查看次数

Ctrl-p找不到我的文件?

以下是我的ctr-p配置:

let g:ctrlp_map = '<Leader>t'
let g:ctrlp_match_window_bottom = 0
let g:ctrlp_match_window_reversed = 0
let g:ctrlp_working_path_mode = 'ra' 
let g:ctrlp_root_markers = ['.ctrlp']
let g:ctrlp_dotfiles = 0                                                                                                                                           
let g:ctrlp_switch_buffer = 0
Run Code Online (Sandbox Code Playgroud)

我在项目根目录中放了一个文件.ctrlp.

我输入,t和,d找到我的完整文件名"PhotoArtHacker",其完整路径为12083_cmcc_svn4456/mediatek/platform/mt6589/hardware/camera/hal/adapter/oppo/PhotoArtHacker.cpp.

虽然,我不知道为什么文件没有出现在搜索结果中?我的文件深度太深了吗?

顺便说一下,android项目包含数千个文件.

vim ctrlp

12
推荐指数
2
解决办法
6450
查看次数

使用vundle在VIM中安装ctrlp

我正在使用vundle作为vim的插件管理器.

但是我在安装ctrlp插件时遇到问题.

当我执行时:BundleInstall ctrlp,它会输出以下日志并出现致命错误:

[131003 9时39分27秒]捆绑坚/ ctrlp
[131003 9时39分27秒] $ GIT中克隆--recursive ' https://github.com/kien/ctrlp.git '"/home/username/.vim/束/ ctrlp '[131003 9点39分27秒]>克隆到' /home/username/.vim/bundle/ctrlp'...^@fatal: https://github.com/kien/ctrlp.git/info / refs?service = git-upload-pack not found:你在服务器上运行了git update-server-info吗?^ @
[131003 09:39:28] Helptags:
[131003 09:39:28]:helptags/home /username/.vim/bundle/vundle/doc/
[131003 09:39:28]:helptags /home/username/.vim/bundle/vim-fugitive/doc/
[131003 09:39:28]:helptags/home /username/.vim/bundle/vim-colors-solarized/doc/
[131003 09:39:28]:helptags /home/username/.vim/bundle/nerdtree/doc/
[131003 09:39:28]帮助标签:4捆绑处理
[131003 09:49:39]捆绑ctrlp
[131003 09:49:39] $ git clone --recursive'https://github.com/vim-scripts/ ctrlp.git ''/
home/username..vim/bundle/ctrlp ' [131003 09:49:39]>克隆到'/home/username/.vim/bundle/ctrlp'...^@fatal:https : //github.com/vim-scripts/ctrlp.gi t/info/refs?service = git-upload-pack not found:你在服务器上运行了git update-server-info吗?^ @ [131003 09:49: 40] Helptags:
[131003 09:49:40]:helptags …

vim vim-plugin ctrlp vundle

11
推荐指数
2
解决办法
2万
查看次数

如何根据NerdTree的root更改CtrlP的搜索目录?

我希望我的CtrlP搜索目录在我更改NerdTree的根目录时随时动态更改.

插件插件如何在vim中工作?

vim ctrlp

11
推荐指数
1
解决办法
4060
查看次数

CtrlP:忽略git仓库中子目录中的文件

对于我的回购,假设它被称为 top

top\
  .gitignore
  foo\
  bar\
Run Code Online (Sandbox Code Playgroud)

我希望CtrlP列出文件

  1. foo\
  2. 顶部\中.gitignore定义不被忽略

如果我进入top\foo\,并从那里打开vim,1会满意而不是2.
如果我打开vim top\,2会满意但不是1.

我如何实现1和2?

我尝试了这个gitignore vim脚本,但它只gitignore在我在repo的根文件夹中打开vim时解析,所以我不能同时做1和2.
同样的let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""',ag不试图去repo root并从那里读gitignore.
设置g:ctrlp_working_path_moder让CtrlP .gitignore在顶级文件夹中受到尊重,但是top\Ctrl 下会列出所有内容.我只想要文件foo\.

谢谢.

git vim gitignore ctrlp

9
推荐指数
1
解决办法
1593
查看次数

Vim Ctrlp无法正确解析Ag(银色搜索) - 标注选项

ag命令行上使用时,如下所示:

$> ag . --ignore="*node_modules/*/node_modules" -l --nocolor -f -U -g ""

我能够避免在我的节点服务中搜索多个深度级别的任何node_modules目录,这是所需的行为.

但是,当我在我的vimrc中使用以下内容时,不会忽略多个深度级别的node_modules目录:

" Use The Silver Searcher https://github.com/ggreer/the_silver_searcher
if executable('ag')
  " Use Ag over Grep
  set grepprg=ag\ --nogroup\ --nocolor

  " Use ag in CtrlP for listing files. Lightning fast and respects .gitignore
  let g:ctrlp_user_command = 'ag %s --ignore="*node_modules/*/node_modules" -l --nocolor -f -U -g ""'
endif
Run Code Online (Sandbox Code Playgroud)

如何设置agctrlp正确忽略这些目录?在移植到vimrc时,不确定是否需要使用不同的语法(如regex)或其他一些问题.

我没有把它放在野外的原因是我的.gitignore中忽略了node_modules,所以我使用该-U选项忽略任何vcs文件(从而允许ag搜索node_modules) - 但是这个选项似乎也绕过了wildignore.

vim ctrlp

7
推荐指数
1
解决办法
2269
查看次数

如何配置ctrlp以便在git repo之外使用ag?

我用agctrlp,如建议在这里:

if executable('ag')
  set grepprg=ag\ --nogroup\ --nocolor
  let g:ctrlp_user_command = 'ag %s -l --nocolor -g ""'
  let g:ctrlp_use_caching = 0
else
  let g:ctrlp_custom_ignore = '\.git$\|\.hg$\|\.svn$'
  let g:ctrlp_user_command = ['.git', 'cd %s && git ls-files . --cached --exclude-standard --others']
endif
Run Code Online (Sandbox Code Playgroud)

如果我从包含文件夹的项目文件夹中运行vim,这非常有用.git.但是,每当我从一个不是git项目根目录的目录运行Vim时,我得到一个空文件列表(没有结果).为了澄清,使用以下文件夹层次结构:

Proj1/ # ctrlp works; finds foo.js and bar.js (unless they are .gitignored)
  .git/
  bin/
    foo.js
    bar.js

Proj2/ # ctrlp doesn't work; has empty file list
  bin/
    foo.py
    bar.py
Run Code Online (Sandbox Code Playgroud)

当我从同一目录中的命令行运行它时,实际的ag命令ag …

git vim ctrlp ag

7
推荐指数
1
解决办法
584
查看次数

标签 统计

ctrlp ×10

vim ×10

git ×2

ag ×1

gitignore ×1

macvim ×1

vim-plugin ×1

vundle ×1