清除vim中的quickfix列表

Sid*_*der 8 vim

我正在尝试清除Vim中的Quickfix列表,因为我想摆脱突出显示,如果我意外地创建了一个巨大的列表,我想要清理它,以便vim再次响应.关闭窗口不会清除列表而是清除内容.

Sid*_*der 12

到目前为止我唯一的出路就是

function ClearQuickfixList()
  call setqflist([])
endfunction
command! ClearQuickfixList call ClearQuickfixList()
nmap <leader>cf :ClearQuickfixList<cr>
Run Code Online (Sandbox Code Playgroud)

编辑(感谢Peter Rincker):

一个更好的命令正在使用cexpr []命令是

command! ClearQuickfixList cexpr []
Run Code Online (Sandbox Code Playgroud)

  • 还有`:cexpr`.例如`:cexpr []`将清除quickfix列表.你的命令会变成`命令!ClearQuickfixList cexpr []` (11认同)
  • 注意:使用 `:cexpr []` 您将创建新列表;使用 `:call setqflist([], 'r')` 您将替换当前的(清除它) (2认同)