我正在使用带有quickfix支持的cscope来设置set cscopequickfix=s-,c-,d-,i-,t-,e-
〜/ .vimrc文件
我可以使用:cnext
和:cprevious
命令在结果之间移动
我想要的是先在quickfix窗口中显示结果,然后在跳转到文件之前进行预览。
我尝试使用set switchbuf+=usetab,newtab
,但这会产生不同的结果而没有帮助。
是否有可用于获取此行为的插件或命令。
答案 0 :(得分:3)
我遇到了同样的问题并通过关闭它打开的缓冲区(第一个结果)来修复它,然后通过调用:cwindow
在quickfix窗口中打开结果。
这是我的密钥重映射的样子:
nnoremap <leader>s yiw:cs find s <C-R>=expand("<cword>")<CR><CR>:bd<CR>:cwindow<CR>/<C-R>0<CR>
说明:
yiw
- 将光标下的字词用于稍后突出显示:cs find s <C-R>=expand("<cword>")<CR><CR>
- 用于查找符号的标准cscope命令:bd<CR>
- 删除缓冲区,以便关闭第一个搜索结果:cwindow<CR>
- 在新的quickfix窗口中打开搜索结果/<C-R>0<CR>
- 搜索符号,这样我就可以在quickfix窗口中看到我查找的符号,并且可以使用n
和N
在quickfix窗口中移动。我最后为此编写了一个小插件。你可以在这里查看 - https://github.com/ronakg/quickr-cscope.vim