From: Junio C Hamano Date: Fri, 10 Sep 2010 22:52:22 GMT Subject: Re: [PATCH 3/5] gettext docs: the gettext.h C interface Message-ID: <7veid1gqjd.fsf@alter.siamese.dyndns.org> In-Reply-To: <1284147353-18000-4-git-send-email-avarab@gmail.com> Ævar Arnfjörð Bjarmason writes: > + - _() > + > + Mark and translate a string. E.g.: > + > + printf(_("HEAD is now at %s"), hex); > + > + - N_() > + > + A no-op pass-through macro for marking strings inside static > + initializations, e.g.: > + > + static const char *reset_type_names[] = { > + N_("mixed"), N_("soft"), N_("hard"), N_("merge"), N_("keep"), NULL > + }; > + > + And then, later: > + > + die(_("%s reset is not allowed in a bare repository"), > + _(reset_type_names[reset_type])); I do not think this is a very good example. Unless we are doing l10n of option names, a Portuguese won't be typing "git reset --misto", so there is no point in invoking _(reset_type_names[]) to begin with, and there is no need to mark mixed/soft/hard/... for translation. And we won't be doing l10n of option names or subcommand names, I hope ;-).