This library contains traits and macros to conveniently embed the output of cargo-i18n into your application binary in order to localize it at runtime.
Currently this library depends on rust-embed to perform the actual embedding of the language files. This may change in the future to make the library more convenient to use.
The following is an example for how to derive the required traits on structs, and localize your binary using this library:
```rust use i18nembed::{I18nEmbed, LanguageLoader, DesktopLanguageRequester}; use rustembed::RustEmbed;
struct Translations;
struct MyLanguageLoader;
fn main() { let language_loader = MyLanguageLoader {};
// Use the language requester for the desktop platform (linux, windows, mac).
// There is also a requester available for the web-sys WASM platform called
// WebLanguageRequester, or you can implement your own.
let language_requester = DesktopLanguageRequester::new();
Translations::select(&language_requester, &language_loader);
} ```
For more examples, see the documentation for i18n-embed.