From: Ævar Arnfjörð Bjarmason Date: Tue, 22 Feb 2011 23:41:20 +0000 (+0000) Subject: i18n: add no-op _() and N_() wrappers X-Git-Tag: v1.7.5-rc0~54^2~5 X-Git-Url: https://git.lorimer.id.au/gitweb.git/diff_plain/6578483036695820d05aa7cf482a38169ad321bf?ds=inline;hp=6578483036695820d05aa7cf482a38169ad321bf i18n: add no-op _() and N_() wrappers The _ function is for translating strings into the user's chosen language. The N_ macro just marks translatable strings for the xgettext(1) tool without translating them; it is intended for use in contexts where a function call cannot be used. So, for example: fprintf(stderr, _("Expansion of alias '%s' failed; " "'%s' is not a git command\n"), cmd, argv[0]); and const char *unpack_plumbing_errors[NB_UNPACK_TREES_ERROR_TYPES] = { /* ERROR_WOULD_OVERWRITE */ N_("Entry '%s' would be overwritten by merge. Cannot merge."), [...] Define such _ and N_ in a new gettext.h and include it in cache.h, so they can be used everywhere. Each just returns its argument for now. _ is a function rather than a macro like N_ to avoid the temptation to use _("foo") as a string literal (which would be a compile-time error once _(s) expands to an expression for the translation of s). Signed-off-by: Ævar Arnfjörð Bjarmason Signed-off-by: Jonathan Nieder Signed-off-by: Junio C Hamano ---