2

我想在窗口结束前将文本换行 5 个字符(不换行)。

如果不在文本中放置 EOL 字符(wrapmargin/textwidth),我不知道如何做到这一点。

4

2 回答 2

3

您需要设置 3 个选项,如下所示:

:set linebreak
:set wrap
:set nolist

如果其中任何一个设置为其他方式(例如:set list),那么它将不起作用。

此外,还有一个选项可以设置一个字符,该字符将显示在换行的开头。例如:

:set showbreak=>

如果您想再次关闭该功能,请将其设置为空字符串:

:set showbreak=

请注意,即使换行看起来本身就是行,Vim 仍然认为它们是单行。因此,用 键向下移动光标j会将其移动到下一个编号的行,而不是下一个显示的行。如果您显示了行号 ( :set number),这会更有意义。如果要通过显示线上下移动,可以使用gkandgj代替。这里还有一些你会发现有用的g命令:

Numbered line           Display line
-------------           ------------
j                       gj
k                       gk
$                       g$
0                       g0
^                       g^
于 2010-03-31T15:07:01.183 回答
0

也许这linebreak是您正在寻找的设置?

:se linebreak
于 2010-03-18T14:37:34.420 回答