ctrlp still searches the ignored directory
ctrlp, vim
Solution
If you type `:help ctrlp-options` and read a bit, you will find:
Note #1: by default, wildignore and g:ctrlp_custom_ignore only apply when globpath() is used to scan for files, thus these options do not apply when a command defined with g:ctrlp_user_command is being used.
Thus, you may need to `unlet g:ctrlp_user_command` (possibly set to a default command) to actually use `wildignore` as advised by @TomCammann. For instance, in your `~/.vimrc`, add:
if exists("g:ctrlp_user_command")
unlet g:ctrlp_user_command
endif
set wildignore+=*\\vendor\\**
After that, you need to refresh your `ctrlp` cache: in Vim, press F5 in `ctrlp` mode, or run `:CtrlPClearAllCaches`, or remove the cache directory directly in your shell:
rm -r ~/.cache/ctrlp/ # On Linux
Problem
I tried to put ignored setting in .vimrc But when I used the `ctrlp` to search under rails app folder It still search the `vendor` folder, so it took lots of time. But when the search was done, I couldn't search anything under the `vendor` It was so strange! How to fix it. Here is my .vimrc setting file. 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$' \ } ``` When I appended the code in the end of `.vimrc` ``` 217 let g:NERDTreeIgnore=['\~$', 'vendor'] 218 set wildignore+=*\\vendor\\** ``` It worked when my first time to use the CTRLP to search under the RAILS app folder, But still `NOT` worked in the following times. I guess maybe there are some settings will disable the ignored setting ? Here are the structure of my folder ``` . ├── Gemfile ├── Gemfile.lock ├── README.rdoc ├── Rakefile ├── app │ ├── assets │ ├── controllers │ ├── helpers │ ├── mailers │ ├── models │ ├── uploaders │ ├── views │ └── workers ├── auto.sh ├── config │ ├── application.rb │ ├── application.yml │ ├── boot.rb │ ├── database.yml │ ├── environment.rb │ ├── environments │ ├── initializers │ ├── locales │ ├── macbookair_whenever_schedule.rb │ ├── menu_navigation.rb │ ├── navigation.rb │ ├── resque.god │ ├── resque_schedule.yml │ ├── routes.rb │ ├── schedule.rb -> ubuntu_whenever_schedule.rb │ ├── tinymce.yml │ └── ubuntu_whenever_schedule.rb ├── config.ru ├── db │ ├── development.sqlite3 │ ├── migrate │ ├── migrate_should_be_skip │ ├── production.sqlite3 │ ├── schema.rb │ └── seeds.rb ├── doc │ └── README_FOR_APP ├── lib │ ├── assets │ ├── auto_tools │ ├── tasks │ └── url_automation_module.rb ├── log │ ├── apalog │ ├── development.log │ ├── passenger.80.log │ ├── production.log │ └── prodution.log ├── output_name ├── public │ ├── 404.html │ ├── 422.html │ ├── 500.html │ ├── exports │ ├── favicon.ico │ ├── results.zip │ ├── robots.txt │ ├── sandbox │ └── uploads ├── script │ ├── delayed_job │ └── rails ├── test │ ├── fixtures │ ├── functional │ ├── integration │ ├── performance │ ├── test_helper.rb │ └── unit ├── test.sh ├── tmp │ ├── cache │ ├── pids │ ├── restart.txt │ ├── sessions │ └── sockets ├── tmplog └── vendor └── bundle ```