Martin Vermeer wrote:
Patch attached, please review.
+                       flag.message(bformat(
+                       N_("Can't add vertical grid lines in '%1$s'"),
+                               name_));

Don't use N_("...") here, use _("...").

N_("...") expands to "...". I.e., no translation is performed at all. It is used to enable the awk script in po/Makefile.in.in to extract these strings into the po files for subsequent translation.

_("...") is also used as a marker but actually calls the gettext translation services. Perhaps this code snippet will make things clear:

char const * const foo = _("...");

int main() {
    // Initialise gettext database
    init_gettext();

    // This string will be untranslated because the gettext
    // database was not instantiated when foo was created.
    std::cout << foo << std::endl;

    // This string will be translated.
    std::cout << _(foo) << std::endl;

    // This string will also be translated.
    // This is your usage.
    std::cout << _("whoo!") << std::endl;

    return 0;
}



Reply via email to