]> gitweb.fperrin.net Git - DictionaryPC.git/blobdiff - src/com/hughes/android/dictionary/parser/wiktionary/WiktionaryLangs.java
Added simple parsing logic for DE and IT wiktionaries.
[DictionaryPC.git] / src / com / hughes / android / dictionary / parser / wiktionary / WiktionaryLangs.java
index 97bfce06b0bf7ee9dd1fdcf1c6d40dbc857733fb..b7642915041a7ac6422c618faf4742815fcbbb80 100644 (file)
@@ -14,6 +14,8 @@
 
 package com.hughes.android.dictionary.parser.wiktionary;
 
+import com.hughes.android.dictionary.engine.Language;
+
 import java.util.LinkedHashMap;
 import java.util.Map;
 import java.util.regex.Pattern;
@@ -30,10 +32,12 @@ public class WiktionaryLangs {
     isoCodeToEnWikiName.put("BN", "Bengali");
     isoCodeToEnWikiName.put("BS", "Bosnian");
     isoCodeToEnWikiName.put("BG", "Bulgarian");
+    isoCodeToEnWikiName.put("MY", "Burmese");
+    isoCodeToEnWikiName.put("yue", "Cantonese");
     isoCodeToEnWikiName.put("CA", "Catalan");
     isoCodeToEnWikiName.put("HR", "Croatian");
     isoCodeToEnWikiName.put("CS", "Czech");
-    isoCodeToEnWikiName.put("ZH", "Chinese|Mandarin|Cantonese");
+    isoCodeToEnWikiName.put("ZH", "Chinese|Mandarin");
     isoCodeToEnWikiName.put("DA", "Danish");
     isoCodeToEnWikiName.put("NL", "Dutch");
     isoCodeToEnWikiName.put("EN", "English");
@@ -43,6 +47,7 @@ public class WiktionaryLangs {
     isoCodeToEnWikiName.put("FR", "French");
     isoCodeToEnWikiName.put("DE", "German");
     isoCodeToEnWikiName.put("EL", "Greek");
+    isoCodeToEnWikiName.put("grc", "Ancient Greek");
     isoCodeToEnWikiName.put("haw", "Hawaiian");
     isoCodeToEnWikiName.put("HE", "Hebrew");
     isoCodeToEnWikiName.put("HI", "Hindi");
@@ -103,6 +108,7 @@ public class WiktionaryLangs {
     isoCodeToEnWikiName.put("LB", "Luxembourgish");
     isoCodeToEnWikiName.put("MK", "Macedonian");
     
+    assert Language.isoCodeToResources.keySet().containsAll(isoCodeToEnWikiName.keySet());
   }
 
   public static final Map<String,Map<String,String>> wikiCodeToIsoCodeToWikiName = new LinkedHashMap<String, Map<String,String>>();
@@ -168,5 +174,18 @@ public class WiktionaryLangs {
     isoCodeToWikiName.put("SV", Pattern.quote("{{-sv-}}"));
 
   }
+  public static String getEnglishName(String langCode) {
+      String name = isoCodeToEnWikiName.get(langCode);
+      if (name == null) {
+          name = isoCodeToEnWikiName.get(langCode.toUpperCase());
+      }
+      if (name == null) {
+          return null;
+      }
+      if (name.indexOf('|') != -1) {
+          return name.substring(name.indexOf('|'));
+      }
+      return name;  // can be null.
+  }
   
 }