astyle下载是一个开源的源码格式化工具软件,命令行版的,支持 C/C++、C# 和 Java 语言。不止是一个命令行工具,还有很多编辑器插件,使用AStyle Win 的好处是可以快速了解一下各个参数是干什么用的,可以预览的,当然也可以看astyle的文档,html格式的,很详细
A Free, Fast, and Small Automatic Formatter for C, C++, C++/CLI, Objective-C, C#, and Java Source Code.
因为只有一个exe就可以执行,为了使用方便,我把它拷贝到windowssystem32目录下。
运行cmd.exe,进入命令行
astyle -h 得到命令行帮助,参数有很多,不过如果大多数情况下并不使用,默认设置就很好了
astyle a.c 格式化当前目录下的a.c文件
astyle *.c 格式化所有当前目录下的.c 文件
可以把你的喜欢的风格存为一个文本文件,名必须为 astylerc ,存放在%USERPROFILE%目录下,以后就不用输入参数了,
我的astylerc 文件内容为
style=ansi
#---------------indent options-----------------
indent=spaces=4
indent-preprocessor
indent-namespaces
max-instatement-indent=80
min-conditional-indent=0
pad=oper
unpad=paren
#------------- breack options --------------------
one-line=keep-statements
one-line=keep-blocks
#Add extra indentation to namespace blocks
suffix=none
errors-to-stdout
astyle --style=ansi main.cs
使用ansi风格格式当前目录下的所有cpp,cs文件,注意在批处理文件时,"%f" 要改为"%%f"
for /R %f in (*.cpp;*.cs;) do astyle --style=ansi "%f"
加入到VS2008,VS2005
工具——>外部工具——>添加
标题: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
Options-->Custom Command-->Add
Command:astyle
Run "D:softastyleastyle.exe" --style=ansi -f -p -P -U -v -n -N %f(填好astyle.exe的路径)
Output:不选.
Control: 选择pause when done和exit to window.
source links in output:file, then line
-->menu
add to work menu.
点击确定完成。以后就可以在Work菜单中找到“astyle“这一项了,点击它,就可以对当前文件进行格式化操作。
控制台目录批处理(astyle.bat)
REM 批量将本目录中的所有C++文件用Astyle进行代码美化操作
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
--------------------------------------------------------- 1) Program notepad
---------------------------------------------------------
2) IAR 4.21
----------------------------------------------------------
3) Visual C++ 6.0
4) AVR Studio (帮助中没有打开配置工具的参数,没有完成)
5) IAR 7.13