Difference between revisions of "Internationalization/obstacles"

 
 
(5 intermediate revisions by 4 users not shown)
Line 1: Line 1:
Problems we encountered during implementation
+
[[Category:Internationalization]]
 +
==Obstacles found during the semester project==
 +
 
 +
===Library===
 +
 
 +
No significant problems. There were some slight hiccups with UTF-16, as the gobo parser expects a BOM and so cannot parse UTF16LE or UTF-16BE. Unluckily for us, windows uses little-endian UTF-16.
 +
 
 +
===EiffelStudio===
 +
 
 +
*Formatters require a certain property to be a lowercase string and read this directly from INTERFACE_NAMES, meaning that if the i18n library supplies a translated string that is not lowercase, an exception violation happens.  This would superficially be relatively easy to fix, but it is not such a good idea to do this anyway, because with STRING_32 there may not even be a lowercase version of the string (asian scripts come to mind). This behaviour may also happen elsewhere, but I am not sure.
 +
 
 +
 
 +
==Problems encountered during the SA project==
 +
 
 +
===Problems we encountered during implementation===
  
 
* Unicode (UTF-8) support was not fully implemented (e.g. for gtk)
 
* Unicode (UTF-8) support was not fully implemented (e.g. for gtk)
 
* Facilities to write and read STRING_32 to/from files were not present
 
* Facilities to write and read STRING_32 to/from files were not present
  
 +
===Difficulties to complete the translation of EiffelStudio:===
 
* Many strings are hard-coded anywhere inside EiffelStudio, making the translation difficult
 
* Many strings are hard-coded anywhere inside EiffelStudio, making the translation difficult
 +
* All the functions taking strings as arguments expect a STRING, where they should expect a STRING_GENERAL, and they return a STRING which may not be applicable in every case. A STRING_32 can also represent the same content of a STRING_8, thus it should be preferred.
 +
* It seems that to_uppercase and to_lowercase procedures are not defined for STRING_32 and are used in the studio, these should have been implemented by the vision project and may be buggy.

Latest revision as of 10:34, 31 October 2006

Obstacles found during the semester project

Library

No significant problems. There were some slight hiccups with UTF-16, as the gobo parser expects a BOM and so cannot parse UTF16LE or UTF-16BE. Unluckily for us, windows uses little-endian UTF-16.

EiffelStudio

  • Formatters require a certain property to be a lowercase string and read this directly from INTERFACE_NAMES, meaning that if the i18n library supplies a translated string that is not lowercase, an exception violation happens. This would superficially be relatively easy to fix, but it is not such a good idea to do this anyway, because with STRING_32 there may not even be a lowercase version of the string (asian scripts come to mind). This behaviour may also happen elsewhere, but I am not sure.


Problems encountered during the SA project

Problems we encountered during implementation

  • Unicode (UTF-8) support was not fully implemented (e.g. for gtk)
  • Facilities to write and read STRING_32 to/from files were not present

Difficulties to complete the translation of EiffelStudio:

  • Many strings are hard-coded anywhere inside EiffelStudio, making the translation difficult
  • All the functions taking strings as arguments expect a STRING, where they should expect a STRING_GENERAL, and they return a STRING which may not be applicable in every case. A STRING_32 can also represent the same content of a STRING_8, thus it should be preferred.
  • It seems that to_uppercase and to_lowercase procedures are not defined for STRING_32 and are used in the studio, these should have been implemented by the vision project and may be buggy.