2

我用 vim 写了很多文本(主要用于研究论文),最近我开始格式化段落和句子,如下所示:

Lorem ipsum dolor sit amet, consectetur adipiscing 
   elit sed diam et arcu scelerisque rutrum eget 
   vitae sed diam et arcu scelerisque rutrum eget 
   vitae sed diam et arcu scelerisque rutrum eget 
   vitae. 
Aenean euismod tristique sollicitudin. 
Vestibulum sed diam et arcu scelerisque rutrum eget 
   vitae sapien. 
Quisque dui ligula, semper eget iaculis at, eleifend 
   at ligula. 
Sed vestibulum tellus ac libero iaculis sit amet commodo
   sapien pellentesque. 
Cras quis dignissim neque.
Donec neque mauris, dictum tempus tincidunt in, 
   pellentesque sit amet dui. 

我希望你能猜出模式。

现在,我主要是手动执行此操作,这有点不妥,特别是如果您在句子中间添加文本。我的问题是,我怎样才能自动做到这一点?

我知道我可以使用“gq100”在接下来的 100 行强制换行,但这并不完全符合我的要求。如果这不是真正的硬换行符,而只是一个虚拟换行符,那就太好了,这意味着当我将光标放在以“Lorem ipsum”开头的行中时,我可以用 y 和 p 复制并传递整个句子,就好像没有根本不是任何换行符。

有人对此有想法吗?

干杯,T

4

2 回答 2

3

你的意思是:如果一行以 3 个空格开头,它属于上一句?

你可以这样做:

:set textwidth=0
:set wrap
:set showbreak=\ \ \ 

注意:每个\.

尝试键入一个非常孤单的行。它会自动换行。下一行以 3 个空格开头。

于 2012-06-15T11:53:18.930 回答
2

我想这就是你要找的,vim 的 breakindent 补丁:

http://sqizit.bartletts.id.au/2011/01/31/vim-and-breakindent/

于 2012-06-15T12:04:48.647 回答