По правде сказать Project был для меня хорош какое то время пока не нашел для себя fuzzyfinder, в связке с sessionman, работа осуществляется следующим образом качаем менеджер сессий http://www.vim.org/scripts/script.php?s cript_id=2010
или любой другой неважно главное чтобы он запоминал путь к вашему проекту к примеру /home/v_silent/work/myproject
Прописываем в .vimrc:
noremap ,o :ListSessions<cr>
noremap ,s :SaveSession<cr>
там же прописываем настройки для рекурсивного обхода для fuzzyfinder
http://www.vim.org/scripts/script.php?s cript_id=1984
let g:FuzzyFinderOptions = { 'Base':{}, 'Buffer':{}, 'File':{}, 'MruFile':{}, 'MruCmd':{}, 'FavFile':{}, 'Dir':{}, 'Tag':{}, 'TaggedFile':{}}
let g:FuzzyFinderOptions.Base.abbrev_map = {'^':["**/"]}
"лимит списка файлов в выпадающем меню
let g:FuzzyFinderOptions.MruFile.max_item = 20
"лимит списка наиболее часто редактируемых файлов в выпадающем меню
let g:FuzzyFinderOptions.MruCmd.max_item = 20
let g:FuzzyFinderOptions.File.matching_limit = 20
"Исключаем расширения которые мы не хотим видеть в выпадающем меню
let g:FuzzyFinderOptions.File.excluded_path = '\v\~$|\.o$|\.exe$|\.gz$|\.sql$|\.bak$|\ .gif$|\.small$|\.big$|\.middle$|\.\d+$|\ .png$|\.jpg$|\.swp$|\.cvs$|\.cvsignore$| ((^|[/\\])\.[/\\]$)'
" Тоже самое для директорий только почему то CVS у меня все равно просматривается
let g:FuzzyFinderOptions.Dir.excluded_path = '\v(^|[/\\])\.{1,2}[/\\]$|CVS$|\.CVS$'
" И наконец привязки которые вы можете заменить на свои
" Cписок открытых файлов/ буферов
map <F5> :FuzzyFinderBuffer<cr>
vmap <F5> <esc>:FuzzyFinderBuffer<cr>i
imap <F5> <esc>:FuzzyFinderBuffer<cr>i
" F6 - предыдущий буфер
" Часто редактируемые файлы
map <F6> :FuzzyFinderMruFile<cr>
vmap <F6> <esc>:FuzzyFinderMruFile<cr>
imap <F6> <esc>:FuzzyFinderMruFile<cr>
" Все файлы проекта, поиск файла по мере набора имени файла либо директории .Ultra!!!
map <F12> :FuzzyFinderFile<cr>
vmap <F12> <esc>:FuzzyFinderFile<cr>i
imap <F12> <esc>:FuzzyFinderFile<cr>i
"поиск файла в проекте имя которого совпадает с именем файла под курсором !!! Ultra!!!
map gf :FuzzyFinderFile <C-r>=expand('<cword>')<CR><CR>
map <S-F12> :FuzzyFinderRemoveCache<cr>
" Во время работы над проектом вы добавляете новые файлы необходимо удалить кэш
imap <S-F12> <esc>:FuzzyFinderRemoveCache<cr>
vmap <S-F12> <esc>:FuzzyFinderRemoveCache<cr>
или любой другой неважно главное чтобы он запоминал путь к вашему проекту к примеру /home/v_silent/work/myproject
Прописываем в .vimrc:
noremap ,o :ListSessions<cr>
noremap ,s :SaveSession<cr>
там же прописываем настройки для рекурсивного обхода для fuzzyfinder
http://www.vim.org/scripts/script.php?s
let g:FuzzyFinderOptions = { 'Base':{}, 'Buffer':{}, 'File':{}, 'MruFile':{}, 'MruCmd':{}, 'FavFile':{}, 'Dir':{}, 'Tag':{}, 'TaggedFile':{}}
let g:FuzzyFinderOptions.Base.abbrev_map = {'^':["**/"]}
"лимит списка файлов в выпадающем меню
let g:FuzzyFinderOptions.MruFile.max_item = 20
"лимит списка наиболее часто редактируемых файлов в выпадающем меню
let g:FuzzyFinderOptions.MruCmd.max_item = 20
let g:FuzzyFinderOptions.File.matching_limit = 20
"Исключаем расширения которые мы не хотим видеть в выпадающем меню
let g:FuzzyFinderOptions.File.excluded_path = '\v\~$|\.o$|\.exe$|\.gz$|\.sql$|\.bak$|\
" Тоже самое для директорий только почему то CVS у меня все равно просматривается
let g:FuzzyFinderOptions.Dir.excluded_path = '\v(^|[/\\])\.{1,2}[/\\]$|CVS$|\.CVS$'
" И наконец привязки которые вы можете заменить на свои
" Cписок открытых файлов/ буферов
map <F5> :FuzzyFinderBuffer<cr>
vmap <F5> <esc>:FuzzyFinderBuffer<cr>i
imap <F5> <esc>:FuzzyFinderBuffer<cr>i
" F6 - предыдущий буфер
" Часто редактируемые файлы
map <F6> :FuzzyFinderMruFile<cr>
vmap <F6> <esc>:FuzzyFinderMruFile<cr>
imap <F6> <esc>:FuzzyFinderMruFile<cr>
" Все файлы проекта, поиск файла по мере набора имени файла либо директории .Ultra!!!
map <F12> :FuzzyFinderFile<cr>
vmap <F12> <esc>:FuzzyFinderFile<cr>i
imap <F12> <esc>:FuzzyFinderFile<cr>i
"поиск файла в проекте имя которого совпадает с именем файла под курсором !!! Ultra!!!
map gf :FuzzyFinderFile <C-r>=expand('<cword>')<CR><CR>
map <S-F12> :FuzzyFinderRemoveCache<cr>
" Во время работы над проектом вы добавляете новые файлы необходимо удалить кэш
imap <S-F12> <esc>:FuzzyFinderRemoveCache<cr>
vmap <S-F12> <esc>:FuzzyFinderRemoveCache<cr>
1 comment | Leave a comment
