首页 > 解决方案 > 在vim中制作列表时如何自动禁用硬包装?

问题描述

对于通过以下方式在 vim 中使用硬包装的人:

set tw=80
set fo=ta
# Or similiar

当您编写/编辑文本段落时,它将按预期添加硬包装。但是,默认情况下,当尝试编辑列表时,上述设置并不是很聪明,例如:

- item 1
- item 2
- item 3

一旦您编辑列表中的任何项目,vim 就会将三行连接在一起形成一个单独的段落。想知道是否可以配置 vim,以便它可以智能地禁用/启用硬包装。

标签: vim

解决方案


据我所知,无法逐行调整是否启用换行。但是,如果您愿意将列表包装在后续行中,则可以设置以下内容:

set autoindent
set formatoptions+=n
set formatlistpat=^[-*+•]\\+\\s\\+

这将导致长项目行如下所示:

- This is one single, very, extremely long
  item.
- This is the second item.

如果您使用gq动作来格式化,那也将产生相同的效果。在这两种情况下,Vim 都不会将列表项包装在一起。


推荐阅读