Table of Contents
源代码格式使用 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 和 less 可以这样调用:
more -x4 less -x4
以便正确显示制表符。
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。