Changes between Version 12 and Version 13 of Event/2012/GSoC/Translation


Ignore:
Timestamp:
05/17/12 11:06:27 (9 years ago)
Author:
graeme
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Event/2012/GSoC/Translation

    v12 v13  
    33[http://eden.sahanafoundation.org/wiki/BluePrintTranslation BluePrint reference]
    44
    5 === 1. Personal Details ===
    65
    7 * Name: Kalpa Pathum Welivitigoda
    8 
    9 * Communication details
    10  * Email: callkalpa [AT] gmail.com , callkalpa [AT] fedoraproject.org
    11  * Freenode IRC Nickname: callkalpa
    12  * Skype: callkalpa
    13  * Blog: www.kalpapathum.blogspot.com
    14 
    15 * Include Biographical information about yourself, your education, country, timezone etc.
    16  * I am an undergraduate at Department of Electrical Engineering, Faculty of Engineering, University of Moratuwa, Sri Lanka
    17  * Country: Sri Lanka
    18  * Time zone: GMT+0530
    19 
    20 * If you have a link to a resume/CV/LinkedIn profile, include it here
    21  * http://lk.linkedin.com/pub/kalpa-pathum-welivitigoda/a/333/39a
    22 
    23 * Please provide an overview of your exposure to similar technologies and/or FOSS in general.
    24  * I have been involved with localising following projects to Sinhala, which is my native language
    25   * GNOME
    26   * KDE
    27   * Sugar Labs
    28   * Firefox
    29   * OpenOffice.org
    30  (here I have worked with Pootle)
    31  * I am a packager at [http://www.sugarlabs.org Sugar Labs], a contributor at [http://www.hanthana.org Hanthana Linux], and occasionally write articles to local FOSS Magazines.
    32 
    33 * Please answer the question - “Why would you like to help the Sahana project?”
    34  * Sahana is a project which helps to help people in case of need. It is into humanitarian FOSS. Since it's initial deployment in Sri Lanka to manage post tsunami disaster it has been deployed in many other part of the globe to help disaster victims. Contributing to such a project I myself believe I help the people really in need of help. And it brings me the happiness that I have helped them.
    35 
    36 === 2. Personal Availability ===
    37 
    38 * Have you reviewed the timeline for GSOC2012?
    39  * Yes I have already
    40 
    41 * Do you have any significant conflicts with the listed schedule? If so, please list them here.
    42  * I have examinations at the university from 24th April to 10th May. Since it is the community bonding period I don't think that it will be a major issue.
    43 
    44 * Will you need to finish your project prior to the end of the GSOC?
    45  * No. My project plan is for the entire GSoC period.
    46 
    47 * Are there any significant periods during the summer that you will not be available?
    48  * I might not be available from 18th May to 21st May as I will be participating at the [https://fedoraproject.org/wiki/FUDCon:KualaLumpur_2012 FUDCon 2012 at Malaysia]. I will be participating only if they sponsor me, so that is tentative.
    49 
    50 === 3. Project Abstract ===
     6=== Project Abstract ===
    517
    528Sahana-eden currently uses web2py translating feature to translate sahana-eden to different languages. With the current system only the original strings and the translated strings are available to the translators. That only would not be enough to translate correctly with the proper meaning. The objective of the project is to improve the translation process so that the translators have more information such as file name, line number, comments for the translators etc. So for example the translators will know the module in which the strings are in and that will help to translate more appropriately. Further the T() function currently used to identify strings to be translated will be improved so that the developer can add a comment for the translators. And a GUI (a web page) embedded into eden will be implemented so as to translations on the fly and see the progress of the translations.
    539
    54 === 4. Project Plan ===
     10=== Project Plan ===
    5511
    56 This section is to provide the detail of your project proposal. Take as much space as is necessary.
    57 
    58 * Project Deliverable
    59  * code which enables a better translate sysem in sahana-eden
    60  * a web interface which enables to translate on the fly and show the progress
    61 
    62 * Project Justification
    63  * Translation of a project enables the project to be utilized by a wider range of users/developers. Sahana, being a disaster management systems is essential to reach people in need in spite of their language or any other reason. Translators are trying their best to translate Sahana to other languages as well so that the purpose is served. This project will make translators life easy and they will result in better translations. Ultimately the people using sahana, irrespective of their language will be highly benefited.
    64 
    65 * Implementation Plan
    66  1. First phase will be a CLI implementation. A python script is developed to extract and store strings from the interface and modules being used. Currently using modules can be extracted from /models/000_config.py. The script will be extracting the file name, line number and the string to be translated.
    67  2. There are two approaches to implement the project as stated in (http://eden.sahanafoundation.org/wiki/BluePrintTranslation) and extracting stings to a spreadsheet is preferred. So the stored strings will be converted to a spreadsheet.
    68  3. The spreadsheet with translated strings will be fed to the appropriate language file in languages/
    69  4. Automation through step 1-3 (I have to study the current system. The current system edits the language file in /languages when the module is triggered)
    70  5. Modify T() function so that the developers can pass comments to translators
    71  6. Add extraction and storage of comments to the initial python script
    72  7. Test the system
    73  8. Implement a web interface and integrate it to eden (I have already gone through the tutorial at [http://eden.sahanafoundation.org/attachment/wiki/SahanaCamp/1.2/Sahana%20Eden%20-%20Introduction%20to%20the%20Code.pdf Introduction to the Code] so integration will be easy
    74  9. Testing and bug fixing
    75 
    76 * Future Options
    77  * Using a spreadsheet is just one approach. The other at the moment is using pootle. In case the community decide to use pootle a system can be implemented to use this projects string file and convert it to a po file which can be used by pootle. Otherwise the developers have to replace all their T() functions with gettext().
    78 
    79 * Relevant Experience
    80  * as I have mentioned earlier I have involved with translation using pootle which helps me to understand what's going on with the translation process.
    81  * my skill on python will help me through out the project (some python code I have written can be found in my blog)
    82 
    83 === 5. Project Goals and Timeline ===
    84 
    85 * Work already undertaken
    86  * I have already studied the current localisation system as described in the [http://en.flossmanuals.net/sahana-eden/localisation/ Localisation] chapter of the book. With that guide I have translated some parts (mainly the menu bar) of sahan-eden to Sinhala, which is my native language. Following is a snap of the translated sahana-eden.
    87   * http://callkalpa.fedorapeople.org/sahana-eden/sahana-eden-sinhala.png
    88 
     12=== Project Goals and Timeline ===
    8913
    9014||= Due Date =||= SMART goal =||= Measure =||
    9115||||||'''First trimester (24 April - 20 May)'''||
    92 || 17 May || Study on [http://translate.sourceforge.net/wiki/toolkit/index Translate Toolkit]: for translating to and from spreadsheets || code committed locally ||
    93 ||||||'''Second trimester (21 May - 9 July)''' : Implementation of CLI||
    94 || 28 May || Develop a python script to extract and store strings from the modules being used || code committed to trunk ||
    95 || 4 June || Convert the file of stored strings to a spreadsheet || code committed to trunk ||
    96 || 11 June || Develop a python script to feed the translated string from the spreadsheet back into eden || code committed to trunk ||
    97 || 22 June || Automate the above three processes || code committed to trunk ||
    98 || 30 June || Modify T() function as required || code committed to trunk ||
    99 || 8 July || Testing and bug fixing || demo ||
    100 ||||||'''Third trimester (10 July - 13 August)''' : Implementation of GUI||
    101 || 15 July || Commit adjustments based on the mentor's feedback of the mid evaluation || code committed to trunk ||
    102 || 25 July || Implementation of on the fly translation || code committed to trunk ||
    103 || 3 August || Implementation of displaying progress report on translation of each module || code committed to trunk ||
    104 || 13 August || Testing and bug fixing || demo ||
     16|| 17 May ||  || ||
     17||||||'''Second trimester (21 May - 9 July)'''||
     18|| 28 May ||  || ||
     19|| 4 June ||  || ||
     20|| 11 June ||  || ||
     21|| 22 June ||  || ||
     22|| 30 June ||  || ||
     23|| 8 July ||  || ||
     24||||||'''Third trimester (10 July - 13 August)'''||
     25|| 15 July ||  || ||
     26|| 25 July ||  || ||
     27|| 3 August ||  || ||
     28|| 13 August ||  || ||