<commit_before># Idioma

Idioma is a Ruby Engine to help manage the flow and editing of translations.

### Current Features
* Imports translations into database from the config yaml files.
* Interface for managing translations.
* Duplicate translations from one locale to other locales.
* DB changes will be persisted to Redis I18n backend store if supplied.

### Pending Features
* Export translations from DB into CSV or yaml format.
* Import translations from CSV into DB.
* Stats on each locale, giving percentage of translated/missing.
* Inline translation editing

### Configuration
Setting | Default | Description
------- | ------- | -----------
default_locale | :en | Used for showing the default translation (for translators to translate from) for a given phrase
locales | [:en] | Idioma will only import translations of locales in this list... ignoring the rest
ignore_keys | ["ransack", "simple_form"] | Gems sometimes bring their own phrases that you don't actually need translated
redis_backend | nil | Should be an I18n backend of a Redis store.

### Example
```
$redis = Redis.new(:host => 'localhost', :port => 6379)
I18n.backend = I18n::Backend::KeyValue.new($redis)

Idioma.configure do |configure|
  configure.default_locale = :en
  configure.locales = [:en, :es, :fr]
  configure.redis_backend = I18n.backend
end
```<commit_msg>Incoming readme<commit_after># Idioma

Idioma is a Ruby Engine to help manage the flow and editing of translations.

### Current Features
* Imports translations into database from the config yaml files.
* Interface for managing translations.
* Duplicate translations from one locale to other locales.
* DB changes will be persisted to Redis I18n backend store if supplied.

### Pending Features
* Export translations from DB into CSV or yaml format.
* Import translations from CSV into DB.
* Stats on each locale, giving percentage of translated/missing.
* Inline translation editing
* Test persisting to Redis using https://github.com/guilleiguaran/fakeredis

### Configuration
Setting | Default | Description
------- | ------- | -----------
default_locale | :en | Used for showing the default translation (for translators to translate from) for a given phrase
locales | [:en] | Idioma will only import translations of locales in this list... ignoring the rest
ignore_keys | ["ransack", "simple_form"] | Gems sometimes bring their own phrases that you don't actually need translated
redis_backend | nil | Should be an I18n backend of a Redis store.

### Example
```
$redis = Redis.new(:host => 'localhost', :port => 6379)
I18n.backend = I18n::Backend::KeyValue.new($redis)

Idioma.configure do |configure|
  configure.default_locale = :en
  configure.locales = [:en, :es, :fr]
  configure.redis_backend = I18n.backend
end
```
{'fraction_non_alphanumeric': 0.10129776496034607, 'fraction_numerical': 0.010093727469358327, 'mean_word_length': 4.316091954022989, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 7, 'https://': 1, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6899293', 'n_tokens_mistral': 796, 'n_tokens_neox': 740, 'n_words': 329}