HOW-TO: Translating OJS and OCS

Are you a Director, Presenter, Reviewer or Conference Manager in need of help? Want to talk to us about workflow issues? This is your forum.

Moderators: jmacgreg, michael

Forum rules
The Public Knowledge Project Support Forum is moving to

This forum will be maintained permanently as an archived historical resource, but all new questions should be added to the new forum. Questions will no longer be monitored on this old forum after March 30, 2015.
Posts: 4191
Joined: Tue Feb 14, 2006 10:50 am

HOW-TO: Translating OJS and OCS

Postby jmacgreg » Fri Apr 25, 2008 3:33 pm

Expanded documentation on translating OJS and OCS is now available:

* (HTML)
* ... lating.pdf (PDF)

The Table of Contents is as follows:

Checking Language Availability
- Checking Your Software for Available Languages
- Checking the PKP Website for Available Languages
Installing a Language
Translating OJS and OCS
- Creating a Manual Translation
- Using the Translation Plugin Tool

Posts: 42
Joined: Wed Jan 19, 2011 3:51 am

Re: HOW-TO: Translating OJS and OCS

Postby georgeKapsomenos » Wed Aug 17, 2011 10:03 am

Hi all!

It's been some time since my last post, I hope everyone is well...

For the past year I have been involved in translating my favorite open-source software into greek and recently through the Kunena forum component for Joomla I have come across a great platform for collaboratively translating (and maintaining/updating translations of) software, e.g. a "localization platform", it's called Transifex...

It works great and it has even more potential (one lacking feature is providing a log of every single edit or suggestion made for every file and every user). Probably the best way to keep translators informed about updated language files (the added strings appear at the end the of each file and there is a percentage indicator informing translators about the level of completion of each file), thus to keep translations updated...

There are great merits in "traditional" ways of translating locale files (like the cross-checking/search functionality in programs like Notepad++), but when considering collaborative translation, Transifex looks like the way to go.

Anyhow, this is a suggestion.


Posts: 4191
Joined: Tue Feb 14, 2006 10:50 am

Re: HOW-TO: Translating OJS and OCS

Postby jmacgreg » Mon Aug 22, 2011 5:26 pm

Hi George,

Good to hear from you again! I haven't heard of Transifex before, but it certainly sounds very interesting. Another potential platform that was brought to our attention by our Italian translator, Andrea Marchitelli, is TranslateWiki, which I believe does offer a log/history function for all pages. Have you been using Transifex extensively yet? It would be great to have a comparison between the two (and even other) platforms.

I've been meaning to write the folks at TranslateWiki to ask for more details about using their platform, and will do so now. I'll also investigate Transifex. Could you possibly list the general benefits you see immediately from using such a tool over our own translation plugin? Any information you can provide would be very helpful for us to a) choose between possible platforms to support; and b) figure out where on our timeline we should try and implement such support (eg. if the advantages are numerous we would try and schedule earlier rather than later).


Posts: 42
Joined: Wed Jan 19, 2011 3:51 am

Re: HOW-TO: Translating OJS and OCS

Postby georgeKapsomenos » Tue Aug 23, 2011 9:33 pm

I have used Transifex platform quite a bit by now, but I am not sure I could provide much information useful for comparison purposes...what I mean is that I have been making use of the platform solely as a translation contributor, a translation team member; not a as a coordinator or as a maintainer...maybe it is this point of view that is of greater importance to you, e.g. how you can update the translation strings, inform the various translation teams etc, or even how to host such a platform in your own servers and how to maintain and maybe customize it...

Moreover, I would be somewhat unwilling to push Transifex as an alternative over other platforms...for me it's the first of the kind that I have used and it's not so much that I am recommending Transifex itself as I am generally proposing the adoption of such a collaborative localization platform...I have no experience form other such tools, not even from your own translation plugin...I completed all of my translation in NotePad++

Before I went on with my own translation of OCS I looked around a bit and found that there are several people who have made their own translation but have not uploaded it back to OCS because it was only partial, e.g. not "worth" contributing as such...they did not know if other people had the same trouble or doubts...if those people could be brought together, the translation and the project itself would only benefit...and they would benefit themselves and each other by sharing their translation & sharing in the translation of others...

To make that happen a platform would be needed to provide the framework and the necessary tools for the contributors to translate given language strings, to have easy access and "heads up" on new strings, to propose changes to the translation of others, to discuss those suggestions and make common decisions about them (through vote or rating for example), to review the changes and proposals regarding already translated strings etc...

If I could provide a very short evaluation of Transifex, from a contributors' point of view, it would be that
1) it does not look technical or complicated at all from the end-user seems all you have to do is translate clearly presented language strings, vote on suggestions and provide your own...that's it...
...this could be useful, because translators are not necessarily computer savvy. This is also important because "techies" may have a very idiosyncratic, to put diplomatically, grasp of their language. Very often their translations may only fit a community of "techies" and their vocabulary, but may be problematic beyond that realm...this is especially true for languages like Greek, which have hundreds and hundreds of new technological terms pouring in continuously and the tech savvy users usually adopt the foreign (english) terms, without being much capable of providing reasonable translations or justifying the given ones.
2) It has the above features, e.g. direct translation of strings, suggestion and voting system, a reset button to undo changes, a copy source button (very useful if the language source contains markup and links, in order to avoid typographic errors), it allows you to load many different languages if you want to consult them and make comparisons, all without leaving the given page or reloading it, through AJAX.. also has an "auto-translation" button, but I don't know how it works, if it uses a particular translation engine etc...
3)You have the option to download the locale files and reupload them if you don't like to work on the platform itself (that is you can combine platforms of can translate and cross-check through various files with NotePad++ and then contribute your translation)
4) There is a separate "Discussions" area where team members can discuss issues that rise up and there is also a Private Messaging system..
5) Locale files are locked when one edits them to prevent overlapping/overwriting...

1) Very difficult to keep tabs on the translation project and get the team organized, or their work organized. Although there are suggestion fields, one cannot see or know if a good translation has been replaced by a bad one, since no diff logs are kept, no logs of the actions of each user.
You can filter the strings by user, you can see the date of the latest edit in each file, but you cannot know what changes are made and I am not sure that filtering works for suggestions...

To deal with the short-comings of the platform, I have proposed to other members for all of us to deal each time with a particular set of language strings and files, e.g. 1-5 pages of a given locale file. Everyone should review each and every translated string within a given time-frame, if a translation already exists to make a suggestion and if none exists to translate it. When all strings have been translated, all suggestions reviewed and rated and all issues discussed, the team could move on. In this way the efforts wouldn't become chaotic and we could move forward in a progressive manner without constantly revisiting completed translations, which can easily happen if anyone does contribute translations randomly...because of the shortcomings of the platform, it could be a mess if everyone did their own thing without consulting the other members...

That's all I have...but you could take a look at

Return to “OCS Conference Support and Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest