Changes

no edit summary
Line 14: Line 14:       −
This goal requires two steps - internationalization (I18n) and localization (l10n). The first step (I18n) is to provide tools and documentation to facilitate the second step (L10n). Sugar has adopted Pootle as the primary tool for I18n. However, there are two important elements which
+
This goal requires two steps - internationalization (I18n) and localization (l10n). The first step (I18n) is to provide tools and documentation to facilitate the second step (L10n).  
do not lend themselves to this approach.
  −
* First are the FLOSS manuals (documentation) and its Sugar activity embodiment, Help Activity.
  −
* Second, the Sugar-web-activities (based on html5 and javascript).  
        Line 49: Line 46:  
Arranging 'L10n' days at deployments where teachers have students improve strings in the relevant .po or supply missing strings. The outcome of an 'L10n' day should be an updated localization for that native language.  
 
Arranging 'L10n' days at deployments where teachers have students improve strings in the relevant .po or supply missing strings. The outcome of an 'L10n' day should be an updated localization for that native language.  
   −
Arrange for participating deployments to be publically recognized for their contribution.
+
Arrange for participating deployments to be publicly recognized for their contribution.
    
Suggestions by Sebastian:
 
Suggestions by Sebastian:
Line 87: Line 84:  
===ToDo:===
 
===ToDo:===
    +
Discussion in the committee shows that our I18n infrastructure is in need of urgent maintenance.
 +
ASLO no longer provides links to the git version. Many activities were repaired by the GCI participants. These need to be reviewed to make sure that the translation files are available and current.  Chris Leonard has provided a list of 'missing activities', i.e. activities which had localization files but which were misplaced in a pootle migration. Etoys has not been updated since 2009 and the localization files are no longer available. The translate.sugarlabs.org which is the repository for the localization files is missing some files.
   −
The technical means for localization at the local level do not exist.
+
Provide a documented process for a local deployment to localize Sugar and some activities to a local language. The goal of the deployment is to make Sugar (and use of the XO more accessible).
   −
* It must be possible to touch and change PO files on local machines in Sugar.
+
* Chris Leonard has suggested that we base localization by a deployment on virtaal (a component of Pootle). He has installed and run this tool on an XO in the gnome desktop.
* It must be possible to capture that local work back at the central Pootle server for the benefit of others.
      +
* As Caryl has pointed out, we also need to document this process so that it can be accomplished at a school as a classroom activity. This involves training teachers and providing tutorials for students.
    
Identify Sugar activities in ASLO which do not support localization (are not projects in translate.sugarlabs.org). Arrange for them to use gettext. Create master files (localize) to English.
 
Identify Sugar activities in ASLO which do not support localization (are not projects in translate.sugarlabs.org). Arrange for them to use gettext. Create master files (localize) to English.
Line 102: Line 101:  
Sugar development could review Sugar (Python) activities to see if they support Pootle and attempt, eg. through GSOC, to get activities upgraded to implement Pootle and to include a base set of English Pootle files.
 
Sugar development could review Sugar (Python) activities to see if they support Pootle and attempt, eg. through GSOC, to get activities upgraded to implement Pootle and to include a base set of English Pootle files.
   −
Define a standard I18n method for Sugarizer and sugar-web-activities.
+
Define a standard I18n method for Sugarizer and sugar-web-activities. Chris Leonard recommends using the procedure adopted for turtleblocks.js. We need corresponding documentation of this process to enable it to be used immediately by GSOC participants who implement or port activities as sugar-web-activities.  
   −
Provide the I18n infrastructure to support localization of Sugarizer and sugar-web-activities.
+
Determine whether a common process can be used to localize sugar-web-activities and Sugarizer and its activities. (e.g. by using polyglot.js)
    
Provide a tool to to test python source code for compliance with the needs of Pootle
 
Provide a tool to to test python source code for compliance with the needs of Pootle
Line 111: Line 110:  
* All strings match a msgstr in the corresponding en.po file  
 
* All strings match a msgstr in the corresponding en.po file  
   −
Provide a tool to verify that the .po file for all localizations are included in a release.
+
This may not be feasible since some strings ought not to be localized (e.g. the gsettings schema).
 +
 
 +
Provide a tool to verify that the available localizations are included in a release.
    
Develop a glossary of terms needed to refer to the XO, Sugar, and actions to be taken by users (e.g. close the XO, switch to the Group View).  
 
Develop a glossary of terms needed to refer to the XO, Sugar, and actions to be taken by users (e.g. close the XO, switch to the Group View).  
   −
Develop a tool to parse the strings in the master files to identify the vocabulary used.
+
The range.py (needing refinement) can be used to look at the strings in a po file to be localized to ensure that they do not use conflicting words or a more technical vocabulary that necessary. Every extra string in the master file may result in 50-100 translations.  
(see http://www.lextutor.ca/research/nation_waring_97.html" - interesting but not directly relevant
  −
 
  −
Paul Nation developed a simple program 'range' which scans a text and identifies words by a presence
  −
in one or more included word lists. For example, one of the 1000 most frequently used words would be printed in the default font/color. A word not on this list would be printed in red. Such a tool could be used to check the base strings for consistent use of words and for use of common English words. The cited article explains why this is important and links to specific lists of commonly used words.
      
Prepare a GSOC task to develop an I18n strategy and supporting tools for JavaScript activities. The following can be a good starting point:
 
Prepare a GSOC task to develop an I18n strategy and supporting tools for JavaScript activities. The following can be a good starting point:
Line 134: Line 131:     
Document and improve all processes to be 'run-over-by-bus-safe'
 
Document and improve all processes to be 'run-over-by-bus-safe'
 +
    
==Original Draft==
 
==Original Draft==
184

edits