有没有办法将“:ilist pattern”的输出重定向到Vim quickfix窗口?

时间:2013-12-03 15:37:08

标签: vim

我一直使用quickfix窗口来遍历cscope结果。

所以我想知道“包含文件搜索”(:help ilist)是否有类似内容

2 个答案:

答案 0 :(得分:1)

首先,:ilist搜索当前缓冲区,而不是“包含文件搜索”。

我的GrepHere plugin提供的:GrepHere命令与:ilist类似,但会将匹配项放入 quickfix窗口

答案 1 :(得分:1)

来自/r/vim

function! WordOccurance()
    redir => output
        silent! exec join(['ilist', expand('<cword>')], ' ')
    redir END
    let lines = split(output, '\n')
    if lines[0] =~ '^Error detected'
        echomsg "Could not find the word in file"
        return
    endif
    let [filename, line_info] = [lines[0], lines[1:-1]]
    let qf_entries = map(line_info, "{
            \ 'filename': filename,
            \ 'lnum': split(v:val)[1],
            \ 'text': getline(split(v:val)[1])
            \ }"
        \ )
    call setqflist(qf_entries)
    cwindow
endfunction
noremap <silent> ]I :call WordOccurance()<CR>