ViM + CtrlP: g:ctrlp_custom_ignore не используется
В ~/.vimrc
Я установил:
" Configure CtrlP
" Ctrl-O opens CtrlP for the current word.
map <C-o> <C-P><C-\>w
" Ensure we aren't using a custom command.
if exists("g:ctrl_user_command")
unlet g:ctrlp_user_command
endif
" Specify the cache directory.
let g:ctrlp_cache_dir = $HOME . '/.cache/ctrlp'
" Ignore certain files and directories.
let g:ctrlp_custom_ignore = {
\ 'dir': '\v(\.git|\.hg|\.svn\|vendor|tmp)$',
\ 'file': '\v\.(swp|swo)$',
\ 'link': '',
\ }
" Disable opening files in a new buffer ("e").
" Default to opening files in a new tab ("t").
let g:ctrlp_prompt_mappings = {
\ 'AcceptSelection("e")': [],
\ 'AcceptSelection("t")': ['<cr>', '<2-LeftMouse>'],
\ }
Тем не менее, CtrlP продолжает индексировать файлы в vendor/
:
$ grep -c '^vendor/' ~/.cache/ctrlp/%Users%nick%src%todo.txt
11759
Если я удалю g:ctrlp_custom_ignore
и добавьте это:
set wildignore+=*/tmp/*,*.so,*.swp,*.swo,*/vendor/*,*/\.git/*
CtrlP не индексирует файлы в vendor/
, Почему CtrlP не использует g:ctrlp_custom_ignore
?
Связанные вопросы SO: