#nlp #command-line-tool #language #hyphenation #syllable #rules #syllabification

app hyphertool

Hypertool 是一个用于音节划分和连字符化的命令行工具

2 个不稳定版本

0.2.0 2024年2月8日
0.1.0 2024年2月6日

文本处理 中排名 #828

GPL-3.0-only

18KB
214

简介

这是一个音节划分和连字符化的命令行工具,支持多种语言。它只是在 Rust 的 hypher 之上进行了一个薄封装,它使用的各种语言的连字符规则来源于 TeX。

安装

确保您的系统上已安装 cargorustc,然后

$ cargo install hyphertool

用法

音节划分

给定一个文本文件,输出带有所有音节的文本。分隔符可以通过 --delimiter 设置

$ hyphertool --language nl test.txt
Dit is een test-be-stand. Kan je dit be-stand mooi voor mij ver-wer-ken?
Ik hoop op een po-si-tief re-sul-taat.

连字符化

将文本包裹在特定宽度内。请注意,宽度是以 Unicode 点为单位的(不是字节),并且不考虑双空格字符

$ hyphertool --language nl --width 15 test.txt
Dit is een test-
bestand. Kan je
dit bestand mooi
voor mij verwer-
ken?
Ik hoop op
een positief re-
sultaat.

离线音节划分

输出所有音节以及相对于文本的偏移量。偏移量是以 0 开始的 Unicode 字符点索引,结束点不包含在内。输出将采用 TSV(制表符分隔值)格式,可以轻松导入到其他软件中,如 stam 导入 以进行进一步分析。

$ hyphertool --language nl --standoff test.txt
Text	BeginOffset	EndOffset
Dit	0	3
is	4	6
een	7	10
test	11	15
be	15	17
stand	17	22
Kan	24	27
je	28	30
dit	31	34
be	35	37
stand	37	42
mooi	43	47
voor	48	52
mij	53	56
ver	57	60
wer	60	63
ken	63	66
Ik	68	70
hoop	71	75
op	76	78
een	79	82
po	83	85
si	85	87
tief	87	91
re	92	94
sul	94	97
taat	97	101

依赖项

~2.5MB
~34K SLoC