如何在vim中每80个字符后插入一个换行符?

Raf*_*ian 9 vim

我在vim中有很多字符.我想在80个字符后插入换行符.我怎么做?

Raf*_*ian 17

:%s/.\{80}/&\r/g
Run Code Online (Sandbox Code Playgroud)
  • %:处理整个文件
  • s:替补
  • .:匹配任何字符
  • {80}:匹配前80个字符(在本例中为任何字符)
  • &:匹配结果
  • \ r:换行符
  • g:全局执行替换


Tja*_*art 6

您还可以修改此批准的答案,仅在第 80 个字符之后出现的第一个空格处插入换行符:

%s/\(.\{80\}.\{-}\s\)/\1\r/g
Run Code Online (Sandbox Code Playgroud)


dvk*_*960 5

使用正则表达式:

:%s/\(.\{80\}\)/\1\r/g
Run Code Online (Sandbox Code Playgroud)

使用递归Vim宏:

qqqqq79la<Enter><esc>@qq@q


qqq  Clear contents in register q.
qq   start marco in register q
79la<Enter> Carriage return after 80 characters.
<esc> go back to normal mode
 @q   run macro q which we are about to create now.
 q   complete recording macro
 @q run macro
Run Code Online (Sandbox Code Playgroud)