elua lib: add a func to retrieve the current translation lang
authorDaniel Kolesa <d.kolesa@osg.samsung.com>
Thu, 30 Apr 2015 10:15:48 +0000 (11:15 +0100)
committerDaniel Kolesa <d.kolesa@osg.samsung.com>
Wed, 6 May 2015 14:05:23 +0000 (15:05 +0100)
src/lib/elua/elua.c
src/scripts/elua/core/gettext.lua

index be85d94..3e1a715 100644 (file)
@@ -258,9 +258,29 @@ _elua_gettext_bind_textdomain(lua_State *L)
 #endif
 }
 
+static int
+_elua_get_message_language(lua_State *L)
+{
+   const char *e;
+   e = getenv("LANGUAGE");
+   if (e && e[0]) goto success;
+   e = getenv("LC_ALL");
+   if (e && e[0]) goto success;
+   e = getenv("LC_MESSAGES");
+   if (e && e[0]) goto success;
+   e = getenv("LANG");
+   if (e && e[0]) goto success;
+   lua_pushnil(L);
+   return 1;
+success:
+   lua_pushstring(L, e);
+   return 1;
+};
+
 const luaL_reg gettextlib[] =
 {
    { "bind_textdomain", _elua_gettext_bind_textdomain },
+   { "get_message_language", _elua_get_message_language },
    { NULL, NULL }
 };
 
index a77d50a..96af7d3 100644 (file)
@@ -7,7 +7,6 @@ local M = {}
 local gettext = ...
 
 local bind_textdomain         = gettext.bind_textdomain
-local bind_textdomain_codeset = gettext.bind_textdomain_codeset
 local dgettext                = gettext.dgettext
 local dngettext               = gettext.dngettext