keil中使用Astyle格式化你的代码的方法2篇合
关于Astyle
Astyle 的全称是Artistic Style的简称,是一个开源的源代码格式化工具,可以对C,C++,C#以及Java等编程语言的源代码进行缩进、格式化、美化。
Home Page: http://astyle.sourceforge.net/
Project Page: http://sourceforge.net/projects/astyle/
在Keil μVision中集成Astyle(以Keil μVison4为例)
①下载Astyle,解压到任意位置(Astyle为绿色软件)(Win2.02.1版,可以到官网参看最新版)
千易下载:http://1000eb.com/aguv
博客下载:https://files.cnblogs.com/totop/AStyle_2.02.1_windows.zip
②µVision4中单击Tools菜单---Customize Tools Menu
③添加Astyle All Files 和Astyle Current File菜单(自定义菜单名,可以使用中文)
这里添加了两个菜单,分别是格式化当前文件和格式化project中的所有文件。
④添加Command命令:单击...按钮,在Astyle的安装目录中选择Astyle.exe。
⑤Arguments:
Astyle Current File菜单填写 !E
当前文件
Astyle All Files菜单填写 "$E*.c" "$E*.h"
当前文件所在文件夹中的所有.c 和.h文件
⑥实际使用效果如下:
转自:http://www.cnblogs.com/totop/archive/2012/07/04/keil-astyle.html
http://bbs.mydigit.cn/read.php?tid=410700
一个好的程序,不仅要有好的算法,同时也需要有良好的书写风格。写出好的算法不容易,但是好的代码风格却并不困难。提到格式化代码,Astyle是一个不能错过的工具,它可以方便的将程序代码格式化成自己想要的样式而不必人工修改,并且它是绿色、免费、开源。关于Astyle的介绍帮助及下载,请参考其官方网站:http://astyle.sourceforge.net/。
下面介绍在Keil uVision4 中添加Astyle的方法,上午参考keil的帮助手册,实现了在Keil中很方便的使用Astyle的方法,和大家分享下,如果大家有更好的格式化代码的方法,请大家不要吝惜你的玉,我在这就先抛砖了。
添加Astyle菜单的方法:
1:uVision4中单击Tools菜单---Customize Tools Menu
2:添加Astyle All Files 和Astyle Current File菜单(自定义菜单名,可以使用中文)
我在这里添加了两个菜单,分别是格式化当前文件和格式化project中的所有文件。
3:添加Command命令:单击...按钮,选择Astyle.exe。
4:Arguments:
Astyle Current File菜单填写 !E
Astyle All Files菜单填写 "$E*.c" "$E*.h"
注:!E 表示的是当前获得焦点且正在编辑的文件。
$E*.c和$E*.h代表当前获得焦点且正在编辑文件所在目录下所有.c和.h文件(参考keil uVision的帮助文档)
使用的是Astyle默认格式来格式化文件,另外也可以自定义格式,自定义格式参考Astyle的帮助文档。默认格式化后,会备份原文件为 源文件名.orig。如果不想让Astyle备份文件,可以使用-n参数。 如:-n !E (表示格式化当前文件,不备份)
在keil中的使用效果:生成的菜单出现在Tools的下拉菜单中,Astyle的运行结构出现在keil的Build Output窗口中。
//----------------------------------------------
-style=ansi:ANSI 风格格式和缩进
namespace foospace { int Foo() { if (isBar) { bar(); return 1; } else return 0; } } --style=kr :Kernighan&Ritchie 风格格式和缩进 namespace foospace { int Foo() { if (isBar) { bar(); return 1; } else return 0; } } --style=linux :Linux 风格格式和缩进 namespace foospace { int Foo() { if (isBar) { bar(); return 1; } else return 0; } } --style=gnu :GNU 风格格式和缩进 namespace foospace { int Foo() { if (isBar) { bar(); return 1; } else return 0; } } --style=java :Java 风格格式和缩进 class foospace { int Foo() { if (isBar) { bar(); return 1; } else return 0; } } |
|