1

我想知道我应该在源文件(主要是 C)的模式行中指定哪些 vim 选项哪些不应该在那里指定,而应该留给用户指定。

我相信模式应该强制执行特定于代码的策略和/或帮助 vim 处理代码,同时尽可能避免干扰用户偏好。

回答时,解释为什么您认为应该通过模式行强制执行特定选项。

4

1 回答 1

1

现在,我发现以下选项很有用:

  • ft确保 vim 正确识别文件格式,
  • noetsts=0禁用将制表符扩展到空格(项目编码样式),
  • 或者et,并强制执行特定于项目的选项卡扩展tsstssw
  • 也许tw建议换行(但我不太确定,因为它有点侵入性),
  • fenc表示字符编码。

这些是我认为我不应该设置的选项:

  • ts如果项目使用制表符缩进——我相信用户应该能够选择自己的制表符宽度,
  • 折叠——用户偏好,
  • 缩进——用户可能有一种偏好的缩进方式和改变方式,这实际上可能会因为习惯而导致额外或缺失的缩进,
  • ff因为 vim 应该正确推断换行格式,如果某些软件(如 VCS)透明地转换文件,ff实际上会破坏它。
于 2012-08-05T20:59:51.487 回答