diff --git a/zellij-server/src/panes/grid.rs b/zellij-server/src/panes/grid.rs index 1382fc7a..88edb1ef 100644 --- a/zellij-server/src/panes/grid.rs +++ b/zellij-server/src/panes/grid.rs @@ -1193,6 +1193,10 @@ impl Grid { } pub fn add_character(&mut self, terminal_character: TerminalCharacter) { let character_width = terminal_character.width; + // Drop zero-width Unicode/UTF-8 codepoints, like for example Variation Selectors. + // This breaks unicode grapheme segmentation, and is the reason why some characters + // aren't displayed correctly. Refer to this issue for more information: + // https://github.com/zellij-org/zellij/issues/1538 if character_width == 0 { return; }