Subject: Re: [PATCH v8 04/37] hook: include hookdir hook in list

From: Junio C Hamano <[email-masked]>
Date: Wed, 24 Mar 2021 12:11:29 -0700

Emily Shaffer <[email-masked]> 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?