7 个版本

0.1.5 2023年7月25日
0.1.4 2022年9月29日
0.1.2 2021年7月25日
0.1.1 2021年1月30日
0.0.1 2018年12月10日

#20 in 国际化(i18n)

Download history · Rust 包仓库 197400/week @ 2024-03-14 · Rust 包仓库 187793/week @ 2024-03-21 · Rust 包仓库 178667/week @ 2024-03-28 · Rust 包仓库 183399/week @ 2024-04-04 · Rust 包仓库 191926/week @ 2024-04-11 · Rust 包仓库 192396/week @ 2024-04-18 · Rust 包仓库 196318/week @ 2024-04-25 · Rust 包仓库 209945/week @ 2024-05-02 · Rust 包仓库 216236/week @ 2024-05-09 · Rust 包仓库 223138/week @ 2024-05-16 · Rust 包仓库 206773/week @ 2024-05-23 · Rust 包仓库 270731/week @ 2024-05-30 · Rust 包仓库 286418/week @ 2024-06-06 · Rust 包仓库 291883/week @ 2024-06-13 · Rust 包仓库 310577/week @ 2024-06-20 · Rust 包仓库 264586/week @ 2024-06-27 · Rust 包仓库

1,211,098 每月下载量
745 个crates(12个直接) 中使用

Apache-2.0

79KB
159

unicode-linebreak

实现 Unicode 标准附件 #14 中描述的行断算法。

test Documentation

给定输入文本,定位“行断点”,或当显示文本时换行的合适位置。

示例

use unicode_linebreak::{linebreaks, BreakOpportunity::{Mandatory, Allowed}};

let text = "a b \nc";
assert!(linebreaks(text).eq([
	(2, Allowed),   // May break after first space
	(5, Mandatory), // Must break after line feed
	(6, Mandatory)  // Must break at end of text, so that there always is at least one LB
]));

开发

在克隆仓库或修改 LineBreak.txt 后,必须(重新)生成表格

# Generate src/tables.rs
(cd gen-tables && cargo run)
# Run tests to make sure it was successful
cargo test

无运行时依赖