PCSX2 Documentation/Translation Guide: Difference between revisions

Jump to navigation Jump to search
m
a wee better
No edit summary
m (a wee better)
 
(5 intermediate revisions by 3 users not shown)
Line 13: Line 13:
Fortunately there are tools now available to make editing .po files easier. The recommended tool for creating and updating .po files is Poedit. It's an open source app that makes using gettext (usually a terse command line tool) almost a pleasurable experience. Since I personally have no earthly idea how to use gettext, and have only ever used Poedit, the rest of this quick tutorial will read as if Poedit is the only way to actually get the job done.
Fortunately there are tools now available to make editing .po files easier. The recommended tool for creating and updating .po files is Poedit. It's an open source app that makes using gettext (usually a terse command line tool) almost a pleasurable experience. Since I personally have no earthly idea how to use gettext, and have only ever used Poedit, the rest of this quick tutorial will read as if Poedit is the only way to actually get the job done.


See our UsingPoedit page for details on how to download, install, and configure Poedit.
See our [[PCSX2 Documentation/Using Poedit|Using Poedit]] page for details on how to download, install, and configure Poedit.


==PCSX2-specific Extension: Iconized gettext Identifiers==
==PCSX2-specific Extension: Iconized gettext Identifiers==
Line 39: Line 39:
*#msgfmt -> compile the po files into mo files then install the results into bin/Langs directory.
*#msgfmt -> compile the po files into mo files then install the results into bin/Langs directory.
To update/upload a new translation, it is as easy as copy the new po into the locales directory, call the script, commit the result.
To update/upload a new translation, it is as easy as copy the new po into the locales directory, call the script, commit the result.
Downloading and Using POT files
The latest stable release POT file pack can be found here: https://code.google.com/p/pcsx2/downloads/list ('''Warning''': this link has expired and as of may 2015 there are no alternatives)


(look for the one labeled PCSX2_POT with some extra version information)
==Downloading and Using POT files==
The 1.4 stable release POT file pack can be found here: https://github.com/PCSX2/pcsx2/releases/tag/v1.4.0
Download the source code (zip) open the file and follow the path pcsx2-1.4.0/locales/templates


You may also download the POT files individually from our SVN server. POT files are housed in the /locales/templates/ folder. The latest templates for the active trunk/devel branch of PCSX2 can be found here: http://web.archive.org/web/20141024194015/https://pcsx2.googlecode.com/svn/trunk/locales/templates/. Note that working from the trunk POTs is not recommended, except in cases where it has been quite a while since the latest stable or beta releases, or when the PCSX2 developers have entered Release Candidiate stages for an upcoming stable release. In most other cases you will want to check out a stable release branch instead, and use the templates from that.
https://github.com/PCSX2/pcsx2/tree/master/locales/templates  


As of the last update to this wiki, the latest POT file pack is the 0.9.8 release translation POT.
You may also download the POT files individually from our GIT server. POT files are housed in the /locales/templates/ folder. The latest templates for the active trunk/devel branch of PCSX2 can be found here: https://github.com/PCSX2/pcsx2/tree/master/locales/templates. Note that working from the trunk POTs is not recommended, except in cases where it has been quite a while since the latest stable or beta releases, or when the PCSX2 developers have entered Release Candidiate stages for an upcoming stable release. In most other cases you will want to check out a stable release branch instead, and use the templates from that.


The Multiple POT files in PCSX2
As of the last update to this wiki, the latest stable POT file pack is the 1.4.0 release translation POT.
 
==The Multiple POT files in PCSX2==
To assist translators, PCSX2 text messages have been split into a handful of different POT files, as follows:
To assist translators, PCSX2 text messages have been split into a handful of different POT files, as follows:
*pcsx2_main - menu items, buttons, and most labels. High priority; most or all of this file should be translated for a translation to be considered useful.
*pcsx2_iconized - iconized notices, popups, and errors. Most of these are also very high priority; and most or all of this file should be translated for a translation to be considered useful.
*pcsx2_tertiary - Context tips, wizards, and other non-critical user interface elements. All of these strings are also in iconized form.
*pcsx2_devel - Strings used only by devel and debug builds of PCSX2. These mostly consist of loggig and menu options available only in development builds (and excluded from release builds for performance reasons), and tooltips associated with them. Translating these items is purely optional -- most people will never know or care about them.


pcsx2_main - menu items, buttons, and most labels. High priority; most or all of this file should be translated for a translation to be considered useful.
pcsx2_iconized - iconized notices, popups, and errors. Most of these are also very high priority; and most or all of this file should be translated for a translation to be considered useful.
pcsx2_tertiary - Context tips, wizards, and other non-critical user interface elements. All of these strings are also in iconized form.
pcsx2_devel - Strings used only by devel and debug builds of PCSX2. These mostly consist of loggig and menu options available only in development builds (and excluded from release builds for performance reasons), and tooltips associated with them. Translating these items is purely optional -- most people will never know or care about them.
Only the main PO is required for PCSX2 to detect and use a language. Iconized and tertiary POs are optional. For strings in the iconized and tertiary POTs, you will have to reference the source code to obtain the original English text. It is highly recommended that you use Poedit, since it has a very nice code reference feature built-in. All strings in pcsx2_main.pot are standard gettext strings, and can be translated easily using any regular text editor.
Only the main PO is required for PCSX2 to detect and use a language. Iconized and tertiary POs are optional. For strings in the iconized and tertiary POTs, you will have to reference the source code to obtain the original English text. It is highly recommended that you use Poedit, since it has a very nice code reference feature built-in. All strings in pcsx2_main.pot are standard gettext strings, and can be translated easily using any regular text editor.


Future versions of PCSX2 may divide the POT files differently.
Future versions of PCSX2 may divide the POT files differently.


Submitting your contribution
==Submitting your contribution==
Before starting a translation, please apply for it in this thread (if there has been no other applicant before you): http://forums.pcsx2.net/Thread-Program-and-Guide-translation-applications
Before starting a translation, please apply for it in this thread (if there has been no other applicant before you): http://forums.pcsx2.net/Thread-Program-and-Guide-translation-applications


When you're done, you will be given the rights to post in the specific forum for the language you translated into in our board. There you can attach either the actual PO file archive you have created, or a patchfile that can be applied against the current svn copy of the translation.
When you're done, you will be given the rights to post in the specific forum for the language you translated into in our board. There you can attach either the actual PO file archive you have created, or a patchfile that can be applied against the current svn copy of the translation.


For those of you who are familiar and comfortable with Subversion (SVN): The PCSX2 Team hosts all available translations from our googlecode repository. Available translations and their submission history can be viewed online at https://pcsx2.googlecode.com/svn/trunk/locales/. You can also use an Svn tool such as TortoiseSvn to perform more detailed commit history analysis.
For those of you who are familiar and comfortable with Github: The PCSX2 Team hosts all available translations from our github repository. Available translations and their submission history can be viewed online at https://github.com/PCSX2/pcsx2/tree/master/locales/templates. You can also use an Git tool such as Git for windows to perform more detailed commit history analysis.


Translations are branched according to the releases of PCSX2 that they conform to.
Translations are branched according to the releases of PCSX2 that they conform to.


{{PCSX2 Main Documentation Navbox}}
 
{{PCSX2 Documentation Navbox}}
67,565

edits

Navigation menu