Langsame Leistung bei CtrlP, es funktioniert nicht um einige Ordner zu ignorieren
Ich versuchte zu ignorieren, die vendor
indem Sie die folgende Einstellung in .vimrc
und ich meine ctrlP
durch Eingabe ff
map ff :CtrlP<.><cr>
Jedoch, es immer noch versucht zu indizieren alle Dateien, die unter der zeus
Ordner einschließlich vendor
Ordner.
Aber nach Beendigung index, ich kann immer noch NOT
Suche die Dateien unter vendor
,
Warum CtrlP
lange Zeit zu indizieren ?
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
Hier ist mein .vimrc
ich dachte, es gibt vielleicht einige Einstellungen widersprüchliche einander
hi Comment ctermfg=6
"make vim save and load the folding of the document each time it loads"
""also places the cursor in the last place that it was left."
au BufWinLeave *.* mkview
au BufWinEnter *.* silent loadview
"function SetCafeOptions()
"CoffeeCompile
":set nonu
":res -24
":res +24
"endfunction
set encoding=utf-8
set fileencoding=utf-8
colorscheme elflord
set smartindent
set tabstop=4
set expandtab
set shiftwidth=4
"make it autoreload
set autoread
"auto move it last time the position you viewed
"make vim save and load the folding of the document each time it loads"
""also places the cursor in the last place that it was left."
"try to set show ansi color
if &term=="ansi"
set t_Co=0
endif
"set expandtab
filetype on
if has("cscope")
set csprg=/usr/bin/cscope
set csto=0
set cst
set nocsverb
" add any database in current directory
if filereadable("cscope.out")
cs add cscope.out
" else add database pointed to by environment
elseif $CSCOPE_DB != ""
cs add $CSCOPE_DB
endif
set csverb
set cscopetag
set cscopequickfix=s-,g-,c-,d-,t-,e-,f-,i-
endif
"let Tlist can close windows at one time
let Tlist_Show_One_File=1
let Tlist_Exit_OnlyWindow=1
let Tlist_Ctags_Cmd = '/usr/local/bin/ctags'
" Key map
" Presee F4 and you can open the NERDTree
nnoremap <silent> <F4> :NERDTree<CR>
"nnoremap <silent> <F3> :!/usr/bin/env python %<CR>
" Show function List with Tlist
nnoremap <F12> :TlistToggle<CR>
" Map ctrl+q to ctrlw+ctrlw
"
"nnoremap <silent> <C-q> :<C-w><C-w>
"switch in splitted window
map <c-d> <c-w>l
map <c-a> <c-w>h
"set highlight
set hlsearch
"set autocomplet
"autocmd BufNewFile,BufRead *.html.erb set filetype=html.eruby
autocmd BufNewFile,BufRead *.html.erb set filetype=erb.html.eruby
filetype plugin indent on
"auto import python template
autocmd bufnewfile *.py 0r ~/common_lib/python_lib/tmpl.py
map ff :CtrlP<.><cr>
"set NerdTreeSize
let g:NERDTreeWinSize=12
let g:NERDTreeIgnore=['\.vim$', '\~$', '\vendor$']
"auto close the nerdtress window whe you open new file
"let g:ctrlp_dont_split = 'nerdtree'
set nocompatible " explictly get out of vi-compatible mode
set background=dark " we plan to use a dark background
syntax on " syntax highlighting on
set number " turn on line numbers
set ruler "always show current position along the bottom
set incsearch " do highlight as you type you search phrase
set ignorecase " case insensitive by default
set smartcase " if there are caps, go case-sensitive
"Rope vim
"let $PYTHONPATH .= ":~/install/ropehg/rope:~/install/ropehg/ropemode:~/install/ropehg/ropevim"
"source ~/install/ropehg/ropevim/ropevim.vim
"let g:pymode_rope_goto_def_newwin = "new"
"let ropevim_vim_completion=1
"Use Ctrl + ] . to autocomple
inoremap <C-]> <C-R>=RopeCodeAssistInsertMode()<CR>
map <leader>j :RopeGotoDefinition<CR>
map <leader>r :RopeRename<CR>
" Load the whole plugin
let g:pymode = 1
" Load run code plugin
let g:pymode_run = 1
"add ctrlp.vim setting
""
set wildignore+=*/tmp/*,*.so,*.swp,*.zip,*/vendor/*,*/\.git/*
let g:ctrlp_custom_ignore = 'tmp$\|\.git$\|\.hg$\|\.svn$\|.rvm$|.bundle$\|vendor'
let g:ctrlp_working_path_mode = 0
let g:ctrlp_match_window_bottom=1
let g:ctrlp_max_height=25
let g:ctrlp_match_window_reversed=0
let g:ctrlp_mruf_max=500
let g:ctrlp_follow_symlinks=1
let g:ctrlp_clear_cache_on_exit=0
"Vundle
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
Bundle 'gmarik/vundle'
Bundle 'tpope/vim-surround'
Bundle 'Raimondi/delimitMate'
"coffee script"
Bundle 'kchmck/vim-coffee-script'
Bundle 'ack.vim'
Bundle 'matchit.zip'
Bundle 'kien/ctrlp.vim'
"Markdown"
"Bundle 'plasticboy/vim-markdown'
""Vim-scripts repo
"Bundle 'The-NERD-Commenter'
Bundle 'pep8'
""Bundle 'AutoClose'
Bundle 'desert-warm-256'
Bundle 'https://github.com/altercation/vim-colors-solarized.git'
filetype plugin indent on
nmap <leader>a <Esc>:Ack ""
"folding code
nnoremap <space> za
vnoremap <space> zf
" pep8
let g:pep8_map='<leader>8'
"coffee script"
call pathogen#infect()
let Tlist_Use_Right_Window = 1
"autocmd BufEnter * if &filetype == "" | setlocal ft=python | endif
"markdown https://github.com/plasticboy/vim-markdown/wiki"
"let g:vim_markdown_folding_disabled=1
"auto exec ruby and coffee script with F5 , remeber to save file before launching
autocmd FileType python map <leader>p :!python %<cr>
autocmd FileType ruby,rb map <leader>5 :w!<cr>:!ruby %<cr>
autocmd FileType * map <leader>e :qa!<cr>
"set extension .god as a Ruby file"
"au BufNewFile,BufRead *.god set filetype=ruby
"autocmd FileType coffee nmap <F5> :CoffeeCompile<cr>
"autocmd FileType coffee map <F5> :call SetCafeOptions()<cr>
"so ~/.vim/snippets/support_functions.vim
set re=1
autocmd Filetype gitcommit setlocal spell textwidth=72
" enable per-project .vimrc files
set exrc
" " Only execute safe per-project vimrc commands
set secure"
Kommentare dem Thema
Sie haben ein problem mit CtrlP, warum nutzen Sie nicht Ihre aushängen tracker? Das heißt, Sie sollten versuchen,
*/vendor/**/*
in wildignore
. Hast du jemals eine Antwort finden? Habe das gleiche Problem.
InformationsquelleAutor der Frage newBike | 2014-01-25
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier sind ein paar Tipps, sollte auf jeden Fall beschleunigen ctrlp :
Im obigen Beispiel die erste option, die sagt ctrlp zu bestehen, den cache im konfigurierten Speicherort, so dass, wenn Sie starten Sie den vim erneut, wird es dort abgelesen und das laden der cache (viel schneller).
Die zweite option konfiguriert ctrlp zu verwenden, ag (the_silver_searcher) anstelle von vim native
globpath()
apis, um nach Dateien zu suchen, dies wird drastisch verbessern Sie die scan-Geschwindigkeit, wenn Sie nicht möchten, zu verwendenag
verwenden, können Sie auch plain oldgrep
und ist es immer noch wesentlich schneller sein sollten. Überprüfen Sie:h 'g:ctrlp_user_command'
für mehr details.InformationsquelleAutor der Antwort Dhruva Sagar
Als ich erklärte hier, wenn Sie
:help ctrlp-options
und wenig Lesen, finden Sie:So, müssen Sie möglicherweise
unlet g:ctrlp_user_command
(möglicherweise standardmäßig den Befehl) wirklich zu nutzenwildignore
. Zum Beispiel, in Ihrem~/.vimrc
hinzufügen:Nach, dass Sie müssen aktualisieren Sie Ihren
ctrlp
cache: in Vim, drücken Sie die F5-Taste inctrlp
- Modus, oder führen Sie:CtrlPClearAllCaches
oder entfernen Sie das cache-Verzeichnis direkt in der shell:Als für die Indizierung Teil (das scheint Ihr problem zu sein), sollte Sie Ihrer ignorier-Regeln. Sie können überprüfen, dass die indizierten Dateien in
~/.cache/ctrlp/%path%to%your%project%folder.txt
.InformationsquelleAutor der Antwort BenC
Letzte Ausweg für einen schnellen Start
Versuchte ich alles, was ich an verschiedenen stellen gefunden um die Indizierung zu verbessern Geschwindigkeit meines ctrlp, aber nichts half.
Am Ende, ließ ich mich mit dieser:
Es hält die ctrlp cache nach dem schließen von VIM, so dass der nächste start-up schnell. Aktualisieren Sie den cache manuell durch drücken der F5-Taste jederzeit die Sie benötigen.
InformationsquelleAutor der Antwort Omid
Fanden dieses bit während der Suche rund um das Internet herum, und es hat die Indizierung und die Suche von Dateien, instant.
Bin ich nicht ganz erfassen, was hier passiert, also wenn jemand ein wenig mehr wissen zu sezieren, ich würde gerne wissen, was hinter den kulissen geschieht.
InformationsquelleAutor der Antwort gjunkie