aboutsummaryrefslogtreecommitdiffstats
path: root/src/cell.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/cell.rs')
-rw-r--r--src/cell.rs13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/cell.rs b/src/cell.rs
index 05d93be..ecc44b2 100644
--- a/src/cell.rs
+++ b/src/cell.rs
@@ -1,4 +1,3 @@
-use unicode_normalization::UnicodeNormalization as _;
use unicode_width::UnicodeWidthChar as _;
const CODEPOINTS_IN_CELL: usize = 6;
@@ -49,6 +48,18 @@ impl Cell {
self.contents[self.len()] = c;
self.len += 1;
+ self.normalize();
+ }
+
+ #[cfg(not(feature = "unicode-normalization"))]
+ #[inline]
+ fn normalize(&mut self) {}
+
+ #[cfg(feature = "unicode-normalization")]
+ #[inline]
+ fn normalize(&mut self) {
+ use unicode_normalization::UnicodeNormalization as _;
+
// some fonts have combined characters but can't render combining
// characters correctly, so try to prefer precombined characters when
// possible