From 6b920cbe76dafbf6af1ab3f5c114b2e63bf55532 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Cl=C3=A9ment=20DOUIN?= Date: Wed, 2 Mar 2022 11:13:38 +0100 Subject: [PATCH] remove variation selectors from table cells (#300) --- CHANGELOG.md | 5 +++++ src/ui/table.rs | 7 ++++++- 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 1aef8cd..929e380 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,10 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +### Fixed + +- Some emojis break the table layout [#300] + ## [0.5.7] - 2022-03-01 ### Added @@ -452,6 +456,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [#280]: https://github.com/soywod/himalaya/issues/280 [#288]: https://github.com/soywod/himalaya/issues/288 [#289]: https://github.com/soywod/himalaya/issues/289 +[#300]: https://github.com/soywod/himalaya/issues/300 [#303]: https://github.com/soywod/himalaya/issues/303 [#305]: https://github.com/soywod/himalaya/issues/305 [#308]: https://github.com/soywod/himalaya/issues/308 diff --git a/src/ui/table.rs b/src/ui/table.rs index 3763b18..54548b3 100644 --- a/src/ui/table.rs +++ b/src/ui/table.rs @@ -35,7 +35,12 @@ pub struct Cell { impl Cell { pub fn new>(value: T) -> Self { Self { - value: String::from(value.as_ref()).replace(&['\r', '\n', '\t'][..], ""), + // Removes carriage returns, new line feeds, tabulations + // and [variation selectors]. + // + // [variation selectors]: https://en.wikipedia.org/wiki/Variation_Selectors_(Unicode_block) + value: String::from(value.as_ref()) + .replace(&['\r', '\n', '\t', '\u{fe0e}', '\u{fe0f}'], ""), ..Self::default() } }