7 个版本 (4 个重大更改)
0.10.0 | 2024 年 8 月 2 日 |
---|---|
0.9.2 | 2024 年 7 月 23 日 |
0.9.1 | 2024 年 3 月 24 日 |
0.8.0 | 2024 年 2 月 3 日 |
0.6.1 | 2023 年 7 月 6 日 |
#210 in 国际化(i18n)
341 每月下载量
用于 9 个 crate(8 个直接使用)
42KB
570 行
i18n_utility
Rizzen Yazston :icu4x: https://github.com/unicode-org/icu4x :url-unicode: https://home.unicode.org/ :BCP_47_Language_Tag: https://www.rfc-editor.org/rfc/bcp/bcp47.txt
欢迎使用国际化(i18n)项目的 i18n_utility
crate。
本 crate 由以下五个模块组成
-
error
:包含语言注册表的错误枚举, -
language
:使用 ICU4X 的LanguageIdentifier
或Locale
实例的语言标签注册表, -
tagged_string
:简单的标记字符串类型, -
traits
:用于结构体和枚举本地化的 trait, -
types
:简单的结构体和枚举类型。
功能
i18n_utility
crate 的可用功能
-
icu_extended
:使用更详细的 ICU 信息结构体、类型和方法。 -
sync
:允许使用 Rust 的并发功能。使用Arc
和Mutex
代替Rc
和RefCell
。
模块
language
:用于存储 ICU4X 的 LanguageIdentifier
或 Locale
实例的注册表。
存储经过验证的 {BCP_47_Language_Tag}[BCP 47 语言标签] 字符串的注册表,并且可选地存储 ICU4X 的 LanguageIdentifier
或 Locale
实例(使用功能 icu_extended
)。
注册表的目的在于通过将验证过的语言标签与请求的语言标签相关联来减少重复解析语言标签的需求。
可以由 icu_locid
包或 icu
元包提供 LanguageIdentifier
或 Locale
类型。这两个包是 Unicode 联盟({url-unicode}[Unicode Consortium])开发的 {icu4x}[ICU4X] 项目的一部分。
tagged_string
:标记字符串。
不可变的 TaggedString
类型简单地将语言标签([Rc
]<LanguageTag>
或 [Arc
]<LanguageTag>
)与文本字符串(String
)关联起来。
在 i18n
项目上下文中,期望标识符标签是一个 {BCP_47_Language_Tag}[BCP 47 语言标签] 字符串。
致谢
Stefano Angeleri 对国际化项目库实现的各个方面提出的建议,以及提供错误消息字符串的意大利语翻译。
依赖关系
~4.5MB
~82K SLoC