Friday, April 23, 2010

Java's Language discrimination against Nepali

I will let following code and it's output do the talking:

System.out.println ("Korean testing: ");
Locale locale = new Locale("ko");
System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());
System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));

System.out.println ("\n French testing: ");
locale = new Locale("fr");
System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());
System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));

System.out.println ("\n Hindi testing: ");
locale = new Locale("hi");
System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());
System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));

System.out.println ("\n Nepali testing: ");
locale = new Locale("ne");
System.out.println("DisplayName in current locale:" + locale.getDisplayLanguage());
System.out.println("Display Name in Native: " + locale.getDisplayLanguage(locale));

Here is the output:
Korean testing:
DisplayName in current locale:Korean
Display Name in Native: 한국어

French testing:
DisplayName in current locale:French
Display Name in Native: français

Hindi testing:
DisplayName in current locale:Hindi
Display Name in Native: हिंदी

Nepali testing:
DisplayName in current locale:Nepali
Display Name in Native: Nepali
What the heck?? I understand that Nepali is not as widely spoken as other languages that are shown above but given that you can show Hindi in "Devnagiri script" and Nepali also shares the same script, why would Java not apply that to Nepali as well? Do I smell discrimination here? ;-)

Just for curious mind, this came up when I was trying to see why Nepali is not written as नेपाली in "Change Language" dialog box in GateIn.

No comments: