源代码格式化使用 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
被调用,使其正确显示制表符。
如果您在文档中发现任何不正确、与您使用特定功能的经验不符或需要进一步澄清的地方,请使用 此表单 报告文档问题。