README 1.9 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. * purpose
  2. This tool is to generate globalization information from Unicode CLDR, with some changes
  3. to fill the gap between .NET(Windows)-ism and the global standard.
  4. * input resources
  5. There is only an external resource: unicode CLDR. It can be downloaded from
  6. http://www.unicode.org/Public/cldr/
  7. CLDR specificatin can be found at http://www.unicode.org/reports/tr35/
  8. All content has to me extracted into CLDR folder. The latest version used is 30.0.2.
  9. There is an extra mono resource included in this directory called lcids.xml for LCIDs. It's
  10. extracted from National Language Support (NLS) API Reference.
  11. http://msdn.microsoft.com/en-us/goglobal/bb896001.aspx
  12. * generated file
  13. culture-info-table.h contains the following sections:
  14. - datetime_format_entries
  15. See DateTimeFormatEntry.AppendTableRow() in DateTimeFormatEntry.cs.
  16. - number_format_entries
  17. See NumberFormatEntry.AppendTableRow() in NumberFormatEntry.cs.
  18. - culture_entries
  19. See CultureInfoEntry.AppendTableRow() in CultureInfoEntry.cs.
  20. - culture_name_entries
  21. See Driver.Run() in Driver.cs.
  22. - region_entries
  23. See RegionInfoEntry.AppendTableRow() in RegionInfoEntry.cs.
  24. - region_name_entries
  25. See Driver.Run() in Driver.cs.
  26. - locale_strings
  27. See Driver.Run() in Driver.cs.
  28. In each entry, strings are extracted to locale_strings table, and in each structure they are
  29. represented as an index to the string.
  30. * updating the data
  31. Update Makefile.am to get the latest CLDR data. However, CLDR is not complete and
  32. it's missing data for many rarely used cultures. In such cases we provide empty value
  33. but when someone has the knowleadge what the values should be it's recommended to
  34. use online CLDR tool to fill the data gap.
  35. To create the files used by the runtime after an update, run:
  36. make culture-table
  37. make install-culture-table
  38. At the start of Makefile.am there are additional instructions for specific builds.