有一个C#的自动代码格式化程序?

在我的工作中,我现在主要处理C#代码,时不时地撒上一些java代码。 我非常喜欢Eclipse(我知道人们每天都在使用它,甚至更喜欢它),它是一个复杂的代码格式化器,能够将代码编写成人们可能想到的任何编码标准。 有这样的C#工具吗? Visual Studio代码格式(Crtl + K,Crtl + D)是不合格的,StyleCop只检查源而不修复它。

我的梦想工具将从控制台运行(易于包含在自动构build或预提交钩子中,并在Linux + Mono上执行),基于文本文件的configuration可以方便地存储在项目存储库和graphics规则编辑器中就像Eclipse Code Formatter一样。

对于Visual Studio,看看ReSharper 。 这是一个很棒的工具,也是一个必备的工具。 4.0之后的版本具有您正在寻找的代码格式化和清理function。 还有插件与StyleCop的集成 ,包括格式化设置文件。 您可能还需要Agent Smith插件 ,以便拼写检查标识符和注释。 ReSharper支持每个解决scheme的格式化设置文件,可以检查到版本控制系统,并由整个团队共享。 代码清理的键盘快捷键是Ctrl + E C。

在“vanilla”Visual Studio中,可以使用Crtl + K Crtl + D自动格式化当前文件, Ctrl + K Ctrl + F格式化所选文本。

至于用于提交挂钩的运行遍地的命令行工具,请尝试NArrange 。 它是免费的,可以一次处理整个目录,并运行在Mono以及Microsoft.Net上。

有些人也使用艺术风格的命令行工具,虽然它需要Perl和C / C ++代码比C#更好地工作。

除了@Chris Karcher的回答,您还可以通过按Ctrl + KCtrl + D来自动格式化整个文档

这些格式化function可以处理各种文件格式 – 它可以在丑陋的HTML上创造奇迹。

.NET基金会刚刚在GitHub上发布了他们的代码格式化工具

https://github.com/dotnet/codeformatter

它使用Rosyln编译器服务来parsing项目文档并将其转换为预期的格式约定。 他们正在将这个应用于一些非常古老的CLR代码,以使所有的项目保持一致。

另一种select: NArrange ;

  • 自由
  • 基于控制台(对于提交钩子等非常好,但仍然可以在VS中用作“外部工具”)
  • 灵活的configuration文件

对我来说, Ctrl + Shift + F映射到在文件中查找。 当我需要格式化代码时,我突出显示它并按Ctrl + KCtrl + F。

我明白这不是真的解决自动格式化,我只是想澄清,可能不知道这个function甚至存在于VS.

我只听说过关于ReSharper的好消息。 这是在我的学习清单。

不是直接的,但我使用代理史密斯插件R#来做到这一点。 不幸的是,R#不是免费的。

另外看看Microsoft StyleCop

http://www.sourceformat.com/

这个工具是(〜30 $)左右,我试过了,它工作很好(与多种语言)我喜欢这个工具最好的因为它不检查代码文件的正确性。 我可以从networking上发布代码片段,并且无论它们是否在代码的缺失部分中,都将它们传递给它们。 我尝试的其他工具在这种情况下抱怨。 该工具也可以很容易地集成到编辑器中,因为它允许命令行驱动。

其他工具:

http://www.polystyle.com/index.jsp

http://astyle.sourceforge.net/ (开源)

我没有尝试过(通过谷歌发现)。 可能工作? http://www.semdesigns.com/Products/Formatters/CSharpFormatter.html 。 价格相当便宜,价格为50美元,但没有试用。

看到这个以前的问题:

有什么工具来重新格式化C#代码?

search[c#] astyle也会出现一些以前的问题。

这是一个开源代码格式化工具,具有惊人的function

CodeMaid

我知道这是一个非常晚的答案,但也许你可能会对这个免费的Addin for Visual Studio 2010/2012感兴趣

我想在网上做的有: freecodeformat