Project Localization

Definitions

Locale
A language with some extra information. For example, esES (Spanish) is distinct from esMX (Latin American Spanish), despite it being the same language, some words might be different.
Phrase
An entry into the Localization System. This represents the key your phrase is, what namespace it belongs to, any context attached to it. This will always have an English translation attached.
Translation
A single translation of a phrase into a specific language. There is only one definitive translation per-phrase per-locale.
Translator
A user who submits translations to a project. If the project's Localization System is set to closed, a translator must be explicitly defined by the manager of the project. Otherwise, any user of the site may enter translations.
Developer
A member of the project that (for our purposes) has the privilege to edit, create, and delete English translations.
Namespace
A namespace acts as a section for a group of phrases. All projects have a base namespace (or root namespace). This is particularly useful if you have a modular project where you want the individual modules to have a separate namespace from the core.

Why should I localize my project?

You may ask "Why should I localize my project?", caring only about English-speaking people and the like. It's a good idea to localize because although many foreigners speak English, a lot don't, and the ones that do might rather use your project in their native tongue. After all, we're coding addons for games, games should be fun, games shouldn't make you translate in your head constantly. Remember that World of Warcraft is released in nine different languages! Also, if you do everything through the localization app, it's mostly a fire-and-forget system, where once all your phrases are in, you don't have to worry about it, and the translators will take care of things themselves.

Importing existing translations

If you have localized your project without our system, you should be able to import your phrases and translations quite easily.

Just click the Import button in the navigation bar at the top, fill in your details and copy-paste your translations into the text box. Note: you should be just copy-pasting the translations and not any AceLocale headers or such.

You do this once per language.

Phrases

Creating Phrases

If you're either starting from scratch or want to add new phrases, you'll probably want to create a new phrase through the website, since extra details can be supplied that can't be on import. In the navigation bar, you'll see "Phrases", if you hover over it, it will pop up a menu containing "Create phrase". Use this form to create a new phrase.

There is an optional section for Context that you can supply. This can be a description of the phrase or where to find or some other indicator that will give translators proper context on how to translate the phrase properly.

Editing Phrases

In the event that you need to change a phrase, first find the phrase through the phrase index (Phrases button in the navigation bar), click on it, then click Edit phrase in the navigation bar.

Namespaces

First, realize that for the majority of projects, namespaces are unnecessary. Sticking to the base namespace is perfectly acceptable.

Creating a Namespace

In the navigation bar, you'll see "Namespaces", hover over it, and a menu will pop up containing "Create namespace". You can now create a namespace.

Editing a Namespace

Find the namespace you want through the namespace index (Namespaces button in the navigation bar), click on it, then click Edit namespace in the navigation bar.

Exporting Translations

Once you're satisfied with the translations in the system, you can, at any time, export your translations.

Web Interface

Click the Export button in the navigation bar. Fill in the details on how you want it to export, then click the Export button on the form. You'll have a text box full of your translations which you can copy-paste into your code.

You'll have to do this once per locale.

File Upload

Since exporting manually can be a pain, we supply a way to have your translations automatically injected into your uploaded files. You can see the full details on the Localization Substitutions knowledge base page.

 

Directing translators to localize your project

You should point them to the localization index (found by clicking "Localization" in your project's navigation bar), which shows the status of all the locales. It is recommended you put a nice message in your project's description, or you can advertise on the forums of your choice. The "Localization" tab will appear to regular users whenever you have phrases in your localization system, nonetheless.