|Version 38 (modified by 9 years ago) ( diff ),|
User Guidelines Localisation
Table of Contents
Contributing to a Translation of Sahana Eden
Translation to other languages is highly appreciated.Sahana Pootle Server is available as on online tool used for Translations. Please see the Pootle User Guidelines for instructions or contact the MailingList for advice.
Translate Sahana Eden into a New Language
1. Create Language File
Create a new file using the ISO 639-1 Code of the Language as the filename. If it is a national variation of a language, eg. New Zealand English, add a suffix to the filename: "en_nz.py".
Sahana Eden can be translated in the following ways:
A. Using Pootle
Sahana Pootle Server is available as on online tool for collaboration, translation refinement and workflow control.
Convert to a .po file for use in Pootle (or other PO file tools such as Virtaal):
- "web2py2po" scripts (part of the Translate Toolkit)
- Use 1.8.1+ (or this patch for 1.8.0)
- 1.10 has UTF-8 issues (po2web2py needs updating to match rest of system)
For UTF-8, beware of the encoding - needs to be 'without BOM' or 'ANSI as UTF-8'.
- this is both within the
languages/file & also with any UTF-8 direct in customised Views.
web2py2po -i zh-tw.py -o zh-tw.po # Use Pootle &/or Virtaal to translate, then: po2web2py -i zh-tw.po -o zh-tw.py
NB The .py output looks wrong, with raw UTF-8 binary characters, however it works fine if you let Web2Py process it:
- copy into 'languages' folder
- Add this to
settings.L10n.languages_readonly = False
- run Eden with this language: http://127.0.0.1:8000/eden/default/index?_language=xx
- comment the setting in
B. Using Auto-Translator
You can -also- try a new method, using a beta tool, which translates any file (including the web2py languages files) using the Google Translate API:
- Go to Auto-Translator, download, uncompress the .tar.gz archive
- Inside the uncompressed directory, execute the application with:
- ./autotranslate.py (parameters) or
- python autotranslate.py (parameters)
(The parameters are: filename, origin language and destination language)
Example: ./autotranslate.py /home/johndoe/web2py/applications/eden/languages/es.py en es
Wait (you'll see an advance status) and DONE. Just refine the translations (inside web2py or just open with a text editor)
Please provide any bug report or problem to the main list
C. Using Web2Py Admin UI
You can then edit the language file directly in the Web2Py Admin UI.
If wishing to provide access to just language strings & not the rest of the source code:
- Script to update language files:
cd web2py python web2py.py -S eden -R applications/eden/static/scripts/tools/languages.py
Translate Wiki Pages
- Translated pages with ISO 639-2 Language Code extension (original english page = no extension), e.g.
- original page: eden.sahanafoundation.org/wiki/BluePrintInternationalisation
- german translation: eden.sahanafoundation.org/wiki/BluePrintInternationalisation/de
- Insert [[TranslatedPages]] macro to display a list of available translations of a page (at best at bottom of page)
- Save the exported file as a csv
- Open Excel
- Import the data using Data-->Import External Data --> Import Data
- Select the file type of "csv" and browse to your file
- In the import wizard change the File_Origin to "65001 UTF" (or choose correct language character identifier)
- Change the Delimiter to comma
- Select where to import to and Finish