相关疑难解决方法(0)

如何将所有匹配的行放入一个缓冲区?

你如何将所有匹配的行放入缓冲区?

给出如下文件:

match 1
skip
skip
match 2
match 3
skip
Run Code Online (Sandbox Code Playgroud)

我希望能够发出一个命令来将所有与模式匹配的行(/ ^匹配/用于此示例)放入单个缓冲区中,以便我可以将其放入另一个文档或摘要或其他任何内容中.

该命令应该在缓冲区中结束:

match 1
match 2
match 3
Run Code Online (Sandbox Code Playgroud)

我的第一个想法是尝试:

:g/^match/y
Run Code Online (Sandbox Code Playgroud)

但我只是得到了最后一场比赛.这是有道理的,因为:g命令有效地重复y每个匹配行.

也许有一种方法可以添加缓冲,而不是覆盖它.我找不到它.

vim

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

删除突出显示文本的行/删除突出显示的文本

有谁知道如何删除:

  1. 突出显示文本的行
  2. 所有突出显示的文字

(突出显示的文本(搜索后的pe)未选择文本)


是否有命令搜索所有突出显示的文本并删除该行?(独立于我用来突出显示文本的搜索命令或功能)

g/pattern/d命令并不总是删除突出显示的文本
pe /^\(.*\)\(\n\1\)\+$ - >突出显示所有双行
g/^\(.*\)\(\n\1\)\+$/d - >不删除所有双行

vim highlighting

4
推荐指数
1
解决办法
9291
查看次数

标签 统计

vim ×2

highlighting ×1