Ævar Arnfjörð Bjarmason <avarab@xxxxxxxxx> writes: > On Tue, Jun 21 2022, ZheNing Hu via GitGitGadget wrote: >> + if (skip_prefix(start, "(objectmode)", &p)) >> + strbuf_addf(sb, "%06o", data->ce->ce_mode); >> + else if (skip_prefix(start, "(objectname)", &p)) >> + strbuf_add_unique_abbrev(sb, &data->ce->oid, abbrev); >> + else if (skip_prefix(start, "(stage)", &p)) >> + strbuf_addf(sb, "%d", ce_stage(data->ce)); >> + else if (skip_prefix(start, "(path)", &p)) >> + write_name_to_buf(sb, data->pathname); These are just "values". >> + else if (skip_prefix(start, "(ctime)", &p)) >> + strbuf_addf(sb, "ctime: %u:%u", >> + sd->sd_ctime.sec, sd->sd_ctime.nsec); >> + else if (skip_prefix(start, "(mtime)", &p)) >> + strbuf_addf(sb, "mtime: %u:%u", >> + sd->sd_mtime.sec, sd->sd_mtime.nsec); >> + else if (skip_prefix(start, "(dev)", &p)) >> + strbuf_addf(sb, "dev: %u", sd->sd_dev); >> + else if (skip_prefix(start, "(ino)", &p)) >> + strbuf_addf(sb, "ino: %u", sd->sd_ino); >> + else if (skip_prefix(start, "(uid)", &p)) >> + strbuf_addf(sb, "uid: %u", sd->sd_uid); >> + else if (skip_prefix(start, "(gid)", &p)) >> + strbuf_addf(sb, "gid: %u", sd->sd_gid); >> + else if (skip_prefix(start, "(size)", &p)) >> + strbuf_addf(sb, "size: %u", sd->sd_size); >> + else if (skip_prefix(start, "(flags)", &p)) >> + strbuf_addf(sb, "flags: %x", data->ce->ce_flags); These are not. > In my mind almost the entire point of a --format is that you can > e.g. \0-delimit it, and don't need to do other parsing games. > > So this really should be adding just e.g. "%x", not "flags: %x", Yes. A very good point, if we were showing these fields (I already said I doubt it is useful), they should also show just "values" After all, people can do "--format=mode: %(objectmode)" if they want an identifying tag before the value. Thanks.