]> git.lyx.org Git - lyx.git/blobdiff - src/support/gettext.cpp
correct format for unsigned long argument, remoteCloseLink is oneway void
[lyx.git] / src / support / gettext.cpp
index 37a50ce11c60c32b771b0b847965294a8f82e2d1..cb21d573f4db39ea76103e617bc4cb3586df4b2d 100644 (file)
@@ -15,6 +15,7 @@
 
 #include "support/lstrings.h"
 #include "support/Messages.h"
+#include "support/Package.h"
 
 #ifdef HAVE_LOCALE_H
 #  include <locale.h>
@@ -45,7 +46,7 @@ void locale_init()
 
 docstring const translateIfPossible(docstring const & name)
 {
-       if (support::isAscii(name))
+       if (support::isAscii(name) && !name.empty())
                // Probably from a standard configuration file, try to
                // translate
                return _(to_ascii(name));
@@ -57,4 +58,18 @@ docstring const translateIfPossible(docstring const & name)
 }
 
 
+docstring const translateIfPossible(docstring const & name, std::string const & language)
+{
+       if (support::isAscii(name) && !name.empty())
+               // Probably from a standard configuration file, try to
+               // translate
+               return getMessages(language).get(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