#locale #posix #localization #api-bindings

locale-settings

通过 POSIX C API 访问的本地设置的高级接口

2 个不稳定版本

0.3.0 2019年8月26日
0.1.0 2019年8月26日

#353国际化(i18n)

MIT 许可证

180KB
4.5K SLoC

Crate simple-locale

travis.ci crates.io docs.rs Minimum Rust Version mit License GitHub stars

该包提供对本地设置的更高层次的接口,通常通过 POSIX(见ISO/IEC 15897)操作系统函数访问。

操作系统支持

目前仅在 macOS、Linux 上进行测试,Windows 将来会支持。

预构建过程

以下描述了两个在正常构建过程之外执行并基于外部因素进行版本控制的代码生成步骤。

FFI 绑定

如上所述,该包依赖于 POSIX 本地化函数的 FFI 绑定,操作系统之间的差异使得这成为一个痛点。脚本 create-bindings.sh 用于生成这些绑定(使用 cargo bindgen),以便能够有效地构建不同的操作系统绑定。

历史

待办事项

  • 确定 codessettings 模块中的命名约定。
    • 预计代码模块中的名称将更改为反映设置中的名称。
  • 为 Linux 构建和测试。
    • 如何处理扩展的 LC_ 类别(地址、标识、度量、名称、纸张、电话)。
  • 为 Windows 构建和测试。

依赖项

~2.2–3.5MB
~56K SLoC