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@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@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

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to