[Mono-bugs] [Bug 420468] New: Mono supports a reduced set of locales compared to Linux/ Unix systems
bugzilla_noreply at novell.com
bugzilla_noreply at novell.com
Tue Aug 26 15:05:16 EDT 2008
https://bugzilla.novell.com/show_bug.cgi?id=420468
Summary: Mono supports a reduced set of locales compared to
Linux/Unix systems
Product: Mono: Runtime
Version: SVN
Platform: Other
OS/Version: Linux
Status: NEW
Severity: Normal
Priority: P5 - None
Component: misc
AssignedTo: mono-bugs at lists.ximian.com
ReportedBy: jordimash at gmail.com
QAContact: mono-bugs at lists.ximian.com
Found By: ---
Mono supports a reduced set of locales compared to Linux
* The problem
The .Net framework builds its locale support on top of CultureInfo class. Mono
uses a set of hardcoded locales in the runtime to provide this support.
The problem is that the locales supported officially by Microsoft and by the
Mono runtime and are smaller set compared to the ones that Linux supports.
For example, languages like Occitan, Bosnian or Breton are not supported.
Neither combinations of supported languages in other regions, for example ca_AD
(Catalan language in Andorra). The list of non-supported locales is long.
* The impact
The problem is that applications build with Mono when running on Linux machines
on these not supported locales do NOT work well.
For example, if you run Banshee, F-Spot or Tomboy they always show the dates
and numbers formated for the invariant locale instead of using the user locale.
For example, in Occitan (French) or Catalan (Andorra) locales use European date
formatting but you get American date formatting. Same for numbers. This really
breaks the locale support at application level for many users.
All of these locales that are well supported in GNOME. Mono applications are
the only ones not supporting them correctly in GNOME.
* Solutions
Here are some proposed solutions:
1) Modify locales.c in the runtime to call localeconv Posix function when
running on Linux to build a .Net locale from the Posix locale when the user's
locale cannot be found in the internal runtime table. The problem is that the
date and formatting information exposed by Posix is incomplete compared to the
one needed by the .Net Framework.
2) Extend the locales supported in Mono in all platforms using the Common
Locale Data Repository (http://unicode.org/cldr/).
I will be in favour of option 2).
* Final note
I noticed this problem when people using gbrainy were complain that the
decimals separators were not shown properly for their languages. Linux is well
know for having a very good support for minor languages and cultures. Do not
make people developing desktop applications to lose this fantastic support.
Regards,
Jordi,
--
Configure bugmail: https://bugzilla.novell.com/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the QA contact for the bug.
You are the assignee for the bug.
More information about the mono-bugs
mailing list