macro_rules! t { ($key:expr) => { ... }; ($key:expr, locale = $locale:expr) => { ... }; ($key:expr, locale = $locale:expr, $($var_name:tt = $var_val:expr),+ $(,)?) => { ... }; ($key:expr, $($var_name:tt = $var_val:expr),+ $(,)?) => { ... }; ($key:expr, locale = $locale:expr, $($var_name:tt => $var_val:expr),+ $(,)?) => { ... }; ($key:expr, $($var_name:tt => $var_val:expr),+ $(,)?) => { ... }; }
Expand description
Get I18n text
#[macro_use] extern crate rust_i18n;
// Simple get text with current locale
t!("greeting"); // greeting: "Hello world" => "Hello world"
// Get a special locale's text
t!("greeting", locale = "de"); // greeting: "Hallo Welt!" => "Hallo Welt!"
// With variables
t!("messages.hello", name = "world"); // messages.hello: "Hello, {name}" => "Hello, world"
t!("messages.foo", name = "Foo", other ="Bar"); // messages.foo: "Hello, {name} and {other}" => "Hello, Foo and Bar"
// With locale and variables
t!("messages.hello", locale = "de", name = "Jason"); // messages.hello: "Hallo, {name}" => "Hallo, Jason"