Internationalization/feasibility: Difference between revisions
Jump to navigation
Jump to search
direct link |
No edit summary |
||
| (13 intermediate revisions by 3 users not shown) | |||
| Line 1: | Line 1: | ||
[[Category:Internationalization]] | |||
[[Category:Internationalization SA project]] | |||
==Summary== | ==Summary== | ||
Our task is to find out the possible main difficulties that will be encoutered during both design and implementation of the [[internationalization|i18n]] framework. | Our task is to find out the possible main difficulties that will be encoutered during both design and implementation of the [[internationalization|i18n]] framework. | ||
| Line 7: | Line 10: | ||
* runtime generated/composed strings with variables | * runtime generated/composed strings with variables | ||
==String types and their possible | ==String types and their possible difficulties== | ||
===Constant String=== | |||
Workbench_name: <font color="Blue">STRING is</font> <font color="Green">"EiffelStudio"</font> | |||
====Difficulties==== | |||
====Possible Solution==== | |||
===String with label specific syntax=== | |||
m_to_lower: <font color="Blue">STRING is</font> <font color="Green">"Set to &Lowercase%TCtrl+Shift+U"</font> | |||
====Difficulties==== | |||
* Bad readability for the traducer | |||
* Shortcuts conflict | |||
====Possible Solution==== | |||
===Composed String=== | |||
m_About:<font color="Blue">STRING is</font> | |||
<font color="Blue">once</font> | |||
<font color="Blue">Result</font>:<font color="Green">"&About"</font><font color="Red">+</font> Workbench_name <font color="Red">+</font><font color="Green"> "..."</font> | |||
<font color="Blue">end</font> | |||
====Difficulties==== | |||
====Possible Solution==== | |||
===Runtime composed String containging queries=== | |||
w_Project_directory_not_exist (file_name, dir_name: <font color="Blue">STRING</font>):<font color="Blue">STRING is</font> | |||
<font color="Blue">do</font> | |||
<font color="Blue">create Result</font>.make(256) | |||
<font color="Blue">Result</font>.append (<font color="Green">"%NCannot open project '"</font>) | |||
<font color="Blue">Result</font>.append (file_name) | |||
<font color="Blue">Result</font>.append (<font color="Green">"'.%N%NMake sure you have a complete EIFGEN directory in '"</font>) | |||
<font color="Blue">Result</font>.append (dir_name) | |||
<font color="Blue">Result</font>.append (<font color="Green">"'."</font>) | |||
<font color="Blue">end</font> | |||
====Difficulties==== | |||
====Possible Solution==== | |||
==Important Classes== | |||
====Defining and formatting Strings==== | |||
* INTERFACE_NAMES: Include all the strings of the ES interface (buttons, labels, shortcuts...) | |||
* TEXT_FORMATTER: Text formatter for all text output formatting | |||
* ERROR: Error object sent by the compiler to the workbench. Ancestor class of all error classes (WARNING, SYNTAX_ERROR, INTERRUPT_ERROR, LACE_ERROR,EIFFEL_ERROR...) | |||
====Implementations==== | |||
* STRING_GENERAL: "Common ancestors to all STRING classes." [base] | |||
** STRING: [base] | |||
*** UC_STRING: Unicode strings [gobo] | |||
**** UC_UTF8_STRING: Unicode strings with UTF-8 encoding | |||
** STRING_32: [base] | |||
* UC_CHARACTER: Unicode characters [gobo] | |||
* KS_STRING: Portable interface for class STRING [Gobo] | |||
* cluster: "gobo.kernel.unicode" | |||
* WIDE_CHARACTER: Unicode characters, with comparison operations [base] | |||
Latest revision as of 17:30, 15 August 2006
Summary
Our task is to find out the possible main difficulties that will be encoutered during both design and implementation of the i18n framework.
Main focuses are:
- state of the Unicode implementation
- strings usage in Vision2
- runtime generated/composed strings with variables
String types and their possible difficulties
Constant String
Workbench_name: STRING is "EiffelStudio"
Difficulties
Possible Solution
String with label specific syntax
m_to_lower: STRING is "Set to &Lowercase%TCtrl+Shift+U"
Difficulties
- Bad readability for the traducer
- Shortcuts conflict
Possible Solution
Composed String
m_About:STRING is
once
Result:"&About"+ Workbench_name + "..."
end
Difficulties
Possible Solution
Runtime composed String containging queries
w_Project_directory_not_exist (file_name, dir_name: STRING):STRING is
do
create Result.make(256)
Result.append ("%NCannot open project '")
Result.append (file_name)
Result.append ("'.%N%NMake sure you have a complete EIFGEN directory in '")
Result.append (dir_name)
Result.append ("'.")
end
Difficulties
Possible Solution
Important Classes
Defining and formatting Strings
- INTERFACE_NAMES: Include all the strings of the ES interface (buttons, labels, shortcuts...)
- TEXT_FORMATTER: Text formatter for all text output formatting
- ERROR: Error object sent by the compiler to the workbench. Ancestor class of all error classes (WARNING, SYNTAX_ERROR, INTERRUPT_ERROR, LACE_ERROR,EIFFEL_ERROR...)
Implementations
- STRING_GENERAL: "Common ancestors to all STRING classes." [base]
- STRING: [base]
- UC_STRING: Unicode strings [gobo]
- UC_UTF8_STRING: Unicode strings with UTF-8 encoding
- UC_STRING: Unicode strings [gobo]
- STRING_32: [base]
- STRING: [base]
- UC_CHARACTER: Unicode characters [gobo]
- KS_STRING: Portable interface for class STRING [Gobo]
- cluster: "gobo.kernel.unicode"
- WIDE_CHARACTER: Unicode characters, with comparison operations [base]