14

私は FuzzyFinder を使用していますが、検索対象のファイルを除外するように FuzzyFinder に指示する方法を知りたいと思っていました。今のところ、プラグイン コードを変更しましたが、もっと簡単な方法があるはずです。

結果に表示される .class ファイルを除外したい。これらのファイルをスキップするように FuzzyFinder に指示する方法に関するヒント/ヒントはありますか?

4

3 に答える 3

20
let g:fuf_file_exclude = '\v\~$|\.o$|\.exe$|\.bak$|\.swp$|\.class$'

詳細についてはを使用:help fuf-optionsしてください。

于 2010-11-09T12:06:51.000 に答える
1

これは、独自のlcd(ローカルの現在のディレクトリ) を持つさまざまなウィンドウとタブで機能する最も自動化されたソリューションです。

Vimrc にはウィンドウごとまたはタブごとにFufFile除外変数を設定するという概念がないため、実行または関連する関数を実行するたびに除外変数をリセットする必要があります。

これをあなたの中に入れてください.vimrc

" FuzzyFinder
" -----------------------------------------------------------------------------
function! FufSetIgnore()

    let ignorefiles = [ $HOME . "/.gitignore", ".gitignore" ]
    let exclude_vcs = '\.(hg|git|bzr|svn|cvs)'
    let ignore = '\v\~$'

    for ignorefile in ignorefiles

        if filereadable(ignorefile)
            for line in readfile(ignorefile)
                if match(line, '^\s*$') == -1 && match(line, '^#') == -1
                    let line = substitute(line, '^/', '', '')
                    let line = substitute(line, '\.', '\\.', 'g')
                    let line = substitute(line, '\*', '.*', 'g')
                    let ignore .= '|^' . line
                endif
            endfor
        endif

        let ignore .= '|^' . exclude_vcs
        let g:fuf_coveragefile_exclude = ignore
        let g:fuf_file_exclude = ignore
        let g:fuf_dir_exclude = ignore

    endfor
endfunction

# Bonus: My custom key mappings for FuzzyFinder
# Calls the function to set the exclude variables, then runs FuzzyFinder
nn <Tab>   :call FufSetIgnore() <BAR> :FufFile<CR>
nn <S-Tab> :call FufSetIgnore() <BAR> :FufFile **/<CR>
nn <F3>    :call FufSetIgnore() <BAR> :FufFile **/<CR>
于 2013-06-26T14:25:39.410 に答える