54.1. Formatting

源代码格式使用 4 列制表符间距,并保留制表符(即,制表符不会扩展为空格)。每个逻辑缩进级别是一个附加的制表位。

布局规则(括号位置等)遵循 BSD 约定。特别是,ifwhileswitch等受控块的花括号按其各自的行排列。

限制行长,以使代码在 80 列的窗口中可读。 (这并不意味着您绝不能超过 80 列.例如,在任意位置中断一个长的错误消息字符串,只是为了将代码保持在 80 列之内,可能不会在可读性上带来任何收益.)

不要使用 C 样式的 Comments(//条 Comments)。严格的 ANSI C 编译器不接受它们。出于相同的原因,请勿使用 Cextensions,例如在块中间声明新变量。

多行 Comments 块的首选样式是

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

请注意,从第 1 列开始的 Comments 块将由 pgindent 保留原样,但是它将缩进缩进的 Comments 块,就像它们是纯文本一样。如果要在缩进的块中保留换行符,请添加如下破折号:

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

尽管提交的补丁程序不一定非要遵循这些格式规则,但这是一个好主意。您的代码将在下一个版本之前通过 pgindent 运行,因此在其他一些格式设置约定下使其看起来不错没有任何意义。修补程序的一个很好的经验法则是“使新代码看起来像周围的现有代码”。

src/tools目录包含可与 emacs,xemacs 或 vim 编辑器一起使用的示例设置文件,以帮助确保它们根据这些约定来格式化代码。

文本浏览工具越来越少地可以通过以下方式调用:

more -x4
less -x4

使它们正确显示标签。