Emily Shaffer <emilyshaffer@xxxxxxxxxx> writes: >> > @@ -40,10 +40,15 @@ static int list(int argc, const char **argv, const char *prefix) >> > >> > list_for_each(pos, head) { >> > struct hook *item = list_entry(pos, struct hook, list); >> > - if (item) >> > + item = list_entry(pos, struct hook, list); >> > + if (item) { >> > + /* Don't translate 'hookdir' - it matches the config */ >> >> Let's prefix comments for translators with /* TRANSLATORS: .., see the >> coding style doc. That's what they'll see, and this is useful to them. >> >> Better yet have a note here about the first argument being 'system', >> 'local' etc., which I had to source spelunge for, and translators won't >> have any idea about unless the magic parameter is documented. > > It's not a comment for translators. It's a comment for someone helpful > who comes later and says "oh, none of this is marked for translation, > I'd better fix that." Then, it is not limited to "hookdir", is it? Resurrecting the elided part back here: Not just we do not want "hookdir" placed inside _(), printf("%s: %s\n", + (item->from_hookdir + ? "hookdir" + : config_scope_name(item->origin)), item->command.buf); we do not want the "%s: %s\n" to be placed inside _() and get munged into "%2$s: %1$s\n" for languages that want the order swapped, for example. So perhaps the comment should be about the entire output, i.e. "don't translate the output from this helper, as it is meant to be machine parseable", or something?