2 个不稳定版本
0.2.0 | 2024 年 2 月 22 日 |
---|---|
0.1.0 | 2023 年 5 月 9 日 |
#787 在 命令行实用工具
91 每月下载量
275KB
4K SLoC
SUUKON | 数コン
警告:本次更新引入了破坏性变更。如果您之前使用的是 v0.1.0,请查看 变更日志 以获取更多详细信息。
此 Rust 包提供用于处理多个数字系统的 CLI 二进制文件和库。
库中包含一个名为 Numeral
的 trait,用于方便使用,并为每个数字系统提供一系列模块,以提供更直接的控制。
此包的主要目标是支持任何类型的数字系统。有关数字系统的参考,请参阅维基百科上的 数字系统列表。
命令行界面
CLI 的一般模式如下
suukon -i <INPUT> -t <TARGET> -s [SETTINGS] -- <NUMBER>
参考
<INPUT>
- 输入数字系统<TARGET>
- 目标数字系统[SETTINGS]
- 转换的附加设置<NUMBER>
- 要转换的数字
示例
假设,您想使用以下命令将普通数字转换为日本数字大字十的负幂的数字,以“割”开头而不是“分”。命令看起来像这样
suukon -t japanese -s financial negative_powers alt -- 12.34
在转换回原始数字时,您不需要设置任何设置,因为算法会为您执行必要的模式匹配
suukon -i japanese 拾弐点参割肆分
帮助
有关可用设置的参考,请参阅 crates.io 上的文档。
要查看所有可用标志的完整列表,请使用以下命令
suukon --help
安装
只需将以下行添加到您的 Cargo.toml
[dependencies]
suukon = { version = "0.2.0", default-features = false }
或本地安装二进制文件
cargo install suukon
这将从 crates.io 下载最新的
suukon
包并编译二进制文件。
使用方法
在项目中使用这个crate通常有两种方法。为了更舒适的使用,建议使用Numeral
特质,但您仍然可以使用常规函数。
Numeral 特质
除了导入Numeral
特质之外,您还需要导入NumeralSystem
和Setting
枚举。
use suukon::{Numeral, NumeralSystem, Setting};
// Convert a number to japanese short notation
assert_eq!(
Some("12.3万".to_string()),
123000.to_numeral(
NumeralSystem::Japanese,
vec![Setting::ShortNotation]
)
);
// Convert a number back
assert_eq!(
Some("123000".to_string()),
"12.3万".from_numeral(NumeralSystem::Japanese)
);
常规函数
或者,您可以导入数值系统的单个模块并使用它提供的函数。
use suukon::japanese::*;
有关如何使用常规函数的更多详细信息,请参阅crates.io上的文档。
支持的数值系统
目前支持以下数值系统
潜在用途
通过从这个库生成训练数据,语言模型可以学习识别和使用不同的数值系统,这可以提高翻译的准确性。
贡献
如果您在此库中遇到任何错误或问题,请在GitLab仓库上创建一个问题。
如果您想为Suukon的开发做出贡献,您可以在GitLab仓库中提交合并请求。请确保您的合并请求包含相关的测试。
有关如何贡献的更多信息,请参阅CONTRIBUTING.md。
许可证
本项目采用MIT许可证。有关详细信息,请参阅LICENSE文件。
依赖项
~390–750KB
~15K SLoC