Introduction

Aigu is a set of utility to process localization files to generate JSON files to send to Accent as well as taking JSON files from Accent and convert them back to localization files.

Installation

Add these lines to your application’s Gemfile as development dependancies:

group :development do
  gem 'aigu'
end

Usage

Aigu provides an executable named aigu.

Exporting the JSON file for Accent

The export command looks for localization files and generates a JSON file. This file will then be compatible with Accent.

$ aigu <export-command> --locale=fr --input-directory=config/locales --output-file=my-project.json

Commands

Command File format
rails-export Rails YAML
android-export Android XML
core-export Java Enum Core
ios-export iOS strings & stringsdict
ember-export Ember.js JavaScript
ember-pod-export Ember.js pods JSON
ember-engine-export Ember.js Engine JavaScript

Options

Option Description
locale The locale used to find localization files.
input-directory The directory used to find localization files
output-file The path to the JSON file that will be written by aigu
ignore The patterns aigu will use to skip ignored files (eg. routes.yml)

Importing the JSON file from Accent

The import command takes a generated JSON file from Accent and generates localization files in the output directory.

$ aigu <import-command> --locale=fr --input-file=file-from-accent.json --output-directory=config/locales

Commands

Command File format
rails-import Rails YAML
android-import Android XML
core-import Java Enum Core
ios-import iOS strings & stringsdict
ember-import Ember.js JavaScript
ember-pod-import Ember.js pods JSON
ember-engine-import Ember.js Engine JavaScript

Options

Option Description
locale The locale used to generate localization files. Files will be generated as <file>.<locale>.yml
input-file The path to the Accent-generated JSON file
output-directory The directory where the localization YAML files will be generated

Using .aigu.yml

Instead of using command-line arguments when running the aigu command, you can create a .aigu.yml file at the root of your project and hard-code options in that file.

ignore:
  - routes.yml
  - rails/**/*.yml
output-directory: config/locales
input-directory: config/locales

Contributing

We’re using phare to make sure all Ruby code adheres to our coding style guide. The best way to use phare is as a pre-commit hook:

$ ln -s "`pwd`/bin/phare" .git/hooks/pre-commit

That way, whenever git commit is ran, phare will be executed and will abort the commit if there are errors.

License

Aigu is © 2014-2017 Mirego and may be freely distributed under the New BSD license. See the LICENSE.md file.

About Mirego

Mirego is a team of passionate people who believe that work is a place where you can innovate and have fun. We're a team of talented people who imagine and build beautiful Web and mobile applications. We come together to share ideas and change the world.

We also love open-source software and we try to give back to the community as much as we can.