4 个版本
0.1.3 | 2023年12月11日 |
---|---|
0.1.2 | 2023年12月11日 |
0.1.1 | 2023年12月10日 |
0.1.0 | 2023年12月7日 |
#20 in #root
每月下载量:34
615KB
14K SLoC
一个用于解析、生成、转换和在 New Ithkuil 语言中操作文本的包。
请参阅文档以获取面向程序员的详细信息。
已完成目标
-
建模 New Ithkuil 中的所有单词和语法类别。 提供了所有 Ithkuil 语言部分的 struct 和 enum,以精确地对其进行建模,即使这会导致最终难以工作的类型。请参阅
CheckedFormative
类型,以了解这种复杂性在实际操作中的示例。 -
提供注释功能。 Ithkuil 文本通常以注释形式显示,这显示了单词的语法类别和词根,以方便人类解析。此包提供了
Gloss
和GlossStatic
特性,以允许包中的所有类型进行注释。 -
轻松转换为罗马化文本。 Ithkuil 文本最显著的形式是其罗马化系统,此包提供了一级支持,使用
FromTokens
和IntoTokens
特性提供解析和生成函数。
未完成目标
-
转换为 Ithkuil 书写系统。 本地而言,Ithkuil 使用形态音位书写系统。此包旨在能够生成 Ithkuil 文本的脚本字符表示,以便进行通用脚本转换。它还旨在为 Discord 服务器成员提供的符号提供所有类型的 SVG 转换。
-
转换为 Unicode 表示。 “通用脚本转换”包括使用 Unicode 写作 Ithkuil 文本的两种格式:一种由 @shankarsivarajan 开发,主要使用带变音符号的 ASCII 字符以方便计算机解析,另一种由 @zsakowitz 开发,使用分配给私有使用的 Unicode 块的一部分,以便将 Ithkuil 文本与其他文本交织在一起。
-
提供词根和词缀列表。 已启动两个主要项目,以创建计算机可读的 Ithkuil 词汇和词缀列表表示:Collaborative Ithkuil IV Roots and Affixes Spreadsheet 和 lexicon-json。此包旨在允许用户在注释中选择使用哪种表示,并旨在为每种表示提供类型定义。
非目标
-
在解析文本时保留所有数据。
malëuţřait
和malëuţřaita
应该并且将解析为相同的值;包含最终元音的决定对意义没有影响,因此对解析值也没有影响。Ca 和 Cn 快捷方式在类型系统中仍然被准确表示。 -
成为 Ithkuil 语法的终极来源。 如果这个crate的行为与官方形态文档(目前为v1.3.2)在任何方面有所不同,那么这是这个crate的问题,而不是形态文档的问题。
-
实现与@ırburučpaızya的精确兼容。 这个crate的行为与 IthkuilGloss 类似,但不完全相同。这是故意的;它们不是同一个crate,并且会有不同的行为。然而请注意,两者都遵循相同的通用语法([] 表示参照物,. 表示槽位中的片段,- 表示不同的槽位,双撇号表示词根,单撇号表示词缀,等等)。
依赖项
~2.3–3.5MB
~57K SLoC