相关疑难解决方法(0)

Vim从脚本中搜索并突出显示控件

我正在编写一个脚本,我想以编程方式控制搜索,并突出显示它们.search()函数结果没有突出显示(我认为),所以使用该函数对我没用.

我想要做的是使用'normal /'命令来搜索变量,但这似乎并不简单.我可以编写命令脚本:

    execute 'normal /' . my_variable . '\<CR>'
Run Code Online (Sandbox Code Playgroud)

(或vim提示中建议的其他变体:http: //vim.wikia.com/wiki/Using_normal_command_in_a_script_for_searching)

但它没有做任何事情.执行脚本行后,我可以在命令行中看到正确的搜索项,但焦点位于文档中,搜索寄存器未被更改,并且光标未进行任何搜索.(似乎<CR>没有进入,虽然没有抛出错误 - 是的,我也试过使用文字^ M.)

我这样做至少可以控制搜索寄存器:

execute 'let @/ ="' . a:term .'"'
Run Code Online (Sandbox Code Playgroud)

然后显而易见的事情似乎是:

    normal n
Run Code Online (Sandbox Code Playgroud)

但是,如果我在脚本中运行它,那么'正常n'不会做任何事情.设置搜索寄存器确实有效,如果我在脚本终止后手动按'n'进行搜索(并且显示突出显示,因为hlsearch已启用).我甚至不关心光标是否定位,我只想突出显示寄存器模式.但是脚本中'set hlsearch'的各种组合也不起作用.

我知道我可以使用'match()',但我想让它与常规搜索突出显示,我想知道我做错了什么.它必须是简单的东西,但我没有看到它.谢谢你的帮助.

vim search highlighting

6
推荐指数
1
解决办法
1618
查看次数

标签 统计

highlighting ×1

search ×1

vim ×1