|
|
(8 intermediate revisions by 3 users not shown) |
Line 3: |
Line 3: |
| [[Category:i18n]] | | [[Category:i18n]] |
| | | |
| + | The focus of the ccPublisher 2.2 development cycle was on providing internationalization (i18n) support. This document provides an overview of the available translations; see [[Translate|this page]] for information on creating new translations. |
| | | |
− | ccPublisher 2.2 (currently under development) will focus on providing internationalization (i18n) support. This document is a work in progress that describes the translation process which will be used once ccPublisher 2.2 release candidates are available.
| + | = Screenshots = |
| | | |
− | Translations for ccPublisher are stored in gettext message catalogs. Message catalogs are text files which associate translated strings with identifiers used by the application. Each string to be translated is referred to as a "message".
| + | [[Image:ccPublisher_Choose_License_hr.png|frame|ccPublisher license chooser using the [http://translate.creativecommons.org/hr_HR/ccpublisher/ Croation translation].]] |
| + | [[Image:ccPublisher_Choose_License_zh.png|frame|[http://www.immigrationsolicitors-cj.co.uk/ Immigration solicitors uk] - [http://www.nptquickhousesale.co.uk Sell my house quickly] - [http://www.home-outlet.co.uk/bedroom/ Cheap Bedroom Furniture] [http://translate.creativecommons.org/zh_TW/ccpublisher/ Chinese (Taiwan) translation].]] |
| | | |
− | == Getting Help == | + | = Supported Languages = |
| | | |
− | The [http://lists.berlios.de/mailman/listinfo/cctools-i18n cctools-i18n] mailing list at Berlios.de is used for managing translations for ccPublisher. If you are translating ccPublisher into a new language, you are encouraged to join this list. The addition of new messages to be translated will be announced there, and you may ask questions on the list regarding internationalization. The availability of new message catalogs will also be announced there. | + | The latest release of [[CcPublisher 2 2|ccPublisher 2.2]] includes support for the following languages: |
− | | |
− | == Creating A Translation ==
| |
− | | |
− | When translating ccPublisher there are two files which must be copied and editted for the core application. [[Extending ccPublisher|Extensions]] may have their own message catalogs which need translating (see [[Translating Extensions]] for details on internationalizing ccPublisher extensions). The translation resources are located in the <code>resources/locale</code> subdirectory for a [[Developing ccPublisher 2|development sandbox]]. Use the following instructions to create a new translation for ccPublisher; these instructions are for translating ccPublisher to the fictional "ya" locale and assume a Linux development environment.
| |
− | | |
− | * Create a locale subdirectory for your new translation
| |
− | $ cd resources/locale
| |
− | $ mkdir ya
| |
− | $ mkdir ya/LC_MESSAGES
| |
− | * Copy the template files into the new directory
| |
− | $ cp ccpublisher.pot ya/ccpublisher.po
| |
− | $ cp p6.pot ya/p6.pot
| |
− | * Edit the new files with the translated content. Two areas need editted: the header information and the messages.
| |
− | ** The header information should be updated with the translator's contact information, email address and the character set used. The character set should usually be <code>utf-8</code>.
| |
− | ** Each message is defined by two lines; the translated content goes between the quotes on the <code>msgstr</code> line. The <code>msgid</code> line '''must not be changed'''.
| |
− | ...
| |
− | msgid "OK"
| |
− | msgstr ""
| |
− | ...
| |
− | * You may encounter strings such as <code>"The file %s can not be found."</code>; the <code>%s</code> should be left intact, as ccPublisher will substitute the actual piece of information at run time.
| |
− | * Run ccPublisher with the <code>--locale</code> parameter; alternately if working on your default locale, omit the parameter and ccPublisher will use the operating system's default locale information.
| |
− | Change to the sandbox root directory
| |
− | $ cd ../../..
| |
− | $ python ccp.py --locale ya
| |
− | | |
− | ccPublisher will recompile the .po files into binary message catalogs (.mo files) when it runs if the .po files are newer or the .mo files do not exist. This feature exists to aid translators.
| |
− | | |
− | === Translating using poEdit ===
| |
− | | |
− | [http://www.poedit.org/ poEdit] is an Open Source cross-platform gettext catalogs (.po files) editor. It is built with wxWidgets toolkit and can run on any platform supported by it (although it was only tested on Unix with GTK+ and Windows, and a alpha build for Mac OS X is just released). It aims to provide more convenient approach to editing catalogs than launching Notepad (or vi) and editing the file by hand.
| |
− | | |
− | Just use poEdit's '''File''' -> '''New catelog from POT file...''' function will easily doing so. It even can compile .po into .mo file in the same time you pressing '''Save'''.
| |
− | | |
− | === Translating under Windows ===
| |
− | | |
− | To translate under Windows, download and install an [[CcPublisher 2_2|i18n-enabled release]] (2.1 or later). In the installation directory you will find a '''resources''' directory, which contains the '''locale''' subdirectory. Create a new subdirectory under '''locale''' with a name matching your new locale. For example, to translate ccPublisher into French, create a directory named <code>fr_FR</code>.
| |
− | | |
− | [[Image:Locale_folder_thumb.png|frame|The ccPublisher locale folder ([[:Image:Locale_folder.png|full size]]).]]
| |
− | | |
− | Copy the template files from '''locale''' into your new directory; rename them from .pot to .po.
| |
− | | |
− | [[Image:Fr_FR_thumb.png|frame|The .po files for the new locale ([[:Image:Fr_FR.png|full size]]).]]
| |
− | | |
− | Edit each .po file per the instructions above.
| |
− | | |
− | [[Image:Edit_thumb.png|frame|Editting the .po file ([[:Image:Edit.png|full size]]).]]
| |
− | | |
− | If you are translating ccPublisher to your default locale, simply run ccPublisher to test your translation. If you are translating to a different locale, create a shortcut to <code>ccp.exe</code> and modify it to pass the --locale parameter in.
| |
− | | |
− | [[Image:Edit_shortcut_thumb.png|frame|Editting a shortcut to ccp.exe to specify a locale ([[:Image:Edit_shortcut.png|full size]]).]]
| |
− | | |
− | When you run ccPublisher with the new locale, the message catalogs will be compiled and the application should reflect your translation.
| |
− | | |
− | [[Image:CcPublisher_fr_thumb.png|frame|ccPublisher running with the French locale specified; note the File menu reflects the change to Dossier ([[:Image:CcPublisher_fr.png|full size]]).]]
| |
− | | |
− | === Translating under Mac OS X ===
| |
− | | |
− | Translations for Mac OS X are currently shipped inside the application bundle. To find the translation files via the Finder, right click on the ccPublisher application and select '''Show Package Contents'''. This will open the application bundle in a Finder window. The locale files are stored in '''Contents''' -> '''Resources''' -> '''resources''' -> '''locale'''. Navigate to the locale directory and follow the instructions for Linux or Windows.
| |
− | | |
− | == Translating ''"How Does This Work"'' ==
| |
− | | |
− | The text in the help dialog displayed when the user clicks the ''How Does This Work'' button on the opening page is not contained in the message catalogs. The help text is included in an HTML file which must also be translated to complete the translation process. The file, <code>welcome.html</code>, is located in the '''locale''' directory alongside the .pot message catalog templates; see the appropriate platform section above for information on locating the '''locale''' directory. ccPublisher looks for the translated version of welcome.html in the appropriate locale directory (i.e. in the same directory as the translated .po message catalogs). If a translated version is not found, ccPublisher falls back to English.
| |
− | | |
− | == Submitting a Translation ==
| |
− | | |
− | Once you have completed or updated a translation and tested it, you can submit it to the ccPublisher developers using the Roundup bug tracking system. [http://roundup.creativecommons.org/ccpublisher/issue?@template=item&topic=i18n&priority=feature&title=New+Translation Click here] to create a new issue with the correct default values set. Add the locale information for your new translation to the title and attach the .po and .html files you created (either individually or in a zip/tar file).
| |
− | | |
− | We encourage people submitting bugs and feature requests via Roundup to create accounts so they can easily monitor issues they create.
| |
− | | |
− | == Updating Translations ==
| |
− | | |
− | Strings are sometimes added or removed from the application during development cycles. At those times it is necessary to update the translation (.po) files with the new strings and translations.
| |
− | | |
− | === Using poEdit ===
| |
− | | |
− | If you are using [http://poedit.org poEdit], you can use the '''Update from POT file...''' option. Go to the '''Catalog''' menu and select '''Update from POT file...'''. Select the .pot file which cooresponds to the translation you have open (i.e. if you are updating ccpublisher.po, select ccpublisher.pot).
| |
− | | |
− | [[Image:Poedit_select_catalog_template.png]]
| |
− | | |
− | poEdit will display the new strings it will add, as well as the obsolete strings it will remove.
| |
− | | |
− | [[Image:Poedit_approve_updates.png]]
| |
− | | |
− | === Using GNU gettext tools ===
| |
− | | |
− | The [http://www.gnu.org/software/gettext/ GNU gettext] tools include a command-line tool called <code>msgmerge</code> which may be used to merge two catalogs together. For example, to use msgmerge for ccpublisher.po, you can use the following commands (Linux):
| |
− | | |
− | $ cd resources/locale/en_US
| |
− | $ msgmerge ccpublisher.po ../ccpublisher.pot > new_ccpublisher.po
| |
− | | |
− | This will create a new file (<code>new_ccpublisher.po</code>) containing the merged translations. After examining it, rename it to the original file name (ccpublisher.po).
| |
− | | |
− | == Supported Languages ==
| |
− | | |
− | ccPublisher includes support for the following languages:
| |
| | | |
| * English | | * English |
| + | * Chinese (Taiwan) |
| + | * Croation |
| + | * Dutch |
| + | * Polish |
| + | * Spanish |
| | | |
− | The following languages will be included in the next release:
| + | Translators are working on the following languages; those wishing to assist should sign up on the [http://lists.berlios.de/mailman/listinfo/cctools-i18n cctools-i18n] mailing list. |
| | | |
− | ''(none)''
| + | * Basque |
| + | * Galician |
| + | * German |