代碼格式化專家 |
代碼格式化專家
該專家用於格式化代碼,目前只支持 Pascal。
代碼格式化功能可格式化當前編輯器內的 Pascal 單元源碼或選擇區的內容,默認熱鍵 Ctrl+W。如果有選擇區,格式化之前會將選擇區擴展至整行模式再進行格式化。
參數設置
代碼格式化專家的設置界面如圖:
普通設置
關鍵字大小寫:設置格式化時關鍵字的大小寫處理規則,有大寫、小寫、首字母大寫、不改變原有大小寫四種選擇,默認為小寫。
Begin 位置:處理一些結構化語句如 if then 或 with do 後續的 begin end 代碼塊時,begin 是置於語句當前行之後,還是另起一行,默認另起一行。注意此選項不包括過程或函數的實現塊。
縮進空格數:指定縮進的空格數,默認為 2。
運算符前的空格數:指定運算符之前所放置的空格數,默認為 1,此選項常用於雙目運算符,注意括號等符號不在此列。
運算符後的空格數:指定運算符之後所放置的空格數,默認為 1,此選項常用於雙目運算符,注意括號等符號同樣不在此列。
自動換行選項:本選項有兩個寬度值,一個是換行寬度值,一個是超出寬度值。當勾選此自動換行選項後,當一行代碼超過後者較大的超出寬度值時,將本行代碼在剛超過前者較小的換行寬度處開始重新換行。這樣做的目的是為了避免一行代碼剛剛超長時,使用簡單換行帶來的新行內容太少的問題。注意由於部分符號不適合做行頭或行尾,由此帶來的調整可能導致分行的列值不完全和設置的換行值一致,使用時請注意。
Uses 區的每個單元名獨佔一行:勾選此選項後,Uses 區的每個單元獨佔一行。如果不勾,則使用上面設置的自動換行的換行寬度進行自動換行。
根據 IDE 內部符號表來糾正標識符的大小寫:勾選此選項後,格式化過程中將編譯並使用 IDE 內部的符號表來糾正源碼中的標識符的大小寫,該功能依賴於代碼輸入助手。
彙編設置
行首縮進空格數:Pascal 嵌入彙編代碼時,此選項指定行首除 Label 外的縮進空格數,默認為 8。
縮進空格數:此選項指定彙編代碼內的 Tab 鍵縮進空格數,默認為 8。
不格式化 {(*} 與 {*)} 之間的內容:勾選此選項可控制對代碼中的部分區域不予格式化。
快捷鍵:可在此設置格式化功能以及設置等的快捷鍵。
確定:保存選項並關閉設置對話框。
取消:關閉設置對話框,不保存選項改動。
幫助:顯示幫助信息。
局限與已知問題
對編譯指令的處理:目前,代碼格式化專家採用的是針對整個源文件進行語法分析與排版的工作方式,並且把編譯指令當作註釋來處理。因此如果出現類似如{$IFDEF XXX} var A: Byte; {$ELSE} Word;{$ENDIF} 這種分隔的並列語法結構時會導致解析出錯,使用時請注意。
對註釋的處理:註釋風格千變萬化各各不同,目前我們對註釋的處理也沒有一定的規範,只盡可能保持註釋原有的風格,而無法做到和代碼聯動。另外,選擇區格式化時,不支持擴展成整行後的選區起始範圍落在註釋、字符串中的情形。
選項較少:目前代碼格式化專家未提供太多的控制選項,以後會逐步豐富。
C/C++代碼:尚不支持。
相關主題