首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Vim跨多个文件转到下一个搜索结果?

Vim跨多个文件转到下一个搜索结果?
EN

Stack Overflow用户
提问于 2015-01-28 05:11:19
回答 3查看 3.8K关注 0票数 4

当我以前使用源代码洞察时,当我搜索某个单词时,我可以按“搜索向前”按钮跳到所有项目文件之间的下一次匹配。

例如:

  1. 搜索“苹果”
  2. 源洞察列表所有项目都包含"apple“字(例如: 15结果)
  3. 按“搜索向前”按钮
  4. 光标跳到下一个搜索结果,根据需要重复查看所有15个结果。

但是在cscope中使用vim,我需要这样的东西:

  1. 政务司司长找到“苹果”
  2. cscope 15项结果
  3. 输入"1“并跳到第一个结果
  4. 政务司司长找到“苹果”
  5. cscope 15项结果
  6. 输入"2“并跳转到第二个结果

非常复杂。

在维姆有更好的方法吗?

EN

回答 3

Stack Overflow用户

发布于 2015-01-28 08:16:46

Vim允许您使用'cscopequickfix'选项将cscope的输出重定向到quickfix窗口。下面是:help 'cscopequickfix'中的建议值

代码语言:javascript
运行
复制
set cscopequickfix=s-,c-,d-,i-,t-,e-

在那里,您可以使用以下方法搜索apple

代码语言:javascript
运行
复制
:cs f s apple

使用以下内容查看匹配列表:

代码语言:javascript
运行
复制
:cw[indow]

跳到下一场比赛:

代码语言:javascript
运行
复制
:cn[ext]

跳到前一场比赛:

代码语言:javascript
运行
复制
:cp[revious]

当然,还可以使用鼠标或键盘在quickfix窗口中选择条目。

奖励:将其添加到vimrc以跳过:cwindow步骤:

代码语言:javascript
运行
复制
augroup qf
    autocmd!
    autocmd QuickFixCmdPost * cwindow
augroup END
票数 11
EN

Stack Overflow用户

发布于 2015-01-28 05:34:18

在Vim中,您可以使用:vimgrep :copen:cnext

  1. 搜索底层目录中的"apple“ :vim apple **
  2. 显示所有15项结果: :cope
  3. 跳转到n-ext结果: :cn

为了使结果之间的跳转更容易,我在我的.vimrc中有以下内容

代码语言:javascript
运行
复制
noremap    <F4>   :<C-U>cnext <CR>
noremap    <S-F4> :<C-U>cprevious <CR>

有关更多信息,请参见:

  • :help quickfix
  • :help noremap
票数 2
EN

Stack Overflow用户

发布于 2015-01-28 05:17:22

在vim (命令模式)中,您可以使用/apple搜索单词apple。然后使用n进行前向搜索,使用N向后搜索。

您也可以设置一些设置以使其更好。

代码语言:javascript
运行
复制
:set incsearch # will jump to the search work as you type
:set hlsearch # will highlight all matches
:set ignorecase # will use case insensitive searches
:set smartcase # will use case sensitive search if the search word contains capitals

编辑:

@johnsyweb的正确答案是使用病毒病

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28185067

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档