多行字符串文字的缩进样式

时间:2015-01-23 15:42:05

标签: go

缩进原始字符串文字的建议样式是什么?如果我根据第一行缩进它,它可能无法在具有不同制表符长度的编辑器中正确对齐。例如:

if select == nil {
    select, err = db.Prepare(`select name
                              from table
                              where id=$1`)
    if err != nil {
        return nil, err
    }
}

我找到了这个问题,但我仍然不清楚:Best practice for long string literals in Go

我应该像下面这样做吗?

if select == nil {
    select, err = db.Prepare(`
select name
from table
where id=$1`)
    if err != nil {
        return nil, err
    }
}

1 个答案:

答案 0 :(得分:2)

考虑到两个命题都会在字符串中添加换行符或空格,我赞成(即使fmt format the first line):

    select, err = db.Prepare(
     `select name
from table
where id=$1`)

正如下面的OP akonsu评论,它似乎与golang代码本身的风格一致,如src/cmd/go/main.go#L175中所示,它将第一行保持在开头的水平上{{3}} { {1}}'

(