summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--main.c15
1 files changed, 15 insertions, 0 deletions
diff --git a/main.c b/main.c
index 76a7961..94d989c 100644
--- a/main.c
+++ b/main.c
@@ -669,6 +669,21 @@ int main(int argc, char *argv[])
669 669
670 msg = msg_note(&snac, content, NULL, NULL, attl, 0); 670 msg = msg_note(&snac, content, NULL, NULL, attl, 0);
671 671
672 /* set a post language according the LANG environment variable */
673 const char *lang_env = getenv("LANG");
674 if (xs_type(lang_env) == XSTYPE_STRING) {
675 /* split at the first _ */
676 xs *l0 = xs_split(lang_env, "_");
677 const char *lang = xs_list_get(l0, 0);
678
679 if (xs_type(lang) == XSTYPE_STRING && strlen(lang) == 2) {
680 /* a valid ISO language id */
681 xs *cmap = xs_dict_new();
682 cmap = xs_dict_set(cmap, lang, xs_dict_get(msg, "content"));
683 msg = xs_dict_set(msg, "contentMap", cmap);
684 }
685 }
686
672 c_msg = msg_create(&snac, msg); 687 c_msg = msg_create(&snac, msg);
673 688
674 if (dbglevel) { 689 if (dbglevel) {