From: Junio C Hamano Date: Mon, 04 Apr 2016 16:12:40 GMT Subject: Re: [PATCH v3 13/16] ref-filter: allow porcelain to translate messages in the output Message-ID: In-Reply-To: Matthieu Moy writes: > I'm not sure how important it is in this case, but it was in the case of > setup_unpack_trees_porcelain which I took inspiration from when we > discussed this (actually, in setup_unpack_trees_porcelain, there's isn't > any translation even in porcelain). OK, so paraphrase: In the most general case, we might want to have one code to issue different messages between plumbing and Porcelain; further, for Porcelain messages may or may not want to be translated. But I suspect that all Porcelain messages should be translatable in general, so there probably is a room for simplification. The single macro P_() approach was done without knowing that this codepath wanted the distinction between the plumbing and Porcelain. > Note that this can be worked around later by adding another function like > > static const char *get_message(const char *porcelain, const char *plumbing) > { > return use_porcelain_msg ? porcelain : plumbing; > } > > to be called with get_message(_("this ref was gone"), "gone") or so. Yes, I think that would be a way to do this properly. And we do not have a separate "here is the list of all translatable messages" table, which is a big plus. > In summary: both would work. No strong opinion from me, but I slightly > prefer the version in the patch (i.e. the one I suggested IIRC) to > Junio's version. Yup.