Fix position of zero-width over double-width characters
This commit is contained in:
parent
494348abe8
commit
9c6d12ea2c
|
@ -23,6 +23,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
- PTY size not getting updated when message bar is shown
|
- PTY size not getting updated when message bar is shown
|
||||||
- Text Cursor disappearing
|
- Text Cursor disappearing
|
||||||
|
- Incorrect positioning of zero-width characters over double-width characters
|
||||||
|
|
||||||
## Version 0.3.2
|
## Version 0.3.2
|
||||||
|
|
||||||
|
|
|
@ -1414,10 +1414,10 @@ impl ansi::Handler for Term {
|
||||||
|
|
||||||
// Handle zero-width characters
|
// Handle zero-width characters
|
||||||
if width == 0 {
|
if width == 0 {
|
||||||
let col = self.cursor.point.col.0.saturating_sub(1);
|
let mut col = self.cursor.point.col.0.saturating_sub(1);
|
||||||
let line = self.cursor.point.line;
|
let line = self.cursor.point.line;
|
||||||
if self.grid[line][Column(col)].flags.contains(cell::Flags::WIDE_CHAR_SPACER) {
|
if self.grid[line][Column(col)].flags.contains(cell::Flags::WIDE_CHAR_SPACER) {
|
||||||
col.saturating_sub(1);
|
col = col.saturating_sub(1);
|
||||||
}
|
}
|
||||||
self.grid[line][Column(col)].push_extra(c);
|
self.grid[line][Column(col)].push_extra(c);
|
||||||
return;
|
return;
|
||||||
|
|
Loading…
Reference in New Issue