无法用Vim中的新行replace空格
我知道线程 。
我跑
:%s/ /s/\n/g 我明白了
 E488: Trailing characters 
第二个例子
我跑
 :%s/ /\n/g 
我明白了
 text^@text 
我也运行相同的代码与下列设置separetaly
 set fileformat=unix 
和
 set fileformat=dos 
你如何在Vim中换一个新的行?
  :%s/ / Ctrl + v 返回 /g 
其中Ctrl v是Control-key加v和Return是返回键(主键盘上的那个,而不是数字键盘上的回车键)。 其他字符照常input。
 如果input正确, Ctrl + Return的顺序将显示为^M ,通常用不同的颜色表示它们是特殊的。 请注意,实际input^M将不起作用。 
还要注意,在Vim for windows中,它是Control-q而不是Control-v(因为这是粘贴)。
Ctrl-v还允许通过键盘input其他“特殊”键。 这对于Tab或Backspace也是有用的。
尝试
 %s/ /\r/g 
input以下内容:
 :s/ / 
现在键入Ctrl-V或Ctrl-Q(取决于您的configuration)并按Enter键。 你现在应该有:
 :s/ /^M 
完成它:
 :s/ /^M/g 
你很好走。
试试
对于Unix:
 :1,$s/\ /\n/g 
对于Windows:
 :1,$s/\ /\r/g 
这包含空间的转义字符。
特别要回答你的问题与尾随字符,这是你指定的正则expression式:
 :%s/ /s/\n/g 
 你太多了。 会发生什么是你用sreplace'',然后你在replace后标记: \n/g 
我认为你的意思是:
 :%s/ \s/\n/g 
 请注意,您的/s被更改为\s 。 现在replace会用\nreplace一个空格,后面跟任何一种空格(空格或制表符)。 我怀疑这是否解决了问题或用换行符replace空格,但应该解释错误消息。