aboutsummaryrefslogtreecommitdiff
path: root/alacritty/src/renderer/rects.rs
diff options
context:
space:
mode:
Diffstat (limited to 'alacritty/src/renderer/rects.rs')
-rw-r--r--alacritty/src/renderer/rects.rs10
1 files changed, 8 insertions, 2 deletions
diff --git a/alacritty/src/renderer/rects.rs b/alacritty/src/renderer/rects.rs
index fcd8c82e..2a727b4c 100644
--- a/alacritty/src/renderer/rects.rs
+++ b/alacritty/src/renderer/rects.rs
@@ -162,6 +162,12 @@ impl RenderLines {
return;
}
+ // Include wide char spacer if the current cell is a wide char.
+ let mut end: Point = cell.into();
+ if cell.flags.contains(Flags::WIDE_CHAR) {
+ end.col += 1;
+ }
+
// Check if there's an active line.
if let Some(line) = self.inner.get_mut(&flag).and_then(|lines| lines.last_mut()) {
if cell.fg == line.color
@@ -169,13 +175,13 @@ impl RenderLines {
&& cell.line == line.end.line
{
// Update the length of the line.
- line.end = cell.into();
+ line.end = end;
return;
}
}
// Start new line if there currently is none.
- let line = RenderLine { start: cell.into(), end: cell.into(), color: cell.fg };
+ let line = RenderLine { start: cell.into(), end, color: cell.fg };
match self.inner.get_mut(&flag) {
Some(lines) => lines.push(line),
None => {