2010-10-21 3 views
0

Я пытаюсь настроить Vim, 'path' и 'suffixesadd' поэтому, когда я использую gf над FILE_NAME и PWD является /some/dir/, он открывает /some/dir/FILE_NAME/File_Name.xmlVim: гс открывает каталоги, а не файлы

В vimrc я поставил:

set suffixesadd=.xml 
set path=.,dir/** 

Но вместо открытия File_Name.xml открывает каталог FILE_NAME

Что я должен сделать, чтобы настроить Vim так он ищет файлы б перед каталогами?

PS: Im использованием Gvim в Windows, и есть NERD плагин активен

+3

Справку включает «Программные инструменты, которые обычно используются программистами», и такие вопросы Vim, как это, как правило, получают лучший ответ здесь, чем на SU. –

ответ

1

Я не думаю, что это возможно с gf в качестве стандарта, но вы всегда можете сделать:

" Mapping to make it easier to use - <C-R><C-W> inserts the Word under 
" the cursor 
nmap gx :call CustomGFOpen("<C-R><C-W>")<CR> 
" The function that does the work 
function! CustomGFOpen(cursor_word) 
    " The directory name (e.g. FILE_NAME) is passed as the parameter 
    let dirname = a:cursor_word 
    " This is a regular expression substitution to convert 
    " FILE_NAME to File_Name 
    let filename = substitute(a:cursor_word, '\(^\|_\)\@<=\([A-Z]\)\([A-Z]\+\)', '\=submatch(2) . tolower(submatch(3))', 'g') 
    " The extension 
    let extension = '.xml' 
    " Join the whole lot together to get FILE_NAME/File_Name.xml 
    let relative_path = dirname . '/' . filename . extension 
    " Open that file 
    exe 'e' relative_path 
endfunction 
Смежные вопросы