The History module is one of the features that makes translating software strings with the POEditor localization management platform a safe and easy process. What the History module does is store translations that are one hour old in a database, so that they can later be recovered individually (with the History link), or in bulk, for a particular language (using the Recover from history feature). Below we will describe how the History module works.
Consulting previous translation versions for individual terms
In any Languge page, you can find History links next to each previously translated string (remember – the translations must’ve been one hour old to be recorded). If you click on one of these links, you will see all the translations that have been made in that language for the corresponding term, as well as who made the translation and when. Continue reading →
If you want to translate an app that uses language files such as .strings, .xliff, .resx, .xml or .properties with the software localization management platform POEditor, it’s very likely your localization process will be a little different than if you were using any of the other supported language files. This is because these language files contain labels.
With POEditor’s localization plugin for WordPress, you can manage your WordPress language files between POEditor and WP, from within your WP dashboard. Download and install the POEditor WordPress translation plugin according to the instructions in the Installation tab. Then follow this step by step guide to set up your localization workflow.
How to manage the WordPress localization workflow
Step 1: Go to your POEditor account, click on your username in the navigation bar and then go to Account Settings > API Access. Generate an API token and copy it to the POEditor plugin in your WordPress account, where it says POEditor API KEY. A page will be generated, with all the software localization projects in your POEditor account (if you have any) and your local WordPress language files.
Step 2: Click on Create project in the POEditor plugin to start a new translation project. A corresponding project will be created in your account on the POEditor localization platform.
Step 3: Add a language in the POEditor plugin to the newly created project, and then link a WordPress language file to it by clicking on Assign file.
Step 4: Press Export to send the terms from your local WordPress language file (.po or .pot) to your project on the POEditor software localization platform.
To make a localization process faster, there are aspects of it that can be automated. Translation is one of these aspects and even though it has been proven in numerous instances that machine translation cannot compare to human translation, there exists what is called Translation Memory, which combines the human touch with machine power to simplify the translator’s work.
How the POEditor Translation Memory works
Each time a user translates a term, the translation gets stored immediately in the TM database. The TM database stores one translation per user for each term, which gets updated each time the user edits it in the interface. In case different users add different translations for the same term, they all get stored in the Translation Memory database. If there is more than one translation variant for a term in the Translation Memory, the TM will generate a list of suggestion, so the users can select the most appropriate one. The TM will always list the translations according to how many times they were used.
Most of the time, the roles in a software localization workflow are very specialized, divided according to specific activities and tasks. Our experience with the localization industry has revealed that it’s not rare for companies to contact an agency to manage their software localization process. So they outsource it, but does the same apply for the payment for the localization services? Sometimes, even if a company does use an in-house localization team, the payment for the localization tools used in the translation process will still be managed by an Accounting Department. As you can see, the person with strings may not also be the one with the money.
So, to make sure the translation workflow suffers no disruption, we’ve come up with a payment management system that makes life easy for the person in charge of the financial aspect of the localization process.
At POEditor, we are dedicated to bringing you the best interface where you can manage your collaborative translation work. We know it is essential for any localization project manager or translator to stay updated with their team’s whereabouts and actions, in order to maintain a smooth and natural workflow. So, to avoid stepping on each other’s toes, we’ve built POEditor with a Realtime Translation System.
The POEditor Realtime Translation System is good for all POEditor users, regardless of their role in a project. First of all, it is useful for contributors, because they can see who is active on the same language as they are, at the same moment. It also shows them in real time if a translation is added, edited or deleted for a term in that language. If there is more than one person translating on the same page, the system will mark the translation fields that are being worked on by coloring their borders. If two or more contributors are on a translation field at the same time, a bubble will inform them who else is translating that term.
Lately, some users have been asking for a way to automate the synchronization between the POEditor localization platform and GitHub/Bitbucket repositories. Because we want to make them happy, we found a way to do this – webhooks. These “user-defined HTTP callbacks” can be used to trigger a certain sync in your repos. They can be called from anywhere, and can be maintained, modified and managed by any third-party users.
Preparing the webhook
To make use of a webhook, you first need to create a webhook URL. Find an example for GitHub here, and one for Bitbucket here.
After creating the webhook, you can add it to a GitHub or Bitbucket account so that events in the repos trigger terms (and translations) updates in a POEditor project.
Using webhooks with Bitbucket
To add a webhook to a Bitbucket account, just log on to it, go to Settings → Hooks, and select “POST” from the “Select a hook” dropdown menu. Then click on “Add hook” and introduce the webhook URL in the empty field. Whenever the repository changes, the webhook will be triggered to sync between the assigned language/project on POEditor and the file in the repo.
Using webhooks with Github
Adding a webhook to GitHub is also easy. Go to the account, click on Settings → Webhooks & Services → Add webhook, and add the webhook URL to the “Payload URL” field. Unlike in the case of Bitbucket webhooks, you can pick what kind of event(s) you want to trigger the webhook. It can be just the push event, individual events, or everything (any change in the repo).
So that’s that. The POEditor GitHub integration and Bitbucket integration are now faster than ever, because you have the choice to automatically send the updates in the repos to your localization projects managed on POEditor.
Update July 2015: It is now possible to use webhooks to export terms and translations from your POEditor localization project to your connected GitHub account. Please note that the export option can be triggered from anywhere, except GitHub.
The month of October is nearing its end, and by looking and the amount of updates we have gathered during it, we can proudly say that our dev team’s hard work has been quite fruitful.
Because we don’t want to bore you with very technical stuff, we will limit this communication to presenting the most obvious changes to improve your localization workflow.
Control exports to GitHub
You will notice that in the Github projects page, you now have the following options to filter your exports: all, translated/untranslated, fuzzy/not fuzzy, automatic/not automatic, proofread/not proofread. Once one of these settings is chosen, it is saved and applied for all the Github projects. In the case of multiple files, you will also notice that you are now able to tell where you are with the export, because a progress bar will be visible while the export to Github takes place.
Mass toggle of fuzzy or proofread translations
For an easier time managing translations, the mass toggle option was a must. You can now perform the action of mass toggling fuzzy translations or mass toggling proofread translations by accessing the dropwdown list at the bottom of any language page and clicking “Go”.
Recover translations from History
We have to give a big hand to those of you who suggested this feature, because it will be a blessing to many of your fellow users. Basically, what this feature does is detect if there are translations in the History of an untranslated term. In case there are, you can tell POEditor to recover from History the last one recorded. Please note that a translation gets saved in History only after one hour has gone by from when it was edited.
There are a lot of nice enhancements that we have on our roadmap, so make sure you keep an eye on us so you don’t miss out on any of the good news.
Here at POEditor, we’re always trying to optimize and improve performance. For this reason, in the past few weeks, we’ve been really busy reconstructing our Translation Memory engine.
Given the growth rate of POEditor and the number of strings in large accounts, we began noticing some delay in the TM for suggested translations, especially when the system searched for translations of small strings (such as “Account” or “Cancel”). Some tests and debugging quickly pointed us to the database queries, which had become slower as the database increased.
We then took a radical decision, to move all the TM related searches to a dedicated search engine. After lots of research and tests, we choose Elasticsearch, which is based on the powerful Apache Lucene project. Elasticsearch is a flexible and powerful open source, distributed, real-time search and analytics engine, running on Java.
To cut the technical stuff short, the performance improved by a factor of more than 10 times in some cases and it’s expected that the future growth won’t affect the system performance as it did before this.
We would like to see you test the limits of the Translation Memory engine, with countless translations from old and new localization projects. You will surely be compelled by how this powerful piece of software enhances the automated part of the POEditor experience!
We are proud to let you know that on the 2nd of August, two years ago, the project that came to be the POEditor you know today first saw the light of the Internet. Although we couldn’t imagine how far we’d get back then, we believe now that our localization platform has grown into a beautiful piece of software that is valuable to many people all over the globe. Along the way, we’ve added new & useful features and updates, always taking into account your opinions for improvement and other requests, making it our assumed duty to deliver to you in the shortest amount of time possible. This is the kind of relationship we will continue cultivating with our users.
A big thank you to everybody for supporting us and for using our product. We hope to keep on growing together while you enjoy POEditor for years and years to come.