在 Visual Studio 2022 中保存时“设置代码格式”和“使用排序”

Kru*_*sty 35 code-formatting visual-studio editorconfig visual-studio-2022

我和我的团队在过去几个月里为我们的项目定义了有关 C# 代码格式和样式的规则,因此我们最终得到了一个.editorconfig文件。

而且,我们都安装了扩展Productivity Power Tools,以便在保存文件时(CTRL+S)格式化代码,而不必使用VS内置功能Code Clean Up。当我们意识到后者需要特殊的快捷方式(CTRL+K、CTRL+E)并且团队的每个成员都需要在本地设置此设置(因为无法将其放入源代码管理中)时,我们做出了这个决定。

这种工作方式非常适合 VS 2019。

但是,在上个月,团队的大多数成员升级到 VS 2022,并且扩展Productivity Power Tools 22删除了(显然没有任何原因)Format On SaveRemove and Sort Usings on save功能。

我们显然通过扩展VSE-FormatDocumentOnSave解决了这个问题- 通过在选项Edit.FormatDocument Edit.RemoveAndSort中进行设置Commands。它似乎工作得很好,但我们担心的是,这不是微软的工具,谁知道将来会发生什么。

因此,由于代码风格和格式设置规则是每个团队都关心的问题,考虑到我们是一个由 20 多名开发人员组成的团队,我想知道是否有人知道更好的方法来管理它。

Cfu*_*fun 45

从 VS2022-Preview2 开始,无需对“保存时格式化”进行额外扩展,只需运行包含“保存时格式化文档”操作的自定义代码清理即可:

  1. 自定义您的清理配置文件以执行“格式化文档”操作(如果尚未存在),在Analyze > Code Cleanup > Configure Code Cleanup
  2. 在 VS 配置中启用“保存时运行代码清理配置文件”Tools > Options > Text Editor > Code Cleanup

在保存到 Visual Studio 2022 17.1 Preview 2 时进行代码清理

不幸的是,代码清理设置未包含在.editorconfig文件中,也未包含在可在团队中共享的导出配置文件中.vssettings,也许将来会包含在内。

与此相关的一些功能请求:


小智 7

“保存时格式化文档”对我有用。

配置:

配置


Pie*_*ers 6

为什么不尝试Mads Kristensen(在 Microsoft 工作)的Code Cleanup On Save扩展呢?我自己没用过,但他的所有其他 VS 扩展都很棒。

编辑:“保存时清理”功能已添加到Visual Studio 17.1,目前处于预览状态。所以不需要扩展。