当我输入替换命令时,vim 可以突出显示当前匹配的单词吗?

当我输入替换命令时,vim 可以突出显示当前匹配的单词吗?

当我输入替换命令时,vim(或某些插件)是否可以突出显示当前匹配的单词?例如,给定以下文档:

attribute_list = [
    ("attribute_1", int),
    ("attribute_2", float),
    ("attribute_3", int),
]

我想用 vim 命令替换所有int内容。当我输入时,vim 可以突出显示文档中的所有内容吗?我需要此功能,因为我想在用正则表达式替换某些文本时检查我的搜索模式是否正确。bool:%s/int/bool/g:%s/inin

vim 插件易动有类似的功能。它可以在你搜索时高亮显示所有当前匹配的单词。

答案1

没有这样的内置选项。可以通过将字符输入到命令行中来构建此类行为,但由于没有通用的自动命令,因此您必须覆盖所有可能输入的键,并冒着干扰其他插件或缩写的风险。

不过,对您的工作流程进行简单的调整可以为您提供类似的行为,我建议将其作为更好的替代方案:首先通过 搜索模式/int;如果有:set hlsearch incsearch,那么您将实时突出显示匹配项。通过 接受匹配<CR>,然后然后进行替换。您不需要在那里重复搜索模式,因此这变成:

:%s//bool/g

相关内容