我想在Vim中每一行的末尾添加*。

我尝试了该代码,但没有成功

:%s/\n/*\n/g

当前回答

一种选择是:

美元:g / s / / *

这将找到每一行结束锚,并将其替换为*。我说“替代”,但实际上,它更像是一个追加,因为锚是一个特殊的东西,而不是一个常规字符。有关更多信息,请参见g的力量-示例。

其他回答

...在每一行的开头加上*,

%s/^/*/g

一种选择是:

美元:g / s / / *

这将找到每一行结束锚,并将其替换为*。我说“替代”,但实际上,它更像是一个追加,因为锚是一个特殊的东西,而不是一个常规字符。有关更多信息,请参见g的力量-示例。

%s/\s*$/\*/g

这将达到目的,并确保前面的空格被忽略。

另外:

:g/$/norm A*

另外:

gg<Ctrl-v>G$A*<Esc>
:%s/\n/*\r/g

你的第一个在其他任何地方都是正确的,但是由于某种原因,Vim必须有不同的换行处理。