1 个不稳定版本
0.1.0 | 2023年2月26日 |
---|
#1438 在 文本处理
150KB
2K SLoC
阿拉伯文脚本库
阿拉伯文脚本的字符富表达式 API。
阿拉伯文脚本库 提供了对阿拉伯文脚本所有标准字符的清晰、易读和通用表示。
每个字母、重音符号、数字和附加符号都可用其标准化的 Unicode 名称访问,从而方便访问所有阿拉伯字符,无需操作原始 Rust 字符或 Unicode 码点。
动机
阿拉伯文脚本有特殊的正字法规则和连字符形式。许多字母有多种书写形式。根据其在单词中的位置,重音符号通常用于消除某些字母发音的歧义。多年来,许多非标准符号已被添加到阿拉伯文脚本中,以表示整个短语和表达式。
这些变体的数量众多,使得直接在任何常规键盘上键入这些符号变得不切实际。此外,许多字体不包含各种阿拉伯 Unicode 块中的所有字符。这些符号的名称可能非常冗长且令人困惑。当试图以可预测和一致的方式在团队之间传达这些符号名称时,这会变得更加复杂。
阿拉伯文脚本库 通过引入 ArabicCharacter
类型来解决这些问题,该类型的功能是封装阿拉伯字符、为其分配干净和标准化的名称,并提供简单的方法将它们转换为和从 Rust 本地文本类型。
此 API 的优点...
ArabicCharacter
的实例保证仅表示阿拉伯字符。- 在可以使用其他文本类型的任何地方都可以轻松使用
ArabicCharacter
。 - 字符的标准名称使其在源代码和其他情况下更容易引用和识别,尤其是在无法获得适当字体的情况下。
您可以使用此抽象完成的所有事情都可以使用 Rust 原生 char
完成,尽管需要非平凡的努力和精神运动。此库提供的是清晰性、一致性和易用性。
许可证
此项目采用 Apache 许可证,版本 2.0 许可。