mirror of
https://github.com/unicode-rs/unicode-normalization.git
synced 2024-11-25 19:24:17 +03:00
Unicode Normalization forms according to UAX#15 rules
|
||
---|---|---|
.github/workflows | ||
benches | ||
fuzz | ||
scripts | ||
src | ||
tests | ||
.gitignore | ||
.travis.yml | ||
Cargo.toml | ||
COPYRIGHT | ||
LICENSE-APACHE | ||
LICENSE-MIT | ||
README.md |
unicode-normalization
Unicode character composition and decomposition utilities as described in Unicode Standard Annex #15.
This crate requires Rust 1.36+.
extern crate unicode_normalization;
use unicode_normalization::char::compose;
use unicode_normalization::UnicodeNormalization;
fn main() {
assert_eq!(compose('A','\u{30a}'), Some('Å'));
let s = "ÅΩ";
let c = s.nfc().collect::<String>();
assert_eq!(c, "ÅΩ");
}
crates.io
You can use this package in your project by adding the following
to your Cargo.toml
:
[dependencies]
unicode-normalization = "0.1.23"
no_std
+ alloc
support
This crate is completely no_std
+ alloc
compatible. This can be enabled by disabling the std
feature, i.e. specifying default-features = false
for this crate on your Cargo.toml
.