Expand description
Welcome to the i18n
crate of the Internationalisation (i18n) project.
This is the main meta-crate of the project.
This convenience meta crate contains selected available crates:
-
i18n_lexer
: A simple lexer to tokenise a string, -
i18n_localiser
: The multilingual messaging system, -
i18n_provider
: Trait for providing language strings, and error struct, -
i18n_provider_sqlite3
: Implementation ofi18n_provider
using Sqlite3 as its data store, -
i18n_utility
: Contains the Language tag registry, and the TaggedString type.
NOTE: All these crates on crates.io
have the names appended with the suffix -rizzen-yazston
to distinguish them
from internationalisation crates created by other authors.
§Usage
For most use cases, just the use of i18n-rizzen-yazston
crate will be sufficient to use the multilingual message
system, though the individual crates can be selected individual if the entire i18n
project is not required.
§Features
Available features for i18n_icu
crate:
-
icu_blob
: Allow for instances ofBlobDataProvider
to be used various ICU4X components that supportsBufferProvider
. An alternative provider when the internal data of ICU4X components are insufficient for a particular use case. -
icu_compiled_data
[default]: Allow for the internal data of the various ICU4X components. -
icu_extended
: Use the more detailed ICU information structs, types, and methods. -
icu_fs
: Allow for instances ofFsDataProvider
to be used various ICU4X components that supportsBufferProvider
. An alternative provider when the internal data of ICU4X components are insufficient for a particular use case. -
logging
: To provide some logging information. -
sync
: Allow for rust’s concurrency capabilities to be used. Use ofArc
andMutex
insteadRc
andRefCell
.
§Examples
See the various component crates for usage examples.
Re-exports§
pub use i18n_lexer as lexer;
pub use i18n_localiser as localiser;
pub use i18n_provider as provider;
pub use i18n_provider_sqlite3 as provider_sqlite3;
pub use i18n_utility as utility;