如何让 vim 仅对"gq"命令以 80 个字符换行?



请考虑以下示例文件,其中包含正好包含 80 个字符的单行。

==foo     ===  ============================================================= bar

如果我在 Vim 中选择它并键入gq,它将转换执行文本换行,因为它使用 79 个字符作为阈值。

==foo     ===  =============================================================
bar

这是不可取的。我宁愿让 vim 仅在超过80 个字符时才换行。我试图使用这里建议的方法。

:set textwidth=80

这有一个不幸的副作用,即 Vim 在我键入时自动添加换行符。

如何仅对gq命令强制执行 80 个字符的限制(而不是 79 个字符(,而不是在我键入时?

'formatoptions'中删除t和/或添加l以禁用插入时换行。

请参阅'formatoptions'|fo-table|'formatoptions'是一串字符,用于控制'textwidth'gq的工作方式。 字母t具有以下含义:

使用文本宽度自动换行

字母l(小写L(定义为:

在插入模式下不会断开长行:当插入命令启动时行长于"文本宽度"时,Vim 不会自动格式化它。

我相信删除t应该就足够了,但如果不是,您也可以添加ll对于希望为大多数行启用t,但也希望编辑器"停止弄乱我故意的长行"的人来说特别有用。

最新更新