一、AStyle下载路径
Astyle为开源项目,支持C/C++和java的代码格式化
Home Page: http://astyle.sourceforge.net/
Project Page: http://sourceforge.net/projects/astyle/
下载最新Windows版本的AStyle,解压到你指定位置,笔者解压到D:\program files下的。
二、Source Insight中安装Astyle工具
如:增加Astyle命令,格式化C/C++文件
1. 打开source insight中的一个工程,选择Options--Custom Commands命令

2. 点击add,添加新的命令Astyle。
1)ansi C 格式化当前文件的命令为
其中,Run中输入astyle的命令参数:"D:\program files\AStyle\bin\AStyle.exe" --style=ansi-s4 -S -N -L -m0 -M40 --convert-tabs --suffix=.pre %f

2)ansi C 格式化某个目录下所有文件的命令为:
"D:\program files\AStyle\bin\AStyle.exe" Z:\LocalProject\DEZHOU3716/*.c Z:\LocalProject\DEZHOU3716/*.h --style=ansi -s4 -S -N -L -m0 -M40 --recursive --convert-tabs --suffix=.pre %f

3. 添加menu菜单,点击“menu”,选择menu--View,然后INSERT。这样就可以在菜单栏View上多一个命令选项。

4. 添加快捷键,点击"Assigh New Key",输入快捷键:Ctrl+Alt+C。以后格式化C/C++文件,就可以直接使用快捷键了。

同理,新建java格式化命令,Astyle参数为
C:\AStyle\bin\AStyle.exe --style=java -s4 -S -N -L -m0 -M40 --suffix=none --convert-tabs %f
三、其他常用的参数:
| -C | 类中public,pretected,private关键字,一个tab的缩进 |
| -S | switch中case关键字,一个tab的缩进 |
| -K | switch中case关键字,无缩进 |
| -N | 被namespace包含的block,一个tab的缩进 |
| -w | 格式化多行的宏定义 |
| -c | 将tab转化为对应个数的空格 |
| --mode=c | 格式化的是C/C++的源文件或者头文件(缺省值) |
| --mode=java | 格式化的是JAVA的源文件 |
| --suffix=#### | 将原始文件保存为“####”后缀,而不是“orig” |
| --suffix=none | 不保存原始文件 |
| --exclude=#### | 优化时不包含“####”文件或目录 |
| -Z | 修改后保持文件的修改时间不变 |
| -X | 将错误信息输出到标准输出设备(stdout),而不是标准错误设备(stderr) |
| -Q | 只显示格式化前后发生变化的文件 |
| -q | 不输出任何信息 |
| -z1 | 使用windows版本的回车符(CRLF) |
| -z2 | 使用linux版本的回车符(LF) |
| --help | 显示帮助信息 |
| -v | 显示版本信息 |
基于V2.02版本,astyle主要支持的参数有:
Style-格式配置:
最常用的就是ansi或或kr格式,实际上,kr,stroustrup和linux这三种格式是非常接近的了,试了好几个文件,只有非常微小的区别,可以忽略不计。
| stype | --style=allman | --style=java | --style=kr | --style=stroustrup | --style=whitesmith | --style=banner |
| 代码风格 | int Foo() | int Foo() { | int Foo() | int Foo() | int Foo() | int Foo() { |
| stype | --style=gnu | --style=linux | --style=horstmann | --style=1tbs | --style=pico | --style=lisp |
| 代码风格 | int Foo() | int Foo() | int Foo() | int Foo() | int Foo() | int Foo() { |
参考文档:
1. http://www.cnblogs.com/zhaoshixin/archive/2011/12/02/2272076.html
本文介绍如何在SourceInsight中安装并配置AStyle代码格式化工具,包括设置不同风格的格式化参数,以及如何为C/C++和Java文件创建快捷命令。
1064

被折叠的 条评论
为什么被折叠?



