Перейти к основному содержимому

Форматирование

При форматировании исходного кода используется 4-колоночный интервал табуляции с сохранением табуляции (т.е. табуляция не расширяется до пробелов). Каждый логический уровень отступа - это один дополнительный знак табуляции.

Правила разметки (расположение скобок и т.д.) следуют соглашениям BSD. В частности, фигурные скобки для закрытых блоков if, while, switch и т.д. располагаются на своих строках.

Ограничьте длину строк так, чтобы код был читаем в окне с 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 содержит примеры файлов настроек, которые можно использовать с редакторами Emacs, xemacs или vim, чтобы убедиться, что они оформляют код в соответствии с этими соглашениями.

Если необходимо запустить pgindent локально, чтобы помочь привести ваш код в соответствие со стилем проекта, смотрите каталог src/tools/pgindent.

Инструменты для просмотра текста в большей или меньшей степени могут быть вызваны как:

more -x4
less -x4

чтобы заставить их отображать вкладки соответствующим образом.