關於Astylephp
Astyle 的全稱是Artistic Style的簡稱,是一個開源的源代碼格式化工具,能夠對C,C++,C#以及Java等編程語言的源代碼進行縮進、格式化、美化。
Home Page: http://astyle.sourceforge.net/
Project Page: http://sourceforge.net/projects/astyle/html
在Keil μVision中集成Astyle(以Keil μVison4爲例)java
①下載Astyle,解壓到任意位置(Astyle爲綠色軟件)(Win2.02.1版,能夠到官網參看最新版)linux
千易下載:http://1000eb.com/aguv
博客下載:http://files.cnblogs.com/totop/AStyle_2.02.1_windows.zipgit
②µVision4中單擊Tools菜單---Customize Tools Menu算法
③添加Astyle All Files 和Astyle Current File菜單(自定義菜單名,能夠使用中文)編程
這裏添加了兩個菜單,分別是格式化當前文件和格式化project中的全部文件。windows
④添加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; } } |
|