2 个不稳定版本
0.3.0 | 2019年8月26日 |
---|---|
0.2.0 | 2019年8月26日 |
在 国际化 (i18n) 中排名 341
每月下载 97 次
在 5 个 Crates 中使用(其中 3 个直接使用)
285KB
874 行代码(不包括注释)
包含(MSI 安装程序,96KB)src-data/iso-4217/list_one.xls
crate locale-codes
此 crate 提供与地区相关的代码/标识符以及任何与之相关的标准信息。例如,ISO-396 语言标识符或 ISO-3166 国家标识符。
示例
use locale_codes::codes::{country, currency, region};
let mexico = country::lookup_country("MEX").unwrap();
println!("{:?}", mexico);
let mexico_region = country::lookup_region(mexico.country_code).unwrap();
println!("{:?}", mexico_region);
let currencies = currency::currencies_for_country_name(mexico_region.name.as_str());
println!("{:?}", currencies);
预构建过程
以下描述了两个代码生成步骤,这些步骤在正常构建过程之外执行,因为输出存储在 Git 中,并根据外部因素进行版本控制。
JSON 数据文件
脚本 create-data-modules
用于处理从标准网站下载或抓取的文件,以创建库使用的数据库。这些数据以 JSON 文件的形式生成在 src/codes/data
文件夹中,并在构建过程中作为 codes
模块的一部分使用 Rust include!
宏进行读取。
目前为以下标准生成数据
- ISO 639 表示语言名称的代码;第 1-4 部分,支持 2 位和 3 位代码。
- ISO 3166 表示国家及其子单位的名称的代码;第 1 部分,仅支持 2 位代码。
- ISO 4217 表示货币的代码;支持字母和数字代码。
- ISO 15924 表示脚本名称的代码;支持字母和数字代码。
历史
- 0.3.0 - 收缩模块层次结构。
- 0.2.0 - 从 simple-locale 中提取。
待办事项
- 确定
codes
和settings
crates 中名称之间的命名约定。- 期望将代码模块中的名称更改为反映设置中的名称。
依赖关系
~2.9–4.5MB
~88K SLoC