Redrock Postgres 搜索 英文
版本: 9.3 / 9.4 / 9.5 / 9.6 / 10 / 11 / 12 / 13 / 14 / 15 / 16

56.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

以使它们适当地显示制表符。