Changes between Version 12 and Version 13 of TranslateIntro

Show
Ignore:
Author:
davea (IP: 128.32.18.181)
Timestamp:
05/22/09 12:56:34 (6 months ago)
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • TranslateIntro

    v12 v13  
    1 = Web and GUI translations
     1= Translating BOINC
    22         
    3 BOINC has mechanisms for non-English translations of 
     3BOINC supports non-English translations of 
    44 
    5     * Parts of this site (the [/download.php Download] and [/poll.php BOINC user survey] pages, and related pages) 
     5    * This web site 
    66    * The BOINC Manager 
    7     * Parts of the BOINC-supplied portion of project web sites 
     7    * The generic (BOINC-supplied) part of project web sites 
    88    * The project-specific parts of project web sites  
    99 
    10 == Instructions for volunteer translators == 
     10Translations are done by volunteers. 
     11If you're interested in helping: 
    1112 
    12 Translations are done by volunteers. If you're interested in helping: 
     13    * Visit the [https://boinc.berkeley.edu/translate/ BOINC Translation Services] web page (BTS) and click on your language. 
    1314 
    14     * Register at the [https://boinc.berkeley.edu/translate/ BOINC Translation Services] web page (BTS). 
    15     * Subscribe to the [mlist:boinc_loc boinc_loc] email list, which is for translation-related discussion and announcements. 
    16     * Make suggestions and send an email to the boinc_loc email list telling you made suggestions for a specific language that need a review. 
    17     * Because web sites are dynamic, you will have to periodically update your translation. You can do this efficiently by looking at the BTS web page or the SVN diffs of the authoritative translation file.  
    18 {{{ 
    19 #!comment Where can someone find this authoritative file? It must be somewhere in the svn but where? 
    20 }}} 
    21     * Email the translation manager ([[T(MailHide|tran...@boinc...|k=01LUzWNjTW63Fi-QRO2-H2ug==&c=hVi2Vhq36r0HGWxOKyVciRIHCa8ey_fi-teaby_UMcg=)]]) if your language is not listed in the BOINC Translation Services. 
    22     * If you are translation manager you can also download the .po file via SVN or BTS and use an external program like [http://www.poedit.net/ poedit] or [http://translate.sourceforge.net/wiki/virtaal/index Virtaal]. 
     15You'll see some or all of the following "projects": 
     16 * Pootle: ignore this 
     17 * BOINC Client 6.6.x: the current client release. '''Only BOINC-Manager.po is relevant; ignore other files.''' 
     18 * BOINC Development: the development versions of both client and server. This should contain: 
     19  * BOINC-Manager.po: translations for the BOINC Manager 
     20  * BOINC-Project-Generic.po: translations for the generic part of project web sites 
     21  * BOINC-Web.po: translations for the BOINC web site 
     22 * SETI@Home Website 
    2323 
    24 == Translation files == 
     24If any of these isn't there, it means the translation doesn't exist yet. 
     25If it is there, the color-coded bar shows how much of the translation has been done. 
    2526 
    26 Most translations are based on translation files. Translation files are in PO format, which is described [http://www.gnu.org/software/gettext/manual/html_node/gettext_9.html#SEC9 here]. These have names like `da.po` (Danish) and `en.po` (English). It's very simple. For example: 
     27If you want to add or modify a translation: 
     28  
     29 * Create an account on the BTS site 
     30 * Subscribe to the [mlist:boinc_loc boinc_loc] email list, which is for translation-related discussion and announcements. 
    2731 
    28 {{{ 
    29 #!html 
    30 <h2 style="text-align: center;">en.po (English)</h2> 
    31 }}} 
     32Email boinc_loc if your language is not listed in the BOINC Translation Services. 
    3233 
    33 {{{ 
    34 msgid "Current version" 
    35 msgstr "" 
     34Selected people have "write access" to each language. 
    3635 
    37 msgid "%1 currently has the following applications. " 
    38 "When you participate in %2, work for one or more " 
    39 "of these applications will be assigned to your computer. " 
    40 "The current version of the application will be downloaded " 
    41 "to your computer. This happens automatically; you don't have to do anything." 
    42 msgstr "" 
    43 }}} 
     36 * If you want write access to a language, send email to boinc_loc requesting it. 
    4437 
    45 {{{ 
    46 #!html 
    47 <h2 style="text-align: center;">da.po (Danish)</h2> 
    48 }}} 
     38If you have write access to a language, make sure to monitor the boinc_loc email list 
     39for notifications of when there are new strings to translate. 
     40You can do translations via the BTS site. 
     41If prefer, you can download the .po file and use an external program like [http://www.poedit.net/ poedit] or [http://translate.sourceforge.net/wiki/virtaal/index Virtaal]. 
    4942 
    50 {{{ 
    51 msgid "Current version" 
    52 msgstr "Nuværende version" 
     43If you don't have write access to your language, 
     44you can still help by suggest translations on the BTS site. 
     45When you're done, send email to boinc_loc to notify the person with write access. 
    5346 
    54 msgid "%1 currently has the following applications. " 
    55 "When you participate in %2, work for one or more " 
    56 "of these applications will be assigned to your computer. " 
    57 "The current version of the application will be downloaded " 
    58 "to your computer. This happens automatically; you don't have to do anything." 
    59 msgstr "%1 har i øjeblikket følgende applikationer. " 
    60 "Når du deltager i %2 vil arbejde fra en eller flere " 
    61 "af disse applikationer blive tildelt din computer. " 
    62 "Den nuværende version af applikationen vil blive downloadet " 
    63 "til din computer. Dette sker automatisk - du behøver ikke at gøre noget." 
    64 }}} 
    6547 
    66 Each translation has a token CHARSET whose value should be the character set used in the translation. 
    67 Only UTF-8 is accepted by the BOINC Translation Services. 
    68 You can edit UTF-8 on Windows using [http://notepad-plus.sourceforge.net/uk/site.htm Notepad++]. 
    69 On Linux, you can use [http://www.vim.org/htmldoc/mbyte.html#UTF-8 vim]. 
     48  
    7049 
    71 Here you can find all the translation files for 
    72  
    73     * [source:trunk/boinc/locale/ all languages] 
    74 {{{ 
    75 #!comment There are more places where .po files can be found. Are they used anymore? 
    76 }}} 
    77  
    78 == Writing translatable web pages == 
    79  
    80 Translatable web pages must be PHP, and must include 
    81  
    82 {{{ 
    83 require_once("../inc/translation.inc"); 
    84 }}} 
    85  
    86 Literal text is replaced with `tra("text")`. For example, 
    87  
    88 {{{ 
    89 page_head("Current version"); 
    90 }}} 
    91  
    92 is replaced with 
    93  
    94 {{{ 
    95 page_head(tra("Current version")); 
    96 }}} 
    97  
    98 For BOINC projects, the directory [source:trunk/boinc/html/languages/translations/ html/languages/translations] contains a number of 'translation files'. When a person accesses the page, the browser passes a list of languages. The BOINC PHP code finds the first of these languages for which a translation is available, or English if none. As the page is generated, each call to `tr()` replaces the token with the corresponding translated text. 
    99  
    100 In developing web pages, keep in mind that word order differs between languages, so you should avoid breaking a sentence up into multiple translation units. For example, use constructs like 
    101  
    102 {{{ 
    103 msgid "Already have an original 'Classic' account as of May 14, 2004?" 
    104 "%1We've transferred it, just %2activate it%3. " 
    105 "%4Otherwise %5create a new account%6." 
    106 msgstr "" 
    107 }}} 
    108  
    109 with the corresponding PHP: 
    110  
    111 {{{ 
    112 printf(tra("Already have an original 'Classic' account as of May 14, 2004? %1We've transferred it, just %2activate it%3. %4Otherwise %5create a new account%6."), 
    113 "<br>", "<a href=\"sah_email_form.php\">", "</a>", 
    114 "<p><img src=\"images/arrow_right.gif\">", 
    115 "<a href=create_account_form.php>", "</a>" 
    116 ); 
    117 }}} 
    118  
    119 == Project-specific translations == 
    120  
    121 The web site of a BOINC-based project involves both 
    122  
    123     * BOINC pages, such as the forms for creating accounts. These are part of the BOINC source code distribution, and are updated periodically by BOINC. 
    124     * Project-specific pages (and BOINC pages that are modified by the project).  
    125  
    126 To allow translations of both types of pages, a project can haves its own 'project-specific translation files'. These are stored in a directory [source:trunk/boinc/html/user/project_specific_translations html/user/project_specific_translations]. Project-specific translation files override BOINC translation files. 
    127  
    128 == BOINC Manager translations == 
    129  
    130 Menu names and other text in the BOINC manager are stored in files in [source:trunk/boinc/locale/ boinc/locale/].  

If this page is incomplete or incorrect, please edit it or add it to the wiki to-do list. To do this, you must be logged in; click Login or Register above.