//! Unicode normalization + character-level transliteration.
//!
//! Uses `unicode-normalization` for NFKC and `deunicode` at the character
//! level (per character, not per string) so the sentinel character is
//! preserved verbatim.
use UnicodeNormalization;
/// NFKC-normalize the input string.
/// Fold non-ASCII characters to ASCII, preserving:
/// - ASCII alphanumerics verbatim
/// - The `keep` sentinel verbatim
/// - All other non-ASCII characters: transliterated via `deunicode_char`
///
/// Characters that `deunicode_char` cannot transliterate are dropped.