[package]
edition = "2024"
name = "ftui-text"
version = "0.2.1"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Text layout, wrapping, and grapheme width for FrankenTUI."
homepage = "https://github.com/Dicklesworthstone/frankentui"
documentation = "https://docs.rs/ftui-text"
readme = "README.md"
license-file = "LICENSE"
repository = "https://github.com/Dicklesworthstone/frankentui"
resolver = "2"
[features]
bidi = ["dep:unicode-bidi"]
default = []
markup = ["dep:ftui-render"]
normalization = ["dep:unicode-normalization"]
shaping = ["dep:rustybuzz"]
thread_local_cache = []
[lib]
name = "ftui_text"
path = "src/lib.rs"
[[test]]
name = "fuzz_regression"
path = "tests/fuzz_regression.rs"
[[test]]
name = "grapheme_consistency"
path = "tests/grapheme_consistency.rs"
[[test]]
name = "proptest_layout_shaping_invariants"
path = "tests/proptest_layout_shaping_invariants.rs"
[[test]]
name = "proptest_search_invariants"
path = "tests/proptest_search_invariants.rs"
[[test]]
name = "snapshot_justified_matrix"
path = "tests/snapshot_justified_matrix.rs"
[[test]]
name = "unicode_width_corpus"
path = "tests/unicode_width_corpus.rs"
[[test]]
name = "wrap_spaces"
path = "tests/wrap_spaces.rs"
[[bench]]
name = "cache_bench"
path = "benches/cache_bench.rs"
harness = false
[[bench]]
name = "search_bench"
path = "benches/search_bench.rs"
harness = false
[[bench]]
name = "shaped_render_bench"
path = "benches/shaped_render_bench.rs"
harness = false
[[bench]]
name = "width_bench"
path = "benches/width_bench.rs"
harness = false
[dependencies.ftui-core]
version = "0.2.1"
[dependencies.ftui-layout]
version = "0.2.1"
[dependencies.ftui-render]
version = "0.2.1"
optional = true
[dependencies.ftui-style]
version = "0.2.1"
[dependencies.lru]
version = "0.16.3"
[dependencies.ropey]
version = "1.6.1"
[dependencies.rustc-hash]
version = "2.1.1"
[dependencies.rustybuzz]
version = "0.20"
optional = true
[dependencies.smallvec]
version = "1.15.1"
[dependencies.tracing]
version = "0.1.41"
[dependencies.unicode-bidi]
version = "0.3.18"
optional = true
[dependencies.unicode-normalization]
version = "0.1.24"
optional = true
[dependencies.unicode-segmentation]
version = "1.12.0"
[dependencies.unicode-width]
version = "0.2.2"
[dev-dependencies.criterion]
version = "0.8.2"
features = ["html_reports"]
[dev-dependencies.proptest]
version = "1.7.0"
[dev-dependencies.tracing-test]
version = "0.2.5"
[lints.rust.unexpected_cfgs]
level = "warn"
priority = 0
check-cfg = [
"cfg(coverage)",
"cfg(coverage_nightly)",
]