/json.i18n-for-Titanium-Mobile

Localization library for Titanium Mobile using JSON

Primary LanguageJavaScript

json.i18n has a simple goal: To provide a more robust, easier to use, and generally nicer looking localization solution for Titanium based on JSON.

To use its features, include the json.i18n.js file before you require access to localized resources.

Ti.include('vendor/json.18n.js');

SETUP

You will need to create your localised resources as JSON files in /Resources/i18n/*.json Example:

In each JSON file, you can define any object structure you like for the resources such as, but you must ensure you use valid JSON (i.e. enclosed in double quotation marks)

{
  "parent": {
    "child": {
      "value1": "1",
      "value2": "2".
      "value3": "Supports interpolation %s"
    }
  }
}

USE WITHIN YOUR APP

i18n.getString('parent.child.value1') -> "1"
i18n.getFormattedString('parent.child.value3','value') -> Supports interpolation value

A shortcut also exists for the getFormattedString method as follows:

I('parent.child.value3','value') -> Supports interpolation value

EXAMPLE APP

I strongly urge you to look at the sample application that is included at https://github.com/mattheworiordan/json.i18n-for-Titanium-Mobile/tree/master/example. It is very straightforward and provides good examples of how the localized resources fallback to defaults.

CONTACT INFORMATION

json.i18n was made by Matthew O'Riordan (www.mattheworiordan.com).

Please provide feedback, I will happily add to this very simple little library.

I can be contacted through my website -- www.mattheworiordan.com