我想知道是否可以在搜索匹配上运行命令,而不是在线上。如何在匹配和行上使用Vim全局命令?
例如,对于这个文件:
asdf - asdf
hjkl - hjkl
如果我运行:g/-/normal D
,将删除所有行的内容,但我宁愿删除比赛内容到行的末尾。
这可能吗?我不需要每行有几个匹配,只是命令从正确的位置开始。
这只是一个例子,我可以在那个特定的例子中使用替代,但这不是我正在寻找的。
我想知道是否可以在搜索匹配上运行命令,而不是在线上。如何在匹配和行上使用Vim全局命令?
例如,对于这个文件:
asdf - asdf
hjkl - hjkl
如果我运行:g/-/normal D
,将删除所有行的内容,但我宁愿删除比赛内容到行的末尾。
这可能吗?我不需要每行有几个匹配,只是命令从正确的位置开始。
这只是一个例子,我可以在那个特定的例子中使用替代,但这不是我正在寻找的。
您不能重用比赛中你的命令,所以你必须移动到匹配明确地:
:g/-/normal f-D
:%s/-.*//
你在找这样的事情?
如何:
:%norm t-D
t- .......... until before -
D ........... delete till end of line