vim - 使用 Quickfix 窗口处理 Cscope 结果

标签 vim cscope

我正在使用支持 QuickFix 的 cscope,通过设置 set cscopequickfix=s-,c-,d-,i-,t-,e- ~/.vimrc 文件来显示结果

我可以使用 :cnext:cprevious 命令在结果之间移动

我想要的是先在quickfix窗口中显示结果,并在跳转到文件之前进行预览。

我尝试使用 set switchbuf+=usetab,newtab 但这给出了不同的结果并且没有帮助。

是否有插件或命令可用于实现此行为。

最佳答案

我遇到了同样的问题,并通过关闭它打开的缓冲区(第一个结果)来修复它,然后通过调用:cwindow在快速修复窗口中打开结果。 .

这是我的按键重新映射的样子:

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> - 在新的快速修复窗口中打开搜索结果
  • /<C-R>0<CR> - 搜索符号,这样我就可以在快速修复窗口中突出显示我查找的符号,并且可以使用 n 在快速修复窗口中移动和N .

我最终为此编写了一个小插件。您可以在这里查看 - https://github.com/ronakg/quickr-cscope.vim

关于vim - 使用 Quickfix 窗口处理 Cscope 结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24510721/

相关文章:

linux - 符号链接(symbolic link)文件的 cscope

c++ - 如何从 CMakeLists.txt 生成 cscope.files

mapping - Vim 终端中的 <C-S> 映射问题

regex - 括号内带有元字符的 Vim 正则表达式

ctags - 更新大型项目中刚刚修改的文件的 cscope db 和 ctags

cscope - 如何解析cscope的数据库

python - 使用 cscope 用 VIM 浏览 Python 代码?

windows - vim:使用变量执行 shell 命令并将输出重定向到新缓冲区

vim - gvim 的尾部功能

search - VIM:如何将搜索/替换命令添加到 vimrc 并映射到快捷方式