diff --git a/src/vs/editor/common/viewLayout/viewLineRenderer.ts b/src/vs/editor/common/viewLayout/viewLineRenderer.ts
index 7fc9ba3feaf..297700be96c 100644
--- a/src/vs/editor/common/viewLayout/viewLineRenderer.ts
+++ b/src/vs/editor/common/viewLayout/viewLineRenderer.ts
@@ -984,10 +984,13 @@ function _renderLine(input: ResolvedRenderLineInput, sb: IStringBuilder): Render
characterMapping.setColumnInfo(charIndex + 1, partIndex - partDisplacement, charOffsetInPart, charHorizontalOffset);
partDisplacement = 0;
const charCode = lineContent.charCodeAt(charIndex);
+
+ let producedCharacters: number;
let charWidth: number;
if (charCode === CharCode.Tab) {
- charWidth = (tabSize - (visibleColumn % tabSize)) | 0;
+ producedCharacters = (tabSize - (visibleColumn % tabSize)) | 0;
+ charWidth = producedCharacters;
if (!canUseHalfwidthRightwardsArrow || charWidth > 1) {
sb.write1(0x2192); // RIGHTWARDS ARROW
@@ -999,14 +1002,14 @@ function _renderLine(input: ResolvedRenderLineInput, sb: IStringBuilder): Render
}
} else { // must be CharCode.Space
+ producedCharacters = 2;
charWidth = 1;
- sb.write1(0x200C); // ZERO WIDTH NON-JOINER
sb.write1(renderSpaceCharCode); // · or word separator middle dot
sb.write1(0x200C); // ZERO WIDTH NON-JOINER
}
- charOffsetInPart += charWidth;
+ charOffsetInPart += producedCharacters;
charHorizontalOffset += charWidth;
if (charIndex >= fauxIndentLength) {
visibleColumn += charWidth;
@@ -1081,13 +1084,14 @@ function _renderLine(input: ResolvedRenderLineInput, sb: IStringBuilder): Render
sb.appendASCIIString(to4CharHex(charCode));
sb.appendASCIIString(']');
producedCharacters = 8;
+ charWidth = producedCharacters;
} else {
sb.write1(charCode);
}
}
charOffsetInPart += producedCharacters;
- charHorizontalOffset += producedCharacters;
+ charHorizontalOffset += charWidth;
if (charIndex >= fauxIndentLength) {
visibleColumn += charWidth;
}
diff --git a/src/vs/editor/test/common/viewLayout/viewLineRenderer.test.ts b/src/vs/editor/test/common/viewLayout/viewLineRenderer.test.ts
index 73675c7200e..97cfbd20324 100644
--- a/src/vs/editor/test/common/viewLayout/viewLineRenderer.test.ts
+++ b/src/vs/editor/test/common/viewLayout/viewLineRenderer.test.ts
@@ -246,7 +246,7 @@ suite('viewLineRenderer.renderLine', () => {
assert.deepStrictEqual(inflateRenderLineOutput(_actual), {
html: [
'\u2192\u00a0\u00a0\u00a0',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
'export',
'\u00a0',
'class',
@@ -257,12 +257,12 @@ suite('viewLineRenderer.renderLine', () => {
'\u00a0',
'//\u00a0',
'http://test.com',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c'
+ '\u00b7\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c'
],
mapping: [
[0, 0, 0],
- [1, 0, 4], [1, 1, 5], [1, 2, 6], [1, 3, 7],
+ [1, 0, 4], [1, 2, 5], [1, 4, 6], [1, 6, 7],
[2, 0, 8], [2, 1, 9], [2, 2, 10], [2, 3, 11], [2, 4, 12], [2, 5, 13],
[3, 0, 14],
[4, 0, 15], [4, 1, 16], [4, 2, 17], [4, 3, 18], [4, 4, 19],
@@ -273,8 +273,8 @@ suite('viewLineRenderer.renderLine', () => {
[9, 0, 27],
[10, 0, 28], [10, 1, 29], [10, 2, 30],
[11, 0, 31], [11, 1, 32], [11, 2, 33], [11, 3, 34], [11, 4, 35], [11, 5, 36], [11, 6, 37], [11, 7, 38], [11, 8, 39], [11, 9, 40], [11, 10, 41], [11, 11, 42], [11, 12, 43], [11, 13, 44], [11, 14, 45],
- [12, 0, 46], [12, 1, 47],
- [13, 0, 48], [13, 1, 49], [13, 2, 50], [13, 3, 51],
+ [12, 0, 46], [12, 2, 47],
+ [13, 0, 48], [13, 2, 49], [13, 4, 50], [13, 6, 51],
]
});
});
@@ -603,7 +603,7 @@ suite('viewLineRenderer.renderLine', () => {
assert.deepStrictEqual(inflateRenderLineOutput(_actual), ({
html: [
'',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
'[',
'"🖨️\u00a0چاپ\u00a0فاکتور"',
',',
@@ -611,7 +611,7 @@ suite('viewLineRenderer.renderLine', () => {
']',
],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3],
+ [0, 0, 0], [0, 2, 1], [0, 4, 2], [0, 6, 3],
[1, 0, 4],
[2, 0, 5], [2, 1, 6], [2, 2, 7], [2, 3, 8], [2, 4, 9], [2, 5, 10], [2, 6, 11], [2, 7, 12], [2, 8, 13], [2, 9, 14], [2, 10, 15], [2, 11, 16], [2, 12, 17], [2, 13, 18], [2, 14, 19], [2, 15, 20],
[3, 0, 21],
@@ -1145,12 +1145,17 @@ suite('viewLineRenderer.renderLine 2', () => {
null
),
{
- html: ["····", "He", "llo world!", "····"],
+ html: [
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ 'He',
+ 'llo\u00a0world!',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ ],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3],
+ [0, 0, 0], [0, 2, 1], [0, 4, 2], [0, 6, 3],
[1, 0, 4], [1, 1, 5],
[2, 0, 6], [2, 1, 7], [2, 2, 8], [2, 3, 9], [2, 4, 10], [2, 5, 11], [2, 6, 12], [2, 7, 13], [2, 8, 14], [2, 9, 15],
- [3, 0, 16], [3, 1, 17], [3, 2, 18], [3, 3, 19], [3, 4, 20]
+ [3, 0, 16], [3, 2, 17], [3, 4, 18], [3, 6, 19], [3, 8, 20]
]
}
);
@@ -1172,20 +1177,20 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
'He',
'llo\u00a0world!',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3],
- [1, 0, 4], [1, 1, 5], [1, 2, 6], [1, 3, 7],
+ [0, 0, 0], [0, 2, 1], [0, 4, 2], [0, 6, 3],
+ [1, 0, 4], [1, 2, 5], [1, 4, 6], [1, 6, 7],
[2, 0, 8], [2, 1, 9],
[3, 0, 10], [3, 1, 11], [3, 2, 12], [3, 3, 13], [3, 4, 14], [3, 5, 15], [3, 6, 16], [3, 7, 17], [3, 8, 18], [3, 9, 19],
- [4, 0, 20], [4, 1, 21], [4, 2, 22], [4, 3, 23],
- [5, 0, 24], [5, 1, 25], [5, 2, 26], [5, 3, 27], [5, 4, 28]
+ [4, 0, 20], [4, 2, 21], [4, 4, 22], [4, 6, 23],
+ [5, 0, 24], [5, 2, 25], [5, 4, 26], [5, 6, 27], [5, 8, 28]
]
}
);
@@ -1239,17 +1244,27 @@ suite('viewLineRenderer.renderLine 2', () => {
null
),
{
- html: ["··→ ", "→ ", "··", "He", "llo world!", "·→", "··→ ", "···→", "····"],
+ html: [
+ '\u00b7\u200c\u00b7\u200c\u2192\u00a0',
+ '\u2192\u00a0\u00a0\u00a0',
+ '\u00b7\u200c\u00b7\u200c',
+ 'He',
+ 'llo\u00a0world!',
+ '\u00b7\u200c\uffeb',
+ '\u00b7\u200c\u00b7\u200c\u2192\u00a0',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\uffeb',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ ],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2],
+ [0, 0, 0], [0, 2, 1], [0, 4, 2],
[1, 0, 4],
- [2, 0, 8], [2, 1, 9],
+ [2, 0, 8], [2, 2, 9],
[3, 0, 10], [3, 1, 11],
[4, 0, 12], [4, 1, 13], [4, 2, 14], [4, 3, 15], [4, 4, 16], [4, 5, 17], [4, 6, 18], [4, 7, 19], [4, 8, 20], [4, 9, 21],
- [5, 0, 22], [5, 1, 23],
- [6, 0, 24], [6, 1, 25], [6, 2, 26],
- [7, 0, 28], [7, 1, 29], [7, 2, 30], [7, 3, 31],
- [8, 0, 32], [8, 1, 33], [8, 2, 34], [8, 3, 35], [8, 4, 36]
+ [5, 0, 22], [5, 2, 23],
+ [6, 0, 24], [6, 2, 25], [6, 4, 26],
+ [7, 0, 28], [7, 2, 29], [7, 4, 30], [7, 6, 31],
+ [8, 0, 32], [8, 2, 33], [8, 4, 34], [8, 6, 35], [8, 8, 36]
]
}
);
@@ -1272,23 +1287,23 @@ suite('viewLineRenderer.renderLine 2', () => {
{
html: [
'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c',
'He',
'llo\u00a0world!',
- '\u200c\u00b7\u200c\uffeb',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u2192\u00a0',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\uffeb',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\uffeb',
+ '\u00b7\u200c\u00b7\u200c\u2192\u00a0',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\uffeb',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
],
mapping: [
[0, 0, 0], [0, 4, 4],
- [1, 0, 8], [1, 1, 9],
+ [1, 0, 8], [1, 2, 9],
[2, 0, 10], [2, 1, 11],
[3, 0, 12], [3, 1, 13], [3, 2, 14], [3, 3, 15], [3, 4, 16], [3, 5, 17], [3, 6, 18], [3, 7, 19], [3, 8, 20], [3, 9, 21],
- [4, 0, 22], [4, 1, 23],
- [5, 0, 24], [5, 1, 25], [5, 2, 26],
- [6, 0, 28], [6, 1, 29], [6, 2, 30], [6, 3, 31],
- [7, 0, 32], [7, 1, 33], [7, 2, 34], [7, 3, 35], [7, 4, 36]
+ [4, 0, 22], [4, 2, 23],
+ [5, 0, 24], [5, 2, 25], [5, 4, 26],
+ [6, 0, 28], [6, 2, 29], [6, 4, 30], [6, 6, 31],
+ [7, 0, 32], [7, 2, 33], [7, 4, 34], [7, 6, 35], [7, 8, 36]
]
}
);
@@ -1311,17 +1326,17 @@ suite('viewLineRenderer.renderLine 2', () => {
{
html: [
'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c',
'He',
'llo\u00a0world!',
- '\u200c\u00b7\u200c\uffeb\u200c\u00b7\u200c\u200c\u00b7\u200c\u2192\u00a0\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\uffeb\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\uffeb\u00b7\u200c\u00b7\u200c\u2192\u00a0\u00b7\u200c\u00b7\u200c\u00b7\u200c\uffeb\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
],
mapping: [
[0, 0, 0], [0, 4, 4],
- [1, 0, 8], [1, 1, 9],
+ [1, 0, 8], [1, 2, 9],
[2, 0, 10], [2, 1, 11],
[3, 0, 12], [3, 1, 13], [3, 2, 14], [3, 3, 15], [3, 4, 16], [3, 5, 17], [3, 6, 18], [3, 7, 19], [3, 8, 20], [3, 9, 21],
- [4, 0, 22], [4, 1, 23], [4, 2, 24], [4, 3, 25], [4, 4, 26], [4, 6, 28], [4, 7, 29], [4, 8, 30], [4, 9, 31], [4, 10, 32], [4, 11, 33], [4, 12, 34], [4, 13, 35], [4, 14, 36]
+ [4, 0, 22], [4, 2, 23], [4, 3, 24], [4, 5, 25], [4, 7, 26], [4, 9, 28], [4, 11, 29], [4, 13, 30], [4, 15, 31], [4, 16, 32], [4, 18, 33], [4, 20, 34], [4, 22, 35], [4, 24, 36]
]
}
);
@@ -1344,20 +1359,20 @@ suite('viewLineRenderer.renderLine 2', () => {
{
html: [
'it',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c',
'it',
'\u00a0',
'it',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c',
'it',
],
mapping: [
[0, 0, 0], [0, 1, 1],
- [1, 0, 2], [1, 1, 3],
+ [1, 0, 2], [1, 2, 3],
[2, 0, 4], [2, 1, 5],
[3, 0, 6],
[4, 0, 7], [4, 1, 8],
- [5, 0, 9], [5, 1, 10],
+ [5, 0, 9], [5, 2, 10],
[6, 0, 11], [6, 1, 12], [6, 2, 13]
]
}
@@ -1380,10 +1395,10 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'Hel',
'lo',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'world!',
'\u2192\u00a0\u00a0',
],
@@ -1444,10 +1459,10 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'Hel',
'lo',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'world!',
'\u2192\u00a0\u00a0',
],
@@ -1479,7 +1494,7 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'Hel',
'lo',
'\u00a0world!\u00a0\u00a0\u00a0',
@@ -1510,7 +1525,7 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'Hel',
'lo',
'\u00a0world!',
@@ -1543,7 +1558,7 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'Hel',
'lo',
'\u00a0world!',
@@ -1574,9 +1589,9 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'*',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'S',
],
mapping: [
@@ -1637,13 +1652,13 @@ suite('viewLineRenderer.renderLine 2', () => {
'\u00a0Hel',
'lo',
'\u00a0world!',
- '\u200c\u00b7\u200c\u2192\u00a0',
+ '\u00b7\u200c\u2192\u00a0',
],
mapping: [
[0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3],
[1, 0, 4], [1, 1, 5],
[2, 0, 6], [2, 1, 7], [2, 2, 8], [2, 3, 9], [2, 4, 10], [2, 5, 11], [2, 6, 12],
- [3, 0, 13], [3, 1, 14], [3, 3, 16]
+ [3, 0, 13], [3, 2, 14], [3, 4, 16]
]
}
);
@@ -1668,15 +1683,15 @@ suite('viewLineRenderer.renderLine 2', () => {
'\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0',
'He',
'llo\u00a0world!',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
],
mapping: [
[0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3], [0, 4, 4], [0, 5, 5], [0, 6, 6], [0, 7, 7],
[1, 0, 8], [1, 1, 9],
[2, 0, 10], [2, 1, 11], [2, 2, 12], [2, 3, 13], [2, 4, 14], [2, 5, 15], [2, 6, 16], [2, 7, 17], [2, 8, 18], [2, 9, 19],
- [3, 0, 20], [3, 1, 21], [3, 2, 22], [3, 3, 23],
- [4, 0, 24], [4, 1, 25], [4, 2, 26], [4, 3, 27], [4, 4, 28]
+ [3, 0, 20], [3, 2, 21], [3, 4, 22], [3, 6, 23],
+ [4, 0, 24], [4, 2, 25], [4, 4, 26], [4, 6, 27], [4, 8, 28]
]
}
);
@@ -1697,12 +1712,12 @@ suite('viewLineRenderer.renderLine 2', () => {
),
{
html: [
- '\u200c\u00b7\u200c\u2192\u00a0\u00a0',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c\u2192\u00a0\u00a0',
+ '\u00b7\u200c',
],
mapping: [
- [0, 0, 0], [0, 1, 1],
- [1, 0, 4], [1, 1, 5]
+ [0, 0, 0], [0, 2, 1],
+ [1, 0, 4], [1, 2, 5]
]
}
);
@@ -2103,8 +2118,8 @@ suite('viewLineRenderer.renderLine 2', () => {
'asd\u00a0=\u00a0"擦"\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0#asd',
],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3], [0, 4, 4], [0, 5, 5], [0, 6, 6], [0, 7, 7], [0, 8, 8],
- [0, 9, 9], [0, 11, 11], [0, 15, 15], [0, 16, 16], [0, 17, 17], [0, 18, 18], [0, 19, 19]
+ [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3], [0, 4, 4], [0, 5, 5], [0, 6, 6], [0, 7, 7], [0, 8, 9],
+ [0, 9, 10], [0, 11, 12], [0, 15, 16], [0, 16, 17], [0, 17, 18], [0, 18, 19], [0, 19, 20]
]
});
});
@@ -2136,9 +2151,9 @@ suite('viewLineRenderer.renderLine 2', () => {
assert.deepStrictEqual(inflateRenderLineOutput(actual), {
html: [
'asd',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'=',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'"擦"',
'\u2192\u00a0\u2192\u00a0\u00a0\u00a0',
'#asd',
@@ -2148,9 +2163,9 @@ suite('viewLineRenderer.renderLine 2', () => {
[1, 0, 3],
[2, 0, 4],
[3, 0, 5],
- [4, 0, 6], [4, 1, 7], [4, 2, 8],
- [5, 0, 9], [5, 2, 11],
- [6, 0, 15], [6, 1, 16], [6, 2, 17], [6, 3, 18], [6, 4, 19]
+ [4, 0, 6], [4, 1, 7], [4, 2, 9],
+ [5, 0, 10], [5, 2, 12],
+ [6, 0, 16], [6, 1, 17], [6, 2, 18], [6, 3, 19], [6, 4, 20]
]
});
});
@@ -2507,40 +2522,40 @@ suite('viewLineRenderer.renderLine 2', () => {
assert.deepStrictEqual(inflateRenderLineOutput(actual), {
html: [
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
+ '\u00b7\u200c',
'else',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'if',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'(',
'$s',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'=',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'08',
')',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'then',
- '\u200c\u00b7\u200c',
+ '\u00b7\u200c',
'\'\\b\'',
],
mapping: [
@@ -2689,14 +2704,14 @@ suite('viewLineRenderer.renderLine 2', () => {
assert.deepStrictEqual(inflateRenderLineOutput(actual), {
html: [
- '\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c\u200c\u00b7\u200c',
+ '\u00b7\u200c\u00b7\u200c\u00b7\u200c\u00b7\u200c',
'if',
'',
'',
'',
],
mapping: [
- [0, 0, 0], [0, 1, 1], [0, 2, 2], [0, 3, 3],
+ [0, 0, 0], [0, 2, 1], [0, 4, 2], [0, 6, 3],
[1, 0, 4], [1, 1, 5],
[3, 0, 6]
]