[][src]Crate gettextrs

gettext C library FFI binding for Rust

Usage:

use gettextrs::*;

setlocale(LocaleCategory::LcAll, "en_US.UTF-8");

bindtextdomain("hellorust", "/usr/local/share/locale");
textdomain("hellorust");

println!("Translated: {}", gettext("Hello, world!"));
println!("Singular: {}", ngettext("One thing", "Multiple things", 1));
println!("Plural: {}", ngettext("One thing", "Multiple things", 2));
println!("With placeholder: {}", gettext!("Hello, {user}!", user = "Example User"));

Alternatively, you can initialize the locale and text domain using the TextDomain builder. By default, a translation of the specified text domain in current language is searched in the system's data paths. See TextDomain's documentation for other options.

use gettextrs::TextDomain;

TextDomain::new("hellorust")
           .init()
           .unwrap();

Macros

dcgettext

Like dcgettext, but allows for formatting.

dcngettext

Like dcngettext, but allows for formatting.

dgettext

Like dgettext, but allows for formatting.

dngettext

Like dngettext, but allows for formatting.

gettext

Like gettext, but allows for formatting.

ngettext

Like ngettext, but allows for formatting.

npgettext

Like npgettext, but allows for formatting.

pgettext

Like pgettext, but allows for formatting.

Structs

TextDomain

A text domain initializer builder which finds the path to bind by searching translations in the system data paths and optionally in user specified paths.

Enums

LocaleCategory

Locale category enum ported from locale.h

TextDomainError

Functions

bind_textdomain_codeset
bindtextdomain

Bind text domain to some directory containing gettext MO files

dcgettext

Translate msgid to localized message from specified domain using custom locale category

dcngettext

Translate msgid to localized message from specified domain using custom locale category (with plural support)

dgettext

Translate msgid to localized message from specified domain

dngettext

Translate msgid to localized message from specified domain (with plural support)

gettext

Translate msgid to localized message from default domain

ngettext

Translate msgid to localized message from default domain (with plural support)

npgettext

Translate msgid to localized message from default domain (with plural support and context support)

pgettext

Translate msgid to localized message from default domain (with context support)

setlocale

Set current locale for translations

textdomain

Switch to specific text domain