使用astyle格式化代码

文档:http://astyle.sourceforge.net/astyle.html

astyle是一款代码格式化工具,它的下载地址是:http://sourceforge.net/projects/astyle

一。基本命令
astyle --style=ansi main.cs (ansi/linux:使用ansi/linux风格格式化main.cs)
--style=ansi   就是  -A1
了解上面的命令就可以格式化一个文件了,下面来看如何格式化目录下的文件

二。格式化目录
for /R %f in (*.cpp;*.cs;) do astyle --style=ansi "%f" (使用ansi风格格式下当前目录下的所有cpp,cs文件,注意:批处理文件时,"%f" 要改为"%%f")

三。参数说明:
-f
在两行不相关的代码之间插入空行,如import和public class之间、public class和成员之间等;
-p
在操作符两边插入空格,如=、+、-等。在:oper_date的:和oper_date中间会加空格,如果是宏定义SQL,可能出现问题
如:int a=10*60;
处理后变成int a = 10 * 60;
-P
在括号两边插入空格。另,-d只在括号外面插入空格,-D只在里面插入。
如:System.out.println(1);
处理后变成System.out.println( 1 );
-U
移除括号两边不必要的空格。
如:System.out.println( 1 );
处理后变成System.out.println(1);
-V
将Tab替换为空格。
-N
namespaces下一行的class缩进
-n
不生成备份文件,即默认的 .orig文件。
C#的默认方式为第二种,所以如果你是用来格式化C#代码的话,这个参数就有用了。
-k1
指针的*号靠近类型
-j
if语句自动加入大括号
-xC80
一行最大字符数,超过后会在&&、||、(、;等符号处换行
-L
缩进自定义标签

四:加入到VS2008,VS2005中
估计加入到VS2005中也是一样,不过我这里没有VS2005,就说一下VS2008的做法。
工具——>外部工具——>添加
标题:astyle
命令:AStyle.exe (填好astyle.exe的路径)
参数:--style=allman -N $(ItemDir)$(ItemFileName)$(ItemExt)
初始目录:$(TargetDir)
勾上“使用初始目录”
点击确定完成。以后就可以在工具菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。

五:加入到VS6中
Tools——>Customize——>Tools
标题:astyle
命令:AStyle.exe (填好astyle.exe的路径)
参数:--style=ansi -s4 --suffix=.orig $(FileName)$(FileExt)
初始目录:$(FileDir)
勾上“Using Output Window”
点击确定完成。以后就可以在工具菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。

六:加入到Ultraedit和UltraStudio
高级-->工具配置——>外部工具——>添加
命令:AStyle.exe -v --style=ansi -s4 --suffix=.orig "%f"(填好astyle.exe的路径)
Optiones:选择 Windows program和Save Active File.
Output: 选择output to list box,show dos box 和no replace。
点击确定完成。以后就可以在工具菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。

七:加入到Source insight
Tools-->Custom Command-->Add
Command:astyle
Run:"I:\software\AStyle.exe" --style=ansi -L -k1 -p -U -v -n -N %f(填好astyle.exe的路径)
Output:不选.
Control:不选.
Source Links in Output:File, then Line
-->menu
add to work menu.
点击确定完成。以后就可以在Work菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。

八:控制台目录批处理(Astyle.bat)
REM [email protected]
REM 批量将本目录中的所有C++文件用Astyle进行代码美化操作
REM 2009-01-05
REM 设置Astyle命令位置和参数
@echo off
set astyle="astyle.exe"
REM 循环遍历目录
for /r . %%a in (*.cpp;*.c) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
for /r . %%a in (*.hpp;*.h) do %astyle% --style=ansi --pad=oper --unpad=paren -s4 -n "%%a"
REM 删除所有的astyle生成文件
for /r . %%a in (*.orig) do del "%%a"
pause

你可能感兴趣的:(Tools)