相关疑难解决方法(0)

Vim - 选择搜索突出显示的文本?

在 vim 中,我经常执行搜索以跳转到一个单词或短语,而不是使用h/j/k/l. 然后我点击n在事件之间跳跃。

说我有这样的文字:

Time flies like an arrow; fruit flies like a banana. - Groucho Marx
Run Code Online (Sandbox Code Playgroud)

我输入/an arrow并按回车键。该短语被突出显示,我用 跳转到它n

现在我想直观地选择该文本,也许要更改它或删除它。(是的,我知道:s替换命令。)

由于我的光标位于“箭头”开头的字母“a”处,我可以点击v,然后按e几次以突出显示整个短语。但我觉得有一种更短、更语义化的方式。毕竟,我已经指定了我感兴趣的文本。

我如何编写一个命令来说“视觉选择当前的搜索选择?”

search vim selection

55
推荐指数
3
解决办法
1万
查看次数

VIM:将多个不连续的文本块拖入寄存器

我有一些文本行遵循某种模式,而另一些则不遵循某种模式。我想复制遵循此模式的行,然后将它们复制/拉入寄存器,以便我可以像其他地方一样粘贴它们。

例子:

def function_1(param1,param2):
    // do something1
    // do something2
    // do something3
    return

def function_Nullify(param=None):
    // does nothing
    pass
Run Code Online (Sandbox Code Playgroud)

现在我基本上想选择匹配的行def.*$,复制并粘贴它们。

所以输出看起来像这样:

def function_1(param1,param2):
def function_Nullify(param=None):
Run Code Online (Sandbox Code Playgroud)

我想知道是否可以在 vim 中做到这一点。

像将匹配的正则表达式行复制到寄存器“m”之类的东西。然后我就可以在需要的地方执行“mp”。


我知道像 sed、awk 或 grep 这样带有一些重定向运算符的东西可能更适合这项任务,但我想知道是否可以使用 vim 来完成此任务。

vim regex

3
推荐指数
1
解决办法
2041
查看次数

标签 统计

vim ×2

regex ×1

search ×1

selection ×1