我正在寻找一个命令来解决这个问题:
Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。 Ut enim ad 微小的veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat。 Duis aute irure dolor in 代表性的velitate velit esse cillum dolore eu fugiat nulla pariatur。左外行,不接受任何事 culpa qui officia deserunt mollit anim id est laborum。 Ipsum dolor坐 amet,consectetur adipisicing elit。
Duis aute irure dolor in 代表性的velitate velit esse cillum dolore eu fugiat nulla pariatur。
非专业人士,非法入境者 culpa qui officia deserunt mollit anim id est laborum。
进入这个:
Lorem ipsum dolor sit amet,consectetur adipisicing elit,sed do eiusmod tempor incididunt ut labore et dolore magna aliqua。 Ut enim ad 微小的veniam,quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat。 Duis aute irure dolor in 代表性的velitate velit esse cillum dolore eu fugiat nulla pariatur。
Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum。 Ipsum dolor坐 amet,consectetur adipisicing elit。
Duis aute irure dolor in 代表性的velitate velit esse cillum dolore eu fugiat nulla pariatur。
Excepteur sint occaecat cupidatat non proident,sunt in culpa qui officia deserunt mollit anim id est laborum。
有什么建议吗?
答案 0 :(得分:2)
如果它被包装,这意味着paragraph
实际上只有ONE
行,并且您实际上在行之间添加了一个空行。试试:
:g/.\n\n\@!/norm o
解释here 如果它没有被包裹(意味着一段中有很多行),我也不知道该怎么做。但根据该网站的解释,您可以尝试通过编写自己的正则规则来管理它!
答案 1 :(得分:1)
:%s/\.\s*\n\(\S\)/\.\r\r\1
使用给定的样本(包含讨厌的尾随空格)获得所需的结果。
我们搜索一个点后跟零个或多个空格字符(因为讨厌的尾随空格),然后是换行符,后跟我们捕获的非空白字符。
我们用一个点替换,接着是两个换行符和我们之前捕获的非空白字符。
(编辑)
以下替换更通用,适合您未指定的要求:
所以...
:%s/\s*\n\(\s*\S\)/\r\r\1
如果要标准化缓冲区并删除缩进:
:%s/\s*\n\(\s*\)\(\S\)/\r\r\2
或者,反斜杠少......
:%s/\v\s*\n(\s*)(\S)/\r\r\2