README.md in aigu-0.3.1 vs README.md in aigu-0.4
- old
+ new
@@ -1,11 +1,19 @@
## Introduction
-Aigu processes Rails YAML localization files and generates a single JSON file
-that can be imported into the Accent service. It can also process a JSON file
-generated by Accent and convert it back to multiple YAML files.
+Aigu is a set of utility to process localization files to genarate JSON files
+to push to Accent service. Pulling from Accent to update localization files
+is also supported.
+The following localization file formats are supported: Rails YAML, Android
+XML, Java Enum Core, iOS strings and stringsdict.
+
+Merge and unmerge commands allows to merge different source files into a
+single JSON file to send as a single Accent project.
+
+Push and pull can be used to interact directly with Accent.
+
## Installation
Add these lines to your application’s Gemfile as development dependancies:
```ruby
@@ -34,10 +42,17 @@
| `locale` | The locale used to find localization files. Files that match `*.<locale>.yml` in the input directory will be processed. |
| `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`)
+| Command | File format |
+|-------------------|-------------------------------------------------------|
+| `export` | Rails YAML |
+| `andoird_export` | Android XML |
+| `core_export` | Java Enum Core |
+| `ios_export` | iOS strings & stringsdict |
+
### Importing the JSON file from Accent
The `import` command takes a generated JSON file from Accent and generates
the original YAML file structure.
@@ -51,22 +66,91 @@
|--------------------|---------------------------------------------------------------------------------------------------|
| `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`
+| Command | File format |
+|-------------------|-------------------------------------------------------|
+| `import` | Rails YAML |
+| `andoird_import` | Android XML |
+| `core_import` | Java Enum Core |
+| `ios_import` | iOS strings & stringsdict |
+### Merge
+
+The `merge` command will combine several JSON file into a single one to send into a single Accent project. It will prefix keys with
+a pattern embedding the filename to allow later unmerging. It works from an input directory, mergin all json files in it.
+A file can be named `default.json` to avoid prefixes in the resulting json.
+
+#### Options
+
+| Option | Description |
+|--------------------|---------------------------------------------------------------------------------------------------|
+| `input-directory` | The directory containing json files to merge |
+| `output-file` | The path to the JSON file that will be written to |
+
+
+### Unmerge
+
+The `unmerge` will split the Accent JSON file into several json files, for further processing. It will look for the prefix pattern
+of the merge command and will extract the filename or use default.json if pattern is not found.
+
+#### Options
+
+| Option | Description |
+|--------------------|---------------------------------------------------------------------------------------------------|
+| `input-file` | The path to the Accent-generated JSON file |
+| `output-directory` | The directory where the unmerged files will be written |
+
+### Sending to Accent
+
+The `push` command takes a JSON file exported by Aigu and send it to Accent
+
+#### Options
+
+| Option | Description |
+|--------------------|---------------------------------------------------------------------------------------------------|
+| `input-file` | The path to the Aigu-generated JSON file |
+| `accent-api-key` | The API key of the Accent project. (See project config in Accent) |
+| `accent-url` | The URL to the instance of Accent to use (Prod: http://accent.mirego.com, QA: https://mirego-accent-qa.herokuapp.com ) |
+
+### Pulling from Accent
+
+The `pull` command GET the Accent generated JSON file
+
+#### Options
+
+| Option | Description |
+|--------------------|---------------------------------------------------------------------------------------------------|
+| `output-file` | The path to write the Accent JSON file to |
+| `accent-api-key` | The API key of the Accent project. (See project config in Accent) |
+| `accent-url` | The URL to the instance of Accent to use (Prod: http://accent.mirego.com, QA: https://mirego-accent-qa.herokuapp.com ) |
+
+### 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
+can create a `.aigu.yml` file at the root of your project and hard-code options
in that file.
```yaml
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:
+
+```bash
+$ 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 [Mirego](http://www.mirego.com) and may be freely distributed under the [New BSD license](http://opensource.org/licenses/BSD-3-Clause). See the [`LICENSE.md`](https://github.com/mirego/aigu/blob/master/LICENSE.md) file.