astyle是一款代码格式化工具,它的下载地址是:http://sourceforge.net/projects/astyle
精简一点写,不然看的人会头疼,实际上了解了下面的东西就基本上够用了,如果要用高级的,那就要辛苦自己去看它的文档了。
一。基本命令
astyle --style=ansi main.cs (使用ansi风格格式化main.cs)
了解上面的命令就可以格式化一个文件了,下面来看如何格式化目录下的文件
二。格式化目录
for /R %f in (*.cpp;*.cs;) do astyle --style=ansi "%f" (使用ansi风格格式下当前目录下的所有cpp,cs文件,注意:批处理文件时,"%f" 要改为"%%f")
三。参数说明:
(1) -f
在两行不相关的代码之间插入空行,如import和public class之间、public class和成员之间等;
(2) -p
在操作符两边插入空格,如=、+、-等。
如:int a=10*60;
处理后变成int a = 10 * 60;
(3) -P
在括号两边插入空格。另,-d只在括号外面插入空格,-D只在里面插入。
如:System.out.println(1);
处理后变成System.out.println( 1 );
(4) -U
移除括号两边不必要的空格。
如:System.out.println( 1 );
处理后变成System.out.println(1);
(5) -V
将Tab替换为空格。
(6)-N
本条主要针对namespaces,如果没有此参数,效果如下:
namespace foospace
{
class Foo
{
public:
Foo();
virtual ~Foo();
};
}
有此参数就会变成这样:
namespace foospace
{
class Foo
{
public:
Foo();
virtual ~Foo();
};
}
(7) -n
不生成备份文件,即默认的 .orig文件。
C#的默认方式为第二种,所以如果你是用来格式化C#代码的话,这个参数就有用了。
四:加入到VS2008中
估计加入到VS2005中也是一样,不过我这里没有VS2005,就说一下VS2008的做法。
工具——》外部工具——》添加
标题:astyle
命令:D:/Program Files/Microsoft Visual Studio 8/Common7/IDE/AStyle.exe (填好astyle.exe的路径)
参数:--style=allman -N $(ItemDir)$(ItemFileName)$(ItemExt)
初始目录:$(TargetDir)
勾上“使用初始目录”
点击确定完成。以后就可以在工具菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。