在vim中方便地对长段落进行自动换行

5

我正在寻找一种在 vim 中编写和编辑长段落的技巧。实际上,我想要 vim 的行为方式像我当前编写这个问题的 HTML 文本区域一样。

如果我设置了 set wrapset linebreak,并将 j 映射为 gjk 映射为 gk,我可以在某种程度上获得此行为。但是,在可视模式下,移动仍然是按行进行的,并且我不知道选取长行的方便方法。

此外,我知道 textwidth 选项会自动换行,如果光标所在列的当前列超出了一定阈值。但是,如果我从中间编辑行,则该行在变得过长时不会自动换行。

我也知道可以使用 gq 格式化一组选择的行,但是这会让人感到疲劳。

有什么技巧可以让 vim 自动进行良好的换行?

1个回答

7
如果您在 formatoptions 中设置了 a,您可能会得到您想要的结果:
:set formatoptions+=a

请查看:http://vimdoc.sourceforge.net/htmldoc/change.html#auto-format
...
a   Automatic formatting of paragraphs.  Every time text is inserted or
    deleted the paragraph will be reformatted.  See |auto-format|.
    When the 'c' flag is present this only happens for recognized
    comments.
...

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接