X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Fgettext.C;h=46053cfc59e5407e4e66316470accbf6ed59e26d;hb=ee2966faba5563fb853f31f4d3d1785d380e1332;hp=6c79a241d184d72990d9e3aba9e76f102a8fc2da;hpb=a6444784dca48da8b1f7723be12069b2e1dbb4c5;p=lyx.git diff --git a/src/gettext.C b/src/gettext.C index 6c79a241d1..46053cfc59 100644 --- a/src/gettext.C +++ b/src/gettext.C @@ -13,40 +13,25 @@ #include "gettext.h" #include "messages.h" + #include "support/environment.h" -#include "support/docstring.h" +#include "support/lstrings.h" + + +namespace lyx { #ifdef HAVE_LOCALE_H # include #endif -using lyx::support::setEnv; -using lyx::docstring; +using support::setEnv; using std::string; -namespace { - -Messages & getLyXMessages() -{ - static Messages lyx_messages; - - return lyx_messages; -} - -} // anon namespace - - docstring const _(string const & str) { - return getLyXMessages().get(str); -} - - -docstring const _(docstring const & str) -{ - return getLyXMessages().get(lyx::to_utf8(str)); + return getGuiMessages().get(str); } @@ -71,3 +56,20 @@ void locale_init() } #endif + + +docstring const translateIfPossible(docstring const & name) +{ + if (support::isAscii(name)) + // Probably from a standard configuration file, try to + // translate + return _(to_ascii(name)); + else + // This must be from a user defined configuration file. We + // cannot translate this, since gettext accepts only ascii + // keys. + return name; +} + + +} // namespace lyx