我一直想知道Vim是否具有智能包装代码行的能力,因此它保持与缩进的行相同的缩进.我在其他一些文本编辑器上注意到了它,比如电子文本编辑器,发现它帮助我更容易理解我正在看的内容.
例如而不是
<p>
<a href="http://www.example.com">
This is a bogus link, used to demonstrate
an example
</a>
</p>
Run Code Online (Sandbox Code Playgroud)
它会显示为
<p>
<a href="somelink">
This is a bogus link, used to demonstrate
an example
</a>
</p>
Run Code Online (Sandbox Code Playgroud) 有没有人知道如何让vim包装长行文本,使得包装文本的位置基于当前行的缩进?我不想重新格式化我的代码,只是为了让它显示得很漂亮.
例如,如果我将设置设置为以下行:
print 'ProcessorError(%r, %r, %r)' % (self.file, self.index, self.message)
Run Code Online (Sandbox Code Playgroud)
包装为:时显示:
print 'ProcessorError(%r, %r, %r)' % (self.file, self.index,
self.message)
Run Code Online (Sandbox Code Playgroud)
那么如果我写一个像这样的代码块:
def __repr__(self):
return 'ProcessorError(%r, %r, %r)' % (self.file, self.index, self.message)
Run Code Online (Sandbox Code Playgroud)
它包装成这样的东西:
def __repr__(self):
return 'ProcessorError(%r, %r, %r)' % (self.file, self.index,
self.message)
Run Code Online (Sandbox Code Playgroud)
我希望它显示为:
def __repr__(self):
return 'ProcessorError(%r, %r, %r)' % (self.file, self.index,
self.message)
Run Code Online (Sandbox Code Playgroud)
编辑:在阅读了Don Werve的回复之后,似乎我确实在寻找breakindent选项,但该选项仍在"等待更新补丁"列表中(参见Vim TODO).所以我想知道的是让vim使用的最简单方法是什么breakindent?(我不在乎我必须使用什么版本的vim.)