Project

General

Profile

Actions

HowTo translate Redmine in your own language » History » Revision 21

« Previous | Revision 21/27 (diff) | Next »
Toshi MARUYAMA, 2012-08-01 14:20
separate "Test rake tasks" section


HowTo translate Redmine in your own language

Redmine can easily be translated in any language.

There are a few things to translate:

  1. The main lang file, located at source:/trunk/config/locales in current trunk
  2. The wiki toolbar lang file, located in source:trunk/public/javascripts/jstoolbar/lang

Say you want to translate Redmine in Finnish (fi as defined in the IANA Language Subtag Registry):

  1. Copy /config/locales/en.yml to /config/locales/fi.yml.
  2. Copy /public/javascripts/jstoolbar/lang/jstoolbar-en.js to /public/javascripts/jstoolbar/lang/jstoolbar-fi.js.
  3. Translate every string in these files.
  4. Test your translation with following rake tasks. If you get errors related to locales, you must fix them.
  5. Submit your translation here (as plain file or patch, login required). Select "Translation" in Category listbox.
  6. Wait until your Issue will be fixed.
  7. Enjoy your work :)
  8. GOTO 4 if needed.

Test rake tasks

On Ruby 1.9.

rake locales:check_parsing_by_psych

On all Ruby version.

rake locales:check_interpolation

Whole test (Optional)

rake test

"rake test" takes very long time and it runs automatically on CI server.
See Continuous integration.

Restrictions

All these files must be UTF-8 encoded. Do not use HTML entities in translated strings.

Check that your files not have BOM (Byte-order mark). BOM can be removed with command:

awk '{if(NR==1)sub(/^\xef\xbb\xbf/, "");print}' < oldfile > newfile

As of 2009-02-21, only updates based on the new translation files (found in /config/locales) should be submitted.

Updates to the language files

File en.yml acts as the main language file. You can check if it has new strings by running:

rake locales:update

This copies the new strings to other translation files (with the English translation as default value).

Updated by Toshi MARUYAMA over 12 years ago · 21 revisions