[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [38702] branches/soc-2011-garlic: complete the language-select feature

xiao xiangquan xiaoxiangquan at gmail.com
Mon Jul 25 19:05:43 CEST 2011


Revision: 38702
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=38702
Author:   xiaoxiangquan
Date:     2011-07-25 17:05:43 +0000 (Mon, 25 Jul 2011)
Log Message:
-----------
complete the language-select feature

Modified Paths:
--------------
    branches/soc-2011-garlic/po/update_mo.py
    branches/soc-2011-garlic/po/update_po.py
    branches/soc-2011-garlic/release/bin/.blender/.Blanguages
    branches/soc-2011-garlic/source/blender/blenfont/intern/blf_lang.c
    branches/soc-2011-garlic/source/blender/makesrna/intern/rna_userdef.c
    branches/soc-2011-garlic/source/creator/CMakeLists.txt

Modified: branches/soc-2011-garlic/po/update_mo.py
===================================================================
--- branches/soc-2011-garlic/po/update_mo.py	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/po/update_mo.py	2011-07-25 17:05:43 UTC (rev 38702)
@@ -5,36 +5,12 @@
 import os
 
 LOCALE_DIR="../release/bin/.blender/locale"
+PO_DIR = "."
 DOMAIN = "blender"
-LANGS = (
-  "ar",
-  "bg",
-  "ca",
-  "cs",
-  "de",
-  "el",
-  "es",
-  "fi",
-  "fr",
-  "hr",
-  "it",
-  "ja",
-  "ko",
-  "nl",
-  "pl",
-  "pt_BR",
-  "ro",
-  "ru",
-  "sr at Latn",
-  "sr",
-  "sv",
-  "uk",
-  "zh_CN",
-  "zh_TW"
-)
 
-#-o %s.new.po
-for lang in LANGS:
+for po in os.listdir( PO_DIR ):
+  if po.endswith(".po"):
+    lang = po[:-3]
     # show stats
     cmd = "msgfmt --statistics %s.po -o %s/%s/LC_MESSAGES/%s.mo" % ( lang, LOCALE_DIR, lang, DOMAIN )
     print cmd

Modified: branches/soc-2011-garlic/po/update_po.py
===================================================================
--- branches/soc-2011-garlic/po/update_po.py	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/po/update_po.py	2011-07-25 17:05:43 UTC (rev 38702)
@@ -4,35 +4,12 @@
 
 import os
 
+PO_DIR = "."
 DOMAIN = "blender"
-LANGS = (
-  "ar",
-  "bg",
-  "ca",
-  "cs",
-  "de",
-  "el",
-  "es",
-  "fi",
-  "fr",
-  "hr",
-  "it",
-  "ja",
-  "ko",
-  "nl",
-  "pl",
-  "pt_BR",
-  "ro",
-  "ru",
-  "sr at Latn",
-  "sr",
-  "sv",
-  "uk",
-  "zh_CN",
-  "zh_TW"
-)
-#-o %s.new.po
-for lang in LANGS:
+
+for po in os.listdir( PO_DIR ):
+  if po.endswith(".po"):
+    lang = po[:-3]
     # update po file
     cmd = "msgmerge --update --lang=%s %s.po %s.pot" % (lang, lang, DOMAIN)
     print(cmd)

Modified: branches/soc-2011-garlic/release/bin/.blender/.Blanguages
===================================================================
--- branches/soc-2011-garlic/release/bin/.blender/.Blanguages	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/release/bin/.blender/.Blanguages	2011-07-25 17:05:43 UTC (rev 38702)
@@ -11,13 +11,14 @@
 Czech:cs_CZ
 Brazilian Portuguese:pt_BR
 Simplified Chinese:zh_CN
+Traditional Chinese:zh_TW
 Russian:ru_RU
 Croatian:hr_HR
-Serbian:sr
+Serbian:sr_RS
 Ukrainian:uk_UA
 Polish:pl_PL
-Romanian:ro
-Arabic:ar
-Bulgarian:bg
-Greek:el
-Korean:ko
+Romanian:ro_RO
+Arabic:ar_SA
+Bulgarian:bg_BG
+Greek:el_GR
+Korean:ko_KR

Modified: branches/soc-2011-garlic/source/blender/blenfont/intern/blf_lang.c
===================================================================
--- branches/soc-2011-garlic/source/blender/blenfont/intern/blf_lang.c	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/source/blender/blenfont/intern/blf_lang.c	2011-07-25 17:05:43 UTC (rev 38702)
@@ -88,7 +88,7 @@
 static char locale_ukrainian[] = "uk_UA";
 static char locale_polish[] = "pl_PL";
 static char locale_romanian[] = "ro_RO";
-static char locale_arabic[] = "ar_SA";
+static char locale_arabic[] = "ar_EG";
 static char locale_bulgarian[] = "bg_BG";
 static char locale_greek[] = "el_GR";
 static char locale_korean[] = "ko_KR";
@@ -138,34 +138,32 @@
 void BLF_lang_set(const char *str)
 {
 	char *locreturn;
-	if(str==NULL) {
-		if( U.language==1 )
-			return;
+	if(str==NULL)
 		str = lang_to_locale[U.language];
-	}
-#if defined (_WIN32) || defined(__APPLE__)
-		BLI_setenv("LANG", str);
-#else
-		locreturn= setlocale(LC_ALL, str);
-		if (locreturn == NULL) {
-			char *lang= BLI_sprintfN("%s.UTF-8", str);
+	BLI_setenv("LANG", str);
+	BLI_setenv("LANGUAGE", str);
 
-			locreturn= setlocale(LC_ALL, lang);
-			if (locreturn == NULL) {
-				printf("could not change language to %s nor %s\n", str, lang);
-			}
+	locreturn= setlocale(LC_ALL, str);
+	if (locreturn == NULL) {
+		char *lang= BLI_sprintfN("%s.UTF-8", str);
 
-			MEM_freeN(lang);
+		locreturn= setlocale(LC_ALL, lang);
+		if (locreturn == NULL) {
+			printf("could not change language to %s nor %s\n", str, lang);
 		}
 
-		setlocale(LC_NUMERIC, "C");
-#endif
-		textdomain(DOMAIN_NAME);
-		bindtextdomain(DOMAIN_NAME, global_messagepath);
-		/* bind_textdomain_codeset(DOMAIN_NAME, global_encoding_name); */
-		BLI_strncpy(global_language, str, sizeof(global_language));
-		
+		MEM_freeN(lang);
+	}
 
+	setlocale(LC_NUMERIC, "C");
+
+	textdomain(DOMAIN_NAME);
+	bindtextdomain(DOMAIN_NAME, global_messagepath);
+	/* bind_textdomain_codeset(DOMAIN_NAME, global_encoding_name); */
+	BLI_strncpy(global_language, str, sizeof(global_language));
+
+//	printf( "<<< %s %s %s \n", setlocale(LC_MESSAGES,NULL), getenv("LANG"), getenv("LANGUAGE") );
+
 }
 
 void BLF_lang_encoding(const char *str)

Modified: branches/soc-2011-garlic/source/blender/makesrna/intern/rna_userdef.c
===================================================================
--- branches/soc-2011-garlic/source/blender/makesrna/intern/rna_userdef.c	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/source/blender/makesrna/intern/rna_userdef.c	2011-07-25 17:05:43 UTC (rev 38702)
@@ -2442,25 +2442,25 @@
 		{2, "JAPANESE", 0, "Japanese (日本語)", "ja_JP"},
 		{3, "DUTCH", 0, "Dutch (Nederlandse taal)", "nl_NL"},
 		{4, "ITALIAN", 0, "Italian (Italiano)", "it_IT"},
-		{5, "GERMAN", 0, "German (German)", "de_DE"},
-		{6, "FINNISH", 0, "Finnish (Finnish)", "fi_FI"},
-		{7, "SWEDISH", 0, "Swedish (Swedish)", "sv_SE"},
-		{8, "FRENCH", 0, "French (French)", "fr_FR"},
-		{9, "SPANISH", 0, "Spanish (Spanish)", "es_ES"},
-		{10, "CATALAN", 0, "Catalan (Catalan)", "ca_AD"},
-		{11, "CZECH", 0, "Czech (Czech)", "cs_CZ"},
-		{12, "BRAZILIAN_PORTUGUESE", 0, "Brazilian Portuguese (Brazilian Portuguese)", "pt_BR"},
+		{5, "GERMAN", 0, "German (Deutsch)", "de_DE"},
+		{6, "FINNISH", 0, "Finnish (Suomalainen)", "fi_FI"},
+		{7, "SWEDISH", 0, "Swedish (Svenska)", "sv_SE"},
+		{8, "FRENCH", 0, "French (Française)", "fr_FR"},
+		{9, "SPANISH", 0, "Spanish (Español)", "es_ES"},
+		{10, "CATALAN", 0, "Catalan (Català)", "ca_AD"},
+		{11, "CZECH", 0, "Czech (Český)", "cs_CZ"},
+		{12, "BRAZILIAN_PORTUGUESE", 0, "Brazilian Portuguese (Português do Brasil)", "pt_BR"},
 		{13, "SIMPLIFIED_CHINESE", 0, "Simplified Chinese (简体中文)", "zh_CN"},
 		{14, "TRADITIONAL_CHINESE", 0, "Traditional Chinese (繁體中文)", "zh_TW"},
-		{15, "RUSSIAN", 0, "Russian (Russian)", "ru_RU"},
-		{16, "CROATIAN", 0, "Croatian (Croatian)", "hr_HR"},
-		{17, "SERBIAN", 0, "Serbian (Serbian)", "sr_RS"},
-		{18, "UKRAINIAN", 0, "Ukrainian (Ukrainian)", "uk_UA"},
-		{19, "POLISH", 0, "Polish (Polish)", "pl_PL"},
+		{15, "RUSSIAN", 0, "Russian (Русский)", "ru_RU"},
+		{16, "CROATIAN", 0, "Croatian (Hrvatski)", "hr_HR"},
+		{17, "SERBIAN", 0, "Serbian (Српском језику)", "sr_RS"},
+		{18, "UKRAINIAN", 0, "Ukrainian (Український)", "uk_UA"},
+		{19, "POLISH", 0, "Polish (Polski)", "pl_PL"},
 		{20, "ROMANIAN", 0, "Romanian (Român)", "ro_RO"},
-		{21, "ARABIC", 0, "Arabic (العربية)", "ar_SA"},
-		{22, "BULGARIAN", 0, "Bulgarian (Bulgarian)", "bg_BG"},
-		{23, "GREEK", 0, "Greek (Greek)", "el_GR"},
+		{21, "ARABIC", 0, "Arabic (العربية)", "ar_EG"},
+		{22, "BULGARIAN", 0, "Bulgarian (Български)", "bg_BG"},
+		{23, "GREEK", 0, "Greek (Ελληνικά)", "el_GR"},
 		{24, "KOREAN", 0, "Korean (한국 언어)", "ko_KR"},
 		{0, NULL, 0, NULL, NULL}};
 

Modified: branches/soc-2011-garlic/source/creator/CMakeLists.txt
===================================================================
--- branches/soc-2011-garlic/source/creator/CMakeLists.txt	2011-07-25 17:03:05 UTC (rev 38701)
+++ branches/soc-2011-garlic/source/creator/CMakeLists.txt	2011-07-25 17:05:43 UTC (rev 38702)
@@ -456,7 +456,7 @@
 
 	install( # same as linux!, deduplicate
 		DIRECTORY ${CMAKE_SOURCE_DIR}/release/bin/.blender/locale
-		DESTINATION ${TARGETDIR_VER}/datafiles/locale
+		DESTINATION ${TARGETDIR_VER}/datafiles
 		PATTERN ".svn" EXCLUDE
 	)
 
@@ -670,10 +670,15 @@
 
 		install_dir(
 			DIRECTORY
-					${CMAKE_SOURCE_DIR}/release/bin/.blender/locale
 					${CMAKE_SOURCE_DIR}/release/bin/.blender/fonts
-			\${TARGETDIR_VER}/datafiles/locale
+			\${TARGETDIR_VER}/datafiles/
 		)
+
+		install_dir(
+			DIRECTORY
+					${CMAKE_SOURCE_DIR}/release/bin/.blender/locale
+			\${TARGETDIR_VER}/datafiles/
+		)
 	endif()
 
 	# python




More information about the Bf-blender-cvs mailing list