File tree 2 files changed +6
-0
lines changed
2 files changed +6
-0
lines changed Original file line number Diff line number Diff line change @@ -381,6 +381,7 @@ export class WebglRenderer extends Disposable implements IRenderer {
381
381
let isValidJoinRange : boolean = true ;
382
382
let lastCharX : number ;
383
383
let range : [ number , number ] ;
384
+ let isCursorRow : boolean ;
384
385
let chars : string ;
385
386
let code : number ;
386
387
let width : number ;
@@ -407,6 +408,7 @@ export class WebglRenderer extends Disposable implements IRenderer {
407
408
row = y + terminal . buffer . ydisp ;
408
409
line = terminal . buffer . lines . get ( row ) ! ;
409
410
this . _model . lineLengths [ y ] = 0 ;
411
+ isCursorRow = cursorY === row ;
410
412
skipJoinedCheckUntilX = 0 ;
411
413
joinedRanges = this . _characterJoinerService . getJoinedCharacters ( row ) ;
412
414
for ( x = 0 ; x < terminal . cols ; x ++ ) {
@@ -438,6 +440,8 @@ export class WebglRenderer extends Disposable implements IRenderer {
438
440
for ( i = range [ 0 ] + 1 ; i < range [ 1 ] ; i ++ ) {
439
441
isValidJoinRange &&= ( firstSelectionState === this . _model . selection . isCellSelected ( this . _terminal , i , row ) ) ;
440
442
}
443
+ // Similarly, if the cursor is in the ligature, don't join it.
444
+ isValidJoinRange &&= ! isCursorRow || cursorX < range [ 0 ] || cursorX >= range [ 1 ] ;
441
445
if ( ! isValidJoinRange ) {
442
446
skipJoinedCheckUntilX = range [ 1 ] ;
443
447
} else {
Original file line number Diff line number Diff line change @@ -127,6 +127,8 @@ export class DomRendererRowFactory {
127
127
for ( i = range [ 0 ] + 1 ; i < range [ 1 ] ; i ++ ) {
128
128
isValidJoinRange &&= ( firstSelectionState === this . _isCellInSelection ( i , row ) ) ;
129
129
}
130
+ // Similarly, if the cursor is in the ligature, don't join it.
131
+ isValidJoinRange &&= ! isCursorRow || cursorX < range [ 0 ] || cursorX >= range [ 1 ] ;
130
132
if ( ! isValidJoinRange ) {
131
133
skipJoinedCheckUntilX = range [ 1 ] ;
132
134
} else {
You can’t perform that action at this time.
0 commit comments