素晴らしい ctrlp.vimプラグイン に出会いました。これは、以前使用した Command-Tプラグイン の代替として適しています。 Command-Tで気に入らなかったのは、vimを起動してから初めて起動したときにファイルを再スキャンするのに20〜30秒かかることです。
CtrlPは非常に高速に動作しますが、新しく作成されたファイルを自動的に再スキャンするようには見えません。手動で再スキャンをトリガーするにはどうすればよいですか?
ありがとう!
ドキュメント から:
<F5>
- Refresh the match window and purge the cache for the current directory.
- Remove deleted files from MRU list.
これは、すでにctrl-pモードにいることを前提としています。クエリの途中でF5を押すことができることに注意してください。つまり、いくつかの文字を入力して、最近更新されたファイルと一致しないことを見つけ、F5を押してすぐに更新できます。ファイルがctrl-pキャッシュに追加されたばかりの場合、自動的に一致を表示します。
必要に応じて、保存が発生したときにキャッシュを自動的に無効化できるため、次回の使用時に強制的に更新されます。
vimrcにこれを入れてください (クレジット docwhat ):
" CtrlP auto cache clearing.
" ----------------------------------------------------------------------------
function! SetupCtrlP()
if exists("g:loaded_ctrlp") && g:loaded_ctrlp
augroup CtrlPExtension
autocmd!
autocmd FocusGained * CtrlPClearCache
autocmd BufWritePost * CtrlPClearCache
augroup END
endif
endfunction
if has("autocmd")
autocmd VimEnter * :call SetupCtrlP()
endif
残念ながら、キャッシュをバックグラウンドで自動的に最新の状態に保つ方法はありません。
これを.vimrcに追加して、ctrlpキャッシングをオフにします
g:ctrlp_use_caching = 0
これは古い質問であることは知っていますが、非常に単純なのでコメントする必要があります。これを.vimrcに入れてください
:nnoremap <c-p> :CtrlPClearCache<bar>CtrlP<cr>
これによりキャッシュが更新され、CtrlPが呼び出されます。不足しているファイルはもうありません。