intl-rs 1.0.0

A simple i18n library for rust
Documentation
[中文文档](./README-zh.md)

A simple i18n library for rust

### Configs

1. The default language files is under`src/languages`,and you could change it by the env var `INTL_RS_DIR`
2. The default locale(default_locale property) is `zh_CN`,
   and you could change it by the env var `INTL_RS_LANG`

### Config File

Just support the json file for example `en_US.json` like below

```json
{
    "hello": {
        "world": "Hello,World!"
    }
}
```

### Usages

```rust
        env::set_var("INTL_RS_DIR", "languages");
        let key = "hello.world";

        assert_eq!(t!(key), "你好,世界!");

        assert_eq!(
            t!("unknown key", default:"default message"),
            "default message"
        );

        //default to ensure fallback
        //and you can disable it by disable_fallback function
        let configs = I18nConfig {
            fallback: None,
            locale: Some("en".to_owned()),
            null_placeholder: None,
        };
        assert_eq!(t!(key, configs: configs), "Hello,World!");

        let configs = I18nConfig {
            fallback: Some(true),
            locale: Some("en_UK".to_owned()),
            null_placeholder: None,
        };
        assert_eq!(t!(key, configs: configs), "Hello,World!");

        //change the default null placeholder
        let configs = I18nConfig {
            fallback: Some(true),
            locale: Some("en_UK".to_owned()),
            null_placeholder: Some("".to_owned()),
        };
        assert_eq!(t!("unknown key", configs: configs), "");
```