2025年9月25日: PostgreSQL 18 釋出!
支援的版本: 當前 (18) / 17 / 16 / 15 / 14 / 13
開發版本: devel
不支援的版本: 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3 / 9.2 / 9.1 / 9.0 / 8.4 / 8.3 / 8.2

55.1. 格式化 #

原始碼格式化使用 4 列的製表符間距,製表符保持不變(即,製表符不會擴充套件為空格)。每個邏輯縮排級別是一個額外的製表符停止位。

佈局規則(花括號定位等)遵循 BSD 約定。特別是,用於 ifwhileswitch 等受控塊的花括號位於自己的行上。

限制行長,以便程式碼在 80 列的視窗中可讀。(這並不意味著您絕不能超過 80 列。例如,為了將程式碼保持在 80 列以內而任意中斷長錯誤訊息字串可能不會帶來淨可讀性收益。)

為保持一致的編碼風格,請勿使用 C++ 風格的註釋(// 註釋)。pgindent 會將其替換為 /* ... */

多行註釋塊的首選風格是

/*
 * comment text begins here
 * and continues here
 */

請注意,以第 1 列開始的註釋塊將由 pgindent 保留原樣,但它會像普通文字一樣重排縮排的註釋塊。如果要保留縮排塊中的換行符,請像這樣新增破折號

    /*----------
     * comment text begins here
     * and continues here
     *----------
     */

雖然提交的補丁不一定絕對需要遵循這些格式規則,但這樣做是個好主意。您的程式碼將在下一個版本之前經過 pgindent 處理,因此沒有必要讓它看起來符合其他某種格式約定。對於補丁,一個好的經驗法則通常是 讓新程式碼看起來像周圍的現有程式碼

src/tools/editors 目錄包含可用於 Emacsxemacsvim 編輯器的示例設定檔案,這些檔案有助於確保它們按照這些約定格式化程式碼。

如果您想在本地執行 pgindent 以幫助您的程式碼匹配專案風格,請參閱 src/tools/pgindent 目錄。

文字瀏覽工具 moreless 可以這樣呼叫:

more -x4
less -x4

以使其正確顯示製表符。

提交更正

如果您在文件中發現任何不正確、與您對特定功能的體驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。