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
博客下载:http://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窗口中。  
格式化当前文件的结果:
格式化所有文件的结果:
默认会生成备份文件
参考的帮助有:Astyle 帮助和 Keil uVision4的帮助。


//----------------------------------------------

-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;
 }
}


  • 11
    点赞
  • 43
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
C语言源代码格式化 完工 V1.05 20120229 1804.7z 说明: 除非特别声明,所有程序均使用VC++6.0 MFC编写。 所有程序均为练手用,放弃一切权利,同时不承担任何责任。 显式遵照 GPL v3.0标准。 QuoteCorrection 20110722 1119.7z 处理 清风徐来 水波不兴 邮件使用,将 西文 "" 转换为 “” 原理:ASC 转 UNICODE(修改) 转 ASC。 处理文件夹。 CSourceCodeEdit X4括号判断末行 20110721 1216.7z C语言源代码格式化。 处理文件夹。 PLT2KMLX14解决最后一行的问题 20110721 0931.7z WPT2KMLx4解决空行末行 20110721 0948.7z WPTPLT2KMLx12PLTWPT初步 20110721 1006.7z OZI格式的轨迹文件转KML格式的轨迹文件。 原理:ASC(转换) 转 UNICODE 转 UTF-8。 处理文件夹。 SubtitleENCN 20110726 1924.7z 剔除英文字幕文。 原理:ASC 转 UNICODE(剔除文) 回转ASC。 StringArrayBuildX10排版完成 20110728 0853.7z UNICODE 0-65535 汉字的拼音。 从 CnToSpell.java 提取的拼音。 StringArrayX6汉字转拼音 20110729 1418 拼音库需要修正.7z 汉字转拼音 原理:ASC 转 UNICODE(汉字转拼音) 回转ASC。 TXTEditEnterX1单文件排版 20110729 1902.7z 排版用 原理:ASC 转 UNICODE(排版) 回转ASC(替换掉原来的文件)。 doyouhikeList 磨房报名人员ID格式化后发悄悄话 20110729 1856.7z 磨房报名人员ID格式化后发悄悄话 原理:ASC 转 UNICODE(排版) 回转ASC(替换掉原来的文件)。 DOC2TXTEdit 20110919 1753.7z 处理PDF的文件转TXT后的换行问题。==末尾是空格不用处理的。 原理:ASC 转 UNICODE(行的结尾只要不是汉字就换行) 回转ASC。 PLTClear 清除PLT文件夹的名 20111006 1912.7z 处理 GPX转PLT之后, OziExplorer Track Point File Version 2.1 WGS 84 Altitude is in Feet Reserved 3 0,2,255, $$$$$$ ,0,0,2,8421376 文件名会显示在 GM 做的地图里。清除掉 原理:ASC 转 UNICODE(修改) 转 ASC。 处理文件夹。 AngleBracketsSubtitle 20111006 1935.7z 处理 清除字幕的字体、颜色标记。 原理:ASC 转 UNICODE(修改) 转 ASC。 处理文件夹。 UTF82ANSI 20111006 2008.7z 处理 将 UTF-8 格式的 字幕(或者文件) 转 ANSI 格式。 原理:UTF-8 2 UNICODE 2 ANSI。 处理文件夹。 GPX2KML 20120102 1630.7z 处理 将 UTF-8 格式的 字幕(或者文件) 转 ANSI 格式。 原理:查找坐标点, 然后由ANSI 2 UNICODE 2 UTF-8。 处理文件夹。 258.000000 2011-03-08T08:20:31Z 3.666667 FileFolderGenerate 20120112 1514.7z 文件夹生成函数CreateDirectory的测试。 功能:在指定目录下生成256个文件夹,每个文件夹内生成256个32K的文本文件,内容为“A”。 FileGenerate 20111121 1641.7z 功能: 猜想:对于“8.3格式文件”的文件名,(也许是出于向后兼容的目的),操作系统总是尝试以“大写”的文件名保存,小写的文件名或者扩展名也用大写表示,然后在“文件登记项”的32B的第13个字节(偏移量为0x0C)标识。于是检验大小写文件名对可创建的文件数量的影响。 还是将电脑的最后一个分区格式化为 FAT32 格

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值