Localizing Filmotech interface

If you wish to translate Filmotech in an additional language, you're welcome !

Before starting this adventure, you should be aware that Filmotech is free, developped on my free time. Donations and ads are just enough for software licences, web hosting and tons of coffee drink during loooooong nights of coding ;-)

Before starting translation

  • You should know that it's volunteering, you'll not be paid for this work. Of course, you'll have your name in the “about box” (or equivalent, unless you don't want to be named)
  • You should provide translation on a regular basis for new release of the software (Mac/PC/iOS). New versions are posted regularly, so that can take time.
  • First, there is a major work to do: the Mac/PC software contains more than 1000 labels (from the single word to complete paragraphs), the iOS version contains more than 100 labels, and there are translations for the stores (App Store and Mac App Store).

Tools

  • Mac/PC versions are based upon Lingua's tool, provided by Xojo (the language used to develop Filmotech). It allows to translate from the default langage (French) to the selected language. To help you, I can also provide the English file.
  • The iOS version is based upon a simple XML file. You only need a text editor to translate it.

Translating the Mac/PC version

  • Download Lingua for Mac or PC on Xojo website: Lingua
  • Contact me for the file to translate in your language. You'll received a .xojo_locale file.
  • Open the .xojo_locale with Lingua and translate labels.

  • When you wish to test your translation, export the file to application

  • If your computer is not configured in the translated language, you can rename the file in the language of your machine. For example, if you want to test the Spanish translation (es) on a French machine (fr):
    • On PC, rename es.mo to fr.mo in the resources folder
    • On Mac, open the .app package then rename es.lproj to fr.lproj in the Contents/Resources folder

Some comments

  • Take care of uppercases/lowercases, particularly at the start of a phrase.
  • %1, %2 are for dynamic values, populated by program
  • Take care of carriage returns : don't add them where they are not needed.
  • The Commun.kLangueInterface variable can only be Français or English. This value is used to link to the French or English Filmotech website, and used to some non translated messages (for example release notes of new versions).
  • Some variables (lsPublication.kDerniereMiseAJourLe or lsSiteWeb.kFilmsPHP for example) have PHP syntax (%d or %s for variables, escape characters like single quote \')
  • If in doubt about where the variable is used, contact me with the name of the variable.

Translating iOS version

The labels are in a text file (Localizable.strings) and a syntax like:

"code" = "value";

Just translate value in the desired language, for example:

"telecharger" = "Download";

Note : Don't translate the code!

Other translations

  • For the store, the translation are essentially for description and keywords.
  • Release notes can be translated too.