2

set fo+=a在 Vim 中使用以在键入时启用自动格式。

使用该设置,<CR>如果当前行的长度小于 ,则当我继续键入时,我按下的将被删除lw,这不是我想要的。

我想要的是:

  1. 如果行长于 ,仍然可以<CR>自动添加lw

  2. <CR>当我在行长度小于时手动键入 a时lw,我不希望<CR>在继续键入时将其删除。

谢谢。

4

2 回答 2

1

你不能。格式选项“a”旨在在每次更改段落时重新格式化您的段落,因此关于 VIM 中“段落”的定义,您无法在段落内保留任何单行换行符。

如果您只需要在键入时能够换行,则不需要选项“a”。对于您的情况,选项“t”已经足够了。

t   Auto-wrap text using textwidth
于 2012-05-29T23:06:44.020 回答
0

如果您可以使用尾随空格来指示段落继续(默认情况下它仅以空行结束),那么您也可以这样做

set fo+=w

. 然后,为了防止 vim 加入行,你只需要用空格以外的东西结束它。

注意:这不会改变运动命令段落的含义(事实上,没有什么可以改变它)。

于 2012-05-30T04:02:31.297 回答