首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >vim中的自动完成搜索词

问vim中的自动完成搜索词
EN

Stack Overflow用户
提问于 2015-08-18 17:45:58
回答 4查看 1.9K关注 0票数 2

如何在Vim中自动补全搜索词?

我有下面这段代码,我想搜索单词pgnExists_f。

代码语言:javascript
复制
if(hj1939stack->pgnArray[index] == newPgn)
{
  /* newPgn already exists in the pgnArray */
  pgnExists_f = TRUE;
}

在搜索命令中,我在输入pgn后按TAB键,希望单词会自动补全成pgnExists_f。但是,紧跟在pgn后面的是^I。

/pgn[TAB]导致

代码语言:javascript
复制
/pgn^I
EN

回答 4

Stack Overflow用户

发布于 2015-08-18 17:56:55

是的,是有办法的。

命令行窗口这是一种常见的方法,将光标移动到单词

  • 上,然后按*或#

  • using *-

  • 。在正常模式下,按q/,然后按i进入插入模式,输入pgn,然后输入ctrl-n或ctrl-p。您将看到弹出窗口,您可以选择要搜索的单词。
票数 5
EN

Stack Overflow用户

发布于 2015-08-19 01:54:51

有一个可用的plugin SearchComplete,它允许这样做。

票数 1
EN

Stack Overflow用户

发布于 2015-08-18 23:48:01

我认为这可以使用插入函数返回的cmap来实现:

代码语言:javascript
复制
function! SearchCompletions()
    return "SearchCompletion"
endfunction

cnoremap <Tab> <c-r>=SearchCompletions()<cr>

现在,在命令行中按Tab将插入文本"SearchCompletion“。现在的问题是编写一个SearchCompletions()函数,它可以在当前缓冲区中提前搜索匹配项。这应该不会太难,但问题是它会有多慢。

另一个问题是,只要光标位于命令行上,而不仅仅是搜索提示符上,映射就会起作用。我不知道如何进一步限制它。

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

https://stackoverflow.com/questions/32068958

复制
相关文章

相似问题

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