首页 > 解决方案 > vim将文本添加到多行的开头,不包括带替换的空格

问题描述

我有以下段落:

1 sometexthere  
2     indented text
3     indented text
4     indented text

我想使用 vim 的搜索和替换命令在缩进文本之前添加一些文本。例如:

1 sometexthere  
2     test: indented text
3     test: indented text
4     test: indented text

有没有办法使用 vim 的搜索和替换语法来实现以下结果?我已经尝试过类似的命令, 2,4s/^/test: /但仍然无法找到去除空格的方法。

标签: vim

解决方案


匹配前导空格并自行替换它:

%s/^\s\+/&test: /

或匹配行:global并通过编辑它们:normal

g/^\s/normal! Itest: 

推荐阅读