在keil中一行一行的縮進(jìn)自己的代碼,雖然注重代碼的格式是一個(gè)好的習(xí)慣,不過這樣代碼比較多的話,整理起來效率太低,推薦Astyle這個(gè)工具,同時(shí)這里網(wǎng)上也找了點(diǎn)內(nèi)容分享給大家:
1 Astyle介紹
Astyle全稱Artistic Style,是一個(gè)免費(fèi),快速,小型的自動(dòng)格式化程序,適用于C,C++,C++/CLI,Objective?C,C#和Java源代碼。
在縮進(jìn)源代碼時(shí),作為程序員,我們傾向于同時(shí)使用空格和制表符來創(chuàng)建所需的縮進(jìn)。此外,默認(rèn)情況下,某些編輯器在按 Tab 鍵時(shí)會(huì)插入空格而不是制表符。其他編輯器(例如Emacs)能夠通過自動(dòng)設(shè)置行上代碼之前的空格來"漂亮地"行,可能在代碼中插入空格,到目前為止,這些代碼僅使用制表符進(jìn)行縮進(jìn)。
源代碼中每個(gè)制表符的空格數(shù)可以在編輯器之間更改(除非用戶根據(jù)自己的喜好設(shè)置數(shù)字...)。程序員在從一個(gè)編輯器移動(dòng)到另一個(gè)編輯器時(shí)面臨的一個(gè)標(biāo)準(zhǔn)問題是,包含空格和制表符的代碼(完全縮進(jìn))突然變得一團(tuán)糟。即使您作為程序員只注意使用空格或制表符,查看其他人的源代碼仍然會(huì)有問題。
為了解決這個(gè)問題,創(chuàng)建了Art Style——一個(gè)用C++編寫的過濾器,可以自動(dòng)重新縮進(jìn)和重新格式化C / C++ / Objective-C / C++ / CLI / C# / Java源文件。它可以從命令行使用,也可以作為庫合并到另一個(gè)程序中。
2 Astyle初體驗(yàn)
直觀一點(diǎn),我們來看看下面沒有經(jīng)過Astyle格式化的代碼:
接下來我們用Astyle插件給它格式化看一下:
很明顯,第一種代碼風(fēng)格要是每次參考別人的代碼看到的是這樣的,那基本連繼續(xù)看下去的心情都沒有了,果斷右鍵回收站,第二種代碼風(fēng)格,看起來就舒服多了。
也就是說,以后但凡看別人的代碼,第一件事先用Astyle插件把代碼風(fēng)格格式化一下,變成合適自己的那種風(fēng)格,也有利于提高自己的學(xué)習(xí)和工作效率;一個(gè)好的程序,不僅要有好的算法,同時(shí)也需要有良好的書寫風(fēng)格。
3 Astyle插件在Keil工程中的適配
這里我使用的的Keil軟件版本是:V5.29.0.0
3.1 keil5配置用戶自定義插件
選擇Customize Tools Menu。
3.2 添加用戶自定義命令并配置參數(shù)
其中Menu Content就是自定義的用戶命令,名稱可以自己寫,接下來看看我做的兩個(gè)用戶命令。
用戶命令:格式化工程
參數(shù)配置:(這個(gè)是自己參考別人的方法配置的)
-n "$E*.c" "$E*.h" --style=ansi -p -s4 -S -f -xW -w -xw -R
用戶命令:格式化當(dāng)前文件
參數(shù)配置:(這個(gè)是自己參考別人的方法配置的)
-n !E --style=ansi -p -s4 -S -f -xW -w -xw
注:!E表示的是當(dāng)前獲得焦點(diǎn)且正在編輯的文件。 $E*.c和$E*.h代表當(dāng)前獲得焦點(diǎn)且正在編輯文件所在目錄下所有.c和.h文件(參考keil uVision的幫助文檔)使用的是Astyle默認(rèn)格式來格式化文件,另外也可以自定義格式,自定義格式參考Astyle官網(wǎng)的幫助文檔。
3.3 選擇命令對(duì).c 或 .h開始格式化處理
然后點(diǎn)擊自己配置的用戶命令即可完成代碼格式化,其它的風(fēng)格詳情查看官網(wǎng)的開發(fā)文檔學(xué)習(xí)。
審核編輯:湯梓紅
-
嵌入式
+關(guān)注
關(guān)注
5082文章
19104瀏覽量
304791 -
格式化
+關(guān)注
關(guān)注
2文章
39瀏覽量
9112 -
keil
+關(guān)注
關(guān)注
68文章
1212瀏覽量
166839 -
代碼
+關(guān)注
關(guān)注
30文章
4779瀏覽量
68520 -
插件
+關(guān)注
關(guān)注
0文章
326瀏覽量
22440
原文標(biāo)題:keil中的代碼格式化插件——Astyle
文章出處:【微信號(hào):c-stm32,微信公眾號(hào):STM32嵌入式開發(fā)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論