diff --git a/Cargo.lock b/Cargo.lock index 1e4300a0..c2f2735d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1319,7 +1319,6 @@ dependencies = [ "hashbrown 0.14.5", "helix-loader", "helix-stdx", - "icu_properties", "imara-diff", "indoc", "log", @@ -1337,6 +1336,7 @@ dependencies = [ "textwrap", "toml", "tree-sitter", + "unicode-general-category", "unicode-segmentation", "unicode-width", ] @@ -2664,6 +2664,12 @@ version = "2.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "98e90c70c9f0d4d1ee6d0a7d04aa06cb9bbd53d8cfbdd62a0269a7c2eb640552" +[[package]] +name = "unicode-general-category" +version = "0.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "2281c8c1d221438e373249e065ca4989c4c36952c211ff21a0ee91c44a3869e7" + [[package]] name = "unicode-ident" version = "1.0.8" diff --git a/helix-core/Cargo.toml b/helix-core/Cargo.toml index 9f936697..53d4af35 100644 --- a/helix-core/Cargo.toml +++ b/helix-core/Cargo.toml @@ -24,7 +24,7 @@ smallvec = "1.13" smartstring = "1.0.1" unicode-segmentation = "1.11" unicode-width = "0.1" -icu_properties = "1.5" +unicode-general-category = "0.6" slotmap.workspace = true tree-sitter.workspace = true once_cell = "1.19" diff --git a/helix-core/src/chars.rs b/helix-core/src/chars.rs index 22050069..817bbb86 100644 --- a/helix-core/src/chars.rs +++ b/helix-core/src/chars.rs @@ -63,10 +63,10 @@ pub fn char_is_whitespace(ch: char) -> bool { #[inline] pub fn char_is_punctuation(ch: char) -> bool { - use icu_properties::{maps::general_category, GeneralCategory}; + use unicode_general_category::{get_general_category, GeneralCategory}; matches!( - general_category().get(ch), + get_general_category(ch), GeneralCategory::OtherPunctuation | GeneralCategory::OpenPunctuation | GeneralCategory::ClosePunctuation diff --git a/helix-core/src/lib.rs b/helix-core/src/lib.rs index 6b9d359c..1abd90d1 100644 --- a/helix-core/src/lib.rs +++ b/helix-core/src/lib.rs @@ -30,7 +30,7 @@ mod transaction; pub mod wrap; pub mod unicode { - pub use icu_properties as properties; + pub use unicode_general_category as category; pub use unicode_segmentation as segmentation; pub use unicode_width as width; }