#本地化 #icu4x #数据提供者

i18n_localiser-rizzen-yazston

国际化项目中的i18n_localiser crate

6个版本 (3个破坏性版本)

新版本 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.7.0 2023年12月18日

国际化(i18n)中排名第74

Download history 4/week @ 2024-05-20 4/week @ 2024-06-03 4/week @ 2024-06-10 146/week @ 2024-07-22 111/week @ 2024-07-29

每月下载257
2个crate中使用(通过i18n-rizzen-yazston

BSD-3-Clause

510KB
9K SLoC

i18n_localiser

Rizzen Yazston

欢迎使用i18n_localiser crate的Internationalisation(i18n)项目。

此crate包含五个模块

  • command:包含命令注册表,

  • error:包含其他模块的错误枚举,

  • formatter [私有]:本地化器实际字符串格式化器,

  • localiser:包含本地化器,

  • tree [私有]:简单的标签字符串类型。

功能

i18n_localiser crate可用的功能

  • icu_blob:允许使用支持{BufferProvider}的BufferProviderBlobDataProvider实例。当ICU4X组件的内部数据不足以满足特定用例时,作为替代提供程序。

  • icu_compiled_data [默认]:允许使用各种ICU4X组件的内部数据。

  • icu_extended:使用更详细的ICU信息结构体、类型和方法。

  • icu_fs:允许使用支持BufferProviderFsDataProvider实例。当ICU4X组件的内部数据不足以满足特定用例时,作为替代提供程序。

  • logging:提供一些日志信息。

  • sync:允许使用rust的并发能力。使用ArcMutex代替RcRefCell

模块

command:用户定义命令注册表

此模块包含用户定义函数的命令注册表。

此模块还包含两个示例命令。

formatter:格式化器(私有)

《格式化器》是通过解析模式字符串创建的格式化器状态。该《格式化器》用于为提供的占位符值创建本地化字符串。

localiser:本地化器

本地化器连接到本地化字符串数据存储,使用字符串标识符获取指定语言的字符串,并将字符串格式化以用提供的值替换字符串中的任何占位符。

本地化器可以缓存准备用于占位符替换检索到的字符串,因此可以在不解析占位符字符串的情况下重用。

本地化器使用了构成 i18n 项目的所有其他组件包。理想情况下,只需要使用元crate i18n,因为它包含所有crate,包括此 i18n_localiser crate。

tree:树(私有)

一个自定义树,用于格式化器内部。树是通过解析提供的字符串创建的,然后用于创建格式化器状态,该状态用于从提供的占位符值创建格式化的本地化字符串。

有关模式格式规范,请参阅 pattern strings.asciidoc,位于 i18n_lexer crate 的 docs 目录。

致谢

感谢 Stefano Angeleri 对国际化项目组件实现的各种设计方面的建议,并提供了错误消息字符串的意大利语翻译。

依赖关系

~30MB
~546K SLoC