Skip to content

Commit 7f6cd94

Browse files
committed
enhance codequery#filter_qf_results (implement reverse filter)
1 parent e563d8d commit 7f6cd94

File tree

1 file changed

+19
-3
lines changed

1 file changed

+19
-3
lines changed

autoload/codequery.vim

Lines changed: 19 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -253,11 +253,27 @@ endfunction
253253

254254

255255
" modify from someone's .vimrc
256-
function! codequery#filter_qf_results(query) abort
256+
function! codequery#filter_qf_results(args) abort
257+
let args = split(a:args, ' ')
258+
if len(args) > 1
259+
let query = args[1]
260+
let reverse_filter = 1
261+
else
262+
let query = args[0]
263+
let reverse_filter = 0
264+
endif
265+
echom query
266+
257267
let results = getqflist()
258268
for d in results
259-
if bufname(d['bufnr']) !~ a:query && d['text'] !~ a:query
260-
call remove(results, index(results, d))
269+
if reverse_filter
270+
if bufname(d['bufnr']) =~ query || d['text'] =~ query
271+
call remove(results, index(results, d))
272+
endif
273+
else
274+
if bufname(d['bufnr']) !~ query && d['text'] !~ query
275+
call remove(results, index(results, d))
276+
endif
261277
endif
262278
endfor
263279
call setqflist(results)

0 commit comments

Comments
 (0)