From 98c9171f88d715184bad6653320353ccd5a50087 Mon Sep 17 00:00:00 2001 From: Daniel Imms <2193314+Tyriar@users.noreply.github.com> Date: Thu, 9 Nov 2023 10:45:57 -0800 Subject: [PATCH] Update xterm, adopt new SerializeAddon range API Fixes #197737 --- package.json | 16 ++--- remote/package.json | 16 ++--- remote/web/package.json | 14 ++-- remote/web/yarn.lock | 56 ++++++++-------- remote/yarn.lock | 64 +++++++++---------- src/vs/base/common/strings.ts | 17 ----- .../browser/terminalStickyScrollOverlay.ts | 18 +++--- yarn.lock | 64 +++++++++---------- 8 files changed, 125 insertions(+), 140 deletions(-) diff --git a/package.json b/package.json index e3bd2cf2c90..954ffb3366d 100644 --- a/package.json +++ b/package.json @@ -80,14 +80,14 @@ "@vscode/windows-mutex": "^0.4.4", "@vscode/windows-process-tree": "^0.5.0", "@vscode/windows-registry": "^1.1.0", - "@xterm/addon-canvas": "0.6.0-beta.13", - "@xterm/addon-image": "0.7.0-beta.11", - "@xterm/addon-search": "0.14.0-beta.13", - "@xterm/addon-serialize": "0.12.0-beta.13", - "@xterm/addon-unicode11": "0.7.0-beta.13", - "@xterm/addon-webgl": "0.17.0-beta.13", - "@xterm/headless": "5.4.0-beta.13", - "@xterm/xterm": "5.4.0-beta.13", + "@xterm/addon-canvas": "0.6.0-beta.14", + "@xterm/addon-image": "0.7.0-beta.12", + "@xterm/addon-search": "0.14.0-beta.14", + "@xterm/addon-serialize": "0.12.0-beta.14", + "@xterm/addon-unicode11": "0.7.0-beta.14", + "@xterm/addon-webgl": "0.17.0-beta.14", + "@xterm/headless": "5.4.0-beta.14", + "@xterm/xterm": "5.4.0-beta.14", "graceful-fs": "4.2.11", "http-proxy-agent": "^7.0.0", "https-proxy-agent": "^7.0.2", diff --git a/remote/package.json b/remote/package.json index b4286ac02c4..2a4dcf858e1 100644 --- a/remote/package.json +++ b/remote/package.json @@ -13,14 +13,14 @@ "@vscode/vscode-languagedetection": "1.0.21", "@vscode/windows-process-tree": "^0.5.0", "@vscode/windows-registry": "^1.1.0", - "@xterm/addon-canvas": "0.6.0-beta.13", - "@xterm/addon-image": "0.7.0-beta.11", - "@xterm/addon-search": "0.14.0-beta.13", - "@xterm/addon-serialize": "0.12.0-beta.13", - "@xterm/addon-unicode11": "0.7.0-beta.13", - "@xterm/addon-webgl": "0.17.0-beta.13", - "@xterm/headless": "5.4.0-beta.13", - "@xterm/xterm": "5.4.0-beta.13", + "@xterm/addon-canvas": "0.6.0-beta.14", + "@xterm/addon-image": "0.7.0-beta.12", + "@xterm/addon-search": "0.14.0-beta.14", + "@xterm/addon-serialize": "0.12.0-beta.14", + "@xterm/addon-unicode11": "0.7.0-beta.14", + "@xterm/addon-webgl": "0.17.0-beta.14", + "@xterm/headless": "5.4.0-beta.14", + "@xterm/xterm": "5.4.0-beta.14", "cookie": "^0.4.0", "graceful-fs": "4.2.11", "http-proxy-agent": "^7.0.0", diff --git a/remote/web/package.json b/remote/web/package.json index ef07631655c..a056b0f158e 100644 --- a/remote/web/package.json +++ b/remote/web/package.json @@ -7,13 +7,13 @@ "@microsoft/1ds-post-js": "^3.2.13", "@vscode/iconv-lite-umd": "0.7.0", "@vscode/vscode-languagedetection": "1.0.21", - "@xterm/addon-canvas": "0.6.0-beta.13", - "@xterm/addon-image": "0.7.0-beta.11", - "@xterm/addon-search": "0.14.0-beta.13", - "@xterm/addon-serialize": "0.12.0-beta.13", - "@xterm/addon-unicode11": "0.7.0-beta.13", - "@xterm/addon-webgl": "0.17.0-beta.13", - "@xterm/xterm": "5.4.0-beta.13", + "@xterm/addon-canvas": "0.6.0-beta.14", + "@xterm/addon-image": "0.7.0-beta.12", + "@xterm/addon-search": "0.14.0-beta.14", + "@xterm/addon-serialize": "0.12.0-beta.14", + "@xterm/addon-unicode11": "0.7.0-beta.14", + "@xterm/addon-webgl": "0.17.0-beta.14", + "@xterm/xterm": "5.4.0-beta.14", "jschardet": "3.0.0", "tas-client-umd": "0.1.8", "vscode-oniguruma": "1.7.0", diff --git a/remote/web/yarn.lock b/remote/web/yarn.lock index 9c875213932..b93751d612a 100644 --- a/remote/web/yarn.lock +++ b/remote/web/yarn.lock @@ -48,40 +48,40 @@ resolved "https://registry.yarnpkg.com/@vscode/vscode-languagedetection/-/vscode-languagedetection-1.0.21.tgz#89b48f293f6aa3341bb888c1118d16ff13b032d3" integrity sha512-zSUH9HYCw5qsCtd7b31yqkpaCU6jhtkKLkvOOA8yTrIRfBSOFb8PPhgmMicD7B/m+t4PwOJXzU1XDtrM9Fd3/g== -"@xterm/addon-canvas@0.6.0-beta.13": - version "0.6.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.13.tgz#f02f6c182406da6808b1895bf729a20112fbd858" - integrity sha512-+UnTz4VX5v7cAaR3VnzOUsvyKncJ+YaH6H5OakFwUFWzJkcoT9QXZ3cBmDAPrGxPoGyxYnCdWTviUKzN15kiaQ== +"@xterm/addon-canvas@0.6.0-beta.14": + version "0.6.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.14.tgz#5a4022edf80e4b62348c11e56a0c7247b38ac946" + integrity sha512-J2+XfgTV+1ee48awyajh4maJDfzSbtF0FkOoxIUUDaw2fAPOBqeUqTDHxOyvzoYwAHlaJ98AA5HaYjrTkXqXlg== -"@xterm/addon-image@0.7.0-beta.11": - version "0.7.0-beta.11" - resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.11.tgz#2aa1e6e0a9577c4577ef66b747341170c6d90e05" - integrity sha512-IQheDVozwUU4qfXVZ9vTy3E+LW+gIbq3+WSxNx0k1DBSXkefH/aFkxxQTODY55pN5JZur8AWIwJ4GFJTb/P78Q== +"@xterm/addon-image@0.7.0-beta.12": + version "0.7.0-beta.12" + resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.12.tgz#b1ed300492429a1394c94385fb0c61ed36ad2041" + integrity sha512-MseIv99qlQ0u113a4PFAfSv4vQi+16HC6S9oAcS/CSAHeSySYqPPLdZXAMqLZo0n/vIESmSFXlX4bm2k3YIhoQ== -"@xterm/addon-search@0.14.0-beta.13": - version "0.14.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.13.tgz#9966493ea5600578dd8f22bd4779321cd6a4d57d" - integrity sha512-Th7zkrdI/Af39zfP42x+toD7HUPKP51kZ+zlI9RDhry3GUCJK/LjIOCxDexvvTbaQTp/jTe/FsW65wvEUDbOAw== +"@xterm/addon-search@0.14.0-beta.14": + version "0.14.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.14.tgz#09da64dfea88315e1e07f95e5d8ec371fe986edb" + integrity sha512-SOIUqIakxLCT2jyn0GEidmd1KJRqGbuOITWXx8loBeiBb/Omo01nqhtHFU0HTdCRwFbOhMRMDTKKr2nQxaoPEQ== -"@xterm/addon-serialize@0.12.0-beta.13": - version "0.12.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.13.tgz#7b5c9f985b9b2e2b3eae007949db5e856bf4f67b" - integrity sha512-tLlTj/EAtISPjou8ri5d28Y9cc8J0t9MGpCbZgPUZxKp1+0JqAancDrqb9ACWr+iIxtuoiwEK1Hy9+jn7CXLPg== +"@xterm/addon-serialize@0.12.0-beta.14": + version "0.12.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.14.tgz#a02553b318f2f9863cadb072e3e671ba34985e3b" + integrity sha512-zHNc6gKxHG8D+oZRWopHRCZXGt/eTBGUbVKc3Jk0h5zuWrNATZCztljQ7Zy/VOwhxQRpFrV6MXE4vb2cBLdmvw== -"@xterm/addon-unicode11@0.7.0-beta.13": - version "0.7.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.13.tgz#585bda916256e16164d4601e5f1faad34748e488" - integrity sha512-z/8tikhVHZcupKItP3xI/XJ8O1L0DVWoVHc7KoGPZB5GAQekV11pkTVzapqNr3TBqNik63p25p0XMcGmy/xYuQ== +"@xterm/addon-unicode11@0.7.0-beta.14": + version "0.7.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.14.tgz#37f672945b59c62676a76f9afa292973bff13763" + integrity sha512-L1Maeye7mPYgllIOaD8b3J70B73SoC0deNrlhiMkry/8ue2Q48JzQnOGVWKIOZC+owB1aQRWZbQZbQaAiLKz4A== -"@xterm/addon-webgl@0.17.0-beta.13": - version "0.17.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.13.tgz#9fb91f08b66c2a63ec764c375596e52b52a888ee" - integrity sha512-RtTzCaVKj3KQa5zc74AnuGnhrwFzMLR0m+TERbKbbZgbyTQPwlTbtmuRIoCra8Dy0+2EbtdjDfDQ6pY061+pVg== +"@xterm/addon-webgl@0.17.0-beta.14": + version "0.17.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.14.tgz#767057842d72258656be990b85718f01cf53ab55" + integrity sha512-FZoC0gk/H0hpQFrPEp2LM4qllj4a1MR/6sIg0TY6L83KS++8gxQLonTxDQoAmb9Ld5816s7ynLZJSTJUyDWRpg== -"@xterm/xterm@5.4.0-beta.13": - version "5.4.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.13.tgz#d231582b8bcb238ba10aff4a4e966b6f98955383" - integrity sha512-D+SKeYJOa0IjcAMvGAMk+A5kwTyLbgC7QmewEk+HIvtD7ub2Q5W7Qn/NXUKp4+dI32RfUR8JlRZkgiiRJxavsw== +"@xterm/xterm@5.4.0-beta.14": + version "5.4.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.14.tgz#fa0902f457fe799c65dec6ff784538a087f611d9" + integrity sha512-69E++VxeLPxBRhR3EGpkDe3R+EhpEZILo0m6TcN+atC4Zm5+WgcqXBCrBhkvpnBA2AhZp51w+hLC/OCwaHE0rg== jschardet@3.0.0: version "3.0.0" diff --git a/remote/yarn.lock b/remote/yarn.lock index 8b0a94256ac..c83c555aa64 100644 --- a/remote/yarn.lock +++ b/remote/yarn.lock @@ -113,45 +113,45 @@ resolved "https://registry.yarnpkg.com/@vscode/windows-registry/-/windows-registry-1.1.0.tgz#03dace7c29c46f658588b9885b9580e453ad21f9" integrity sha512-5AZzuWJpGscyiMOed0IuyEwt6iKmV5Us7zuwCDCFYMIq7tsvooO9BUiciywsvuthGz6UG4LSpeDeCxvgMVhnIw== -"@xterm/addon-canvas@0.6.0-beta.13": - version "0.6.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.13.tgz#f02f6c182406da6808b1895bf729a20112fbd858" - integrity sha512-+UnTz4VX5v7cAaR3VnzOUsvyKncJ+YaH6H5OakFwUFWzJkcoT9QXZ3cBmDAPrGxPoGyxYnCdWTviUKzN15kiaQ== +"@xterm/addon-canvas@0.6.0-beta.14": + version "0.6.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.14.tgz#5a4022edf80e4b62348c11e56a0c7247b38ac946" + integrity sha512-J2+XfgTV+1ee48awyajh4maJDfzSbtF0FkOoxIUUDaw2fAPOBqeUqTDHxOyvzoYwAHlaJ98AA5HaYjrTkXqXlg== -"@xterm/addon-image@0.7.0-beta.11": - version "0.7.0-beta.11" - resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.11.tgz#2aa1e6e0a9577c4577ef66b747341170c6d90e05" - integrity sha512-IQheDVozwUU4qfXVZ9vTy3E+LW+gIbq3+WSxNx0k1DBSXkefH/aFkxxQTODY55pN5JZur8AWIwJ4GFJTb/P78Q== +"@xterm/addon-image@0.7.0-beta.12": + version "0.7.0-beta.12" + resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.12.tgz#b1ed300492429a1394c94385fb0c61ed36ad2041" + integrity sha512-MseIv99qlQ0u113a4PFAfSv4vQi+16HC6S9oAcS/CSAHeSySYqPPLdZXAMqLZo0n/vIESmSFXlX4bm2k3YIhoQ== -"@xterm/addon-search@0.14.0-beta.13": - version "0.14.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.13.tgz#9966493ea5600578dd8f22bd4779321cd6a4d57d" - integrity sha512-Th7zkrdI/Af39zfP42x+toD7HUPKP51kZ+zlI9RDhry3GUCJK/LjIOCxDexvvTbaQTp/jTe/FsW65wvEUDbOAw== +"@xterm/addon-search@0.14.0-beta.14": + version "0.14.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.14.tgz#09da64dfea88315e1e07f95e5d8ec371fe986edb" + integrity sha512-SOIUqIakxLCT2jyn0GEidmd1KJRqGbuOITWXx8loBeiBb/Omo01nqhtHFU0HTdCRwFbOhMRMDTKKr2nQxaoPEQ== -"@xterm/addon-serialize@0.12.0-beta.13": - version "0.12.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.13.tgz#7b5c9f985b9b2e2b3eae007949db5e856bf4f67b" - integrity sha512-tLlTj/EAtISPjou8ri5d28Y9cc8J0t9MGpCbZgPUZxKp1+0JqAancDrqb9ACWr+iIxtuoiwEK1Hy9+jn7CXLPg== +"@xterm/addon-serialize@0.12.0-beta.14": + version "0.12.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.14.tgz#a02553b318f2f9863cadb072e3e671ba34985e3b" + integrity sha512-zHNc6gKxHG8D+oZRWopHRCZXGt/eTBGUbVKc3Jk0h5zuWrNATZCztljQ7Zy/VOwhxQRpFrV6MXE4vb2cBLdmvw== -"@xterm/addon-unicode11@0.7.0-beta.13": - version "0.7.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.13.tgz#585bda916256e16164d4601e5f1faad34748e488" - integrity sha512-z/8tikhVHZcupKItP3xI/XJ8O1L0DVWoVHc7KoGPZB5GAQekV11pkTVzapqNr3TBqNik63p25p0XMcGmy/xYuQ== +"@xterm/addon-unicode11@0.7.0-beta.14": + version "0.7.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.14.tgz#37f672945b59c62676a76f9afa292973bff13763" + integrity sha512-L1Maeye7mPYgllIOaD8b3J70B73SoC0deNrlhiMkry/8ue2Q48JzQnOGVWKIOZC+owB1aQRWZbQZbQaAiLKz4A== -"@xterm/addon-webgl@0.17.0-beta.13": - version "0.17.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.13.tgz#9fb91f08b66c2a63ec764c375596e52b52a888ee" - integrity sha512-RtTzCaVKj3KQa5zc74AnuGnhrwFzMLR0m+TERbKbbZgbyTQPwlTbtmuRIoCra8Dy0+2EbtdjDfDQ6pY061+pVg== +"@xterm/addon-webgl@0.17.0-beta.14": + version "0.17.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.14.tgz#767057842d72258656be990b85718f01cf53ab55" + integrity sha512-FZoC0gk/H0hpQFrPEp2LM4qllj4a1MR/6sIg0TY6L83KS++8gxQLonTxDQoAmb9Ld5816s7ynLZJSTJUyDWRpg== -"@xterm/headless@5.4.0-beta.13": - version "5.4.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.13.tgz#684cd0f0eb1817de43259dcb720554ae3d286dfd" - integrity sha512-jxPorUSJsqExqw9ciXILK++SmXdsblt1t4SrOGcLuJHE+RKwcoh4OCHhtisXamAIVlXtbEEcuYJCpgULGaqtWA== +"@xterm/headless@5.4.0-beta.14": + version "5.4.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.14.tgz#22f56a23bff9434b586a09771ac0c1dc06d72330" + integrity sha512-W1OPpSuKJqaJUXIi6GjOYRYzmmeB1SX6o2YIuYLJTzZx3cQzg6/gecYbGL1VKp7WzouAb8yJSlSkSQRIUMDRYg== -"@xterm/xterm@5.4.0-beta.13": - version "5.4.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.13.tgz#d231582b8bcb238ba10aff4a4e966b6f98955383" - integrity sha512-D+SKeYJOa0IjcAMvGAMk+A5kwTyLbgC7QmewEk+HIvtD7ub2Q5W7Qn/NXUKp4+dI32RfUR8JlRZkgiiRJxavsw== +"@xterm/xterm@5.4.0-beta.14": + version "5.4.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.14.tgz#fa0902f457fe799c65dec6ff784538a087f611d9" + integrity sha512-69E++VxeLPxBRhR3EGpkDe3R+EhpEZILo0m6TcN+atC4Zm5+WgcqXBCrBhkvpnBA2AhZp51w+hLC/OCwaHE0rg== agent-base@^7.0.1, agent-base@^7.0.2, agent-base@^7.1.0: version "7.1.0" diff --git a/src/vs/base/common/strings.ts b/src/vs/base/common/strings.ts index 194faf1134a..7e354e3bce5 100644 --- a/src/vs/base/common/strings.ts +++ b/src/vs/base/common/strings.ts @@ -167,23 +167,6 @@ export function stripWildcards(pattern: string): string { return pattern.replace(/\*/g, ''); } -/** - * Finds the index of the nth occurrence of a character within a string. - * @param text The text to search. - * @param char The character to search for. - * @param n The number of chars to find - */ -export function findNthOccurrenceIndex(text: string, char: string, n: number): number { - let index = -1; - for (let i = 0; i < n; i++) { - index = text.indexOf(char, index + 1); - if (index === -1) { - break; - } - } - return index; -} - export interface RegExpOptions { matchCase?: boolean; wholeWord?: boolean; diff --git a/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts b/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts index 614469db200..aa99921c624 100644 --- a/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts +++ b/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.ts @@ -11,7 +11,6 @@ import { CancelablePromise, createCancelablePromise } from 'vs/base/common/async import { memoize, throttle } from 'vs/base/common/decorators'; import { Event } from 'vs/base/common/event'; import { Disposable, MutableDisposable, combinedDisposable, toDisposable } from 'vs/base/common/lifecycle'; -import { findNthOccurrenceIndex } from 'vs/base/common/strings'; import 'vs/css!./media/stickyScroll'; import { IConfigurationService } from 'vs/platform/configuration/common/configuration'; import { ICommandDetectionCapability } from 'vs/platform/terminal/common/capabilities/capabilities'; @@ -150,6 +149,7 @@ export class TerminalStickyScrollOverlay extends Disposable { return; } + const buffer = this._xterm.raw.buffer.active; const marker = command.marker; if ( // The marker doesn't exist @@ -157,7 +157,7 @@ export class TerminalStickyScrollOverlay extends Disposable { // The marker was trimmed from the scrollback marker.line === -1 || // Hide sticky scroll if it's on the same line - marker.line === this._xterm.raw.buffer.active.viewportY + marker.line === buffer.viewportY ) { this._setVisible(false); return; @@ -171,25 +171,27 @@ export class TerminalStickyScrollOverlay extends Disposable { if (command.promptStartMarker) { promptStartLine = Math.min(command.promptStartMarker?.line ?? marker.line, marker.line); // Trim any leading whitespace-only lines to retain vertical space - while (promptStartLine < marker.line && (this._xterm.raw.buffer.active.getLine(promptStartLine)?.translateToString(true) ?? '').length === 0) { + while (promptStartLine < marker.line && (buffer.getLine(promptStartLine)?.translateToString(true) ?? '').length === 0) { promptStartLine++; } promptRowCount = marker.line - promptStartLine + 1; } // Clear attrs, reset cursor position, clear right - // TODO: Serializing all content up to the required line is inefficient; support providing single line/range serialize addon - const s = this._serializeAddon.serialize({ - scrollback: this._xterm.raw.buffer.active.baseY - promptStartLine + const content = this._serializeAddon.serialize({ + range: { + start: promptStartLine, + end: promptStartLine + promptRowCount - 1 + } }); // Write content if it differs - const content = s ? s.substring(0, findNthOccurrenceIndex(s, '\r', promptRowCount)) : undefined; + // const content = s ? s.substring(0, findNthOccurrenceIndex(s, '\r', promptRowCount)) : undefined; if (content && this._currentContent !== content) { if (this._stickyScrollOverlay.rows !== promptRowCount) { this._stickyScrollOverlay.resize(this._stickyScrollOverlay.cols, promptRowCount); } - this._stickyScrollOverlay.write('\x1b[0m\x1b[H\x1b[2K'); + this._stickyScrollOverlay.write('\x1b[0m\x1b[H\x1b[2J'); this._stickyScrollOverlay.write(content); this._currentContent = content; // Debug log to show the command diff --git a/yarn.lock b/yarn.lock index 3c3246c50d8..0d50d37117a 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1668,45 +1668,45 @@ resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-2.0.1.tgz#34bdc31727a1889198855913db2f270ace6d7bf8" integrity sha512-0G7tNyS+yW8TdgHwZKlDWYXFA6OJQnoLCQvYKkQP0Q2X205PSQ6RNUj0M+1OB/9gRQaUZ/ccYfaxd0nhaWKfjw== -"@xterm/addon-canvas@0.6.0-beta.13": - version "0.6.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.13.tgz#f02f6c182406da6808b1895bf729a20112fbd858" - integrity sha512-+UnTz4VX5v7cAaR3VnzOUsvyKncJ+YaH6H5OakFwUFWzJkcoT9QXZ3cBmDAPrGxPoGyxYnCdWTviUKzN15kiaQ== +"@xterm/addon-canvas@0.6.0-beta.14": + version "0.6.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-canvas/-/addon-canvas-0.6.0-beta.14.tgz#5a4022edf80e4b62348c11e56a0c7247b38ac946" + integrity sha512-J2+XfgTV+1ee48awyajh4maJDfzSbtF0FkOoxIUUDaw2fAPOBqeUqTDHxOyvzoYwAHlaJ98AA5HaYjrTkXqXlg== -"@xterm/addon-image@0.7.0-beta.11": - version "0.7.0-beta.11" - resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.11.tgz#2aa1e6e0a9577c4577ef66b747341170c6d90e05" - integrity sha512-IQheDVozwUU4qfXVZ9vTy3E+LW+gIbq3+WSxNx0k1DBSXkefH/aFkxxQTODY55pN5JZur8AWIwJ4GFJTb/P78Q== +"@xterm/addon-image@0.7.0-beta.12": + version "0.7.0-beta.12" + resolved "https://registry.yarnpkg.com/@xterm/addon-image/-/addon-image-0.7.0-beta.12.tgz#b1ed300492429a1394c94385fb0c61ed36ad2041" + integrity sha512-MseIv99qlQ0u113a4PFAfSv4vQi+16HC6S9oAcS/CSAHeSySYqPPLdZXAMqLZo0n/vIESmSFXlX4bm2k3YIhoQ== -"@xterm/addon-search@0.14.0-beta.13": - version "0.14.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.13.tgz#9966493ea5600578dd8f22bd4779321cd6a4d57d" - integrity sha512-Th7zkrdI/Af39zfP42x+toD7HUPKP51kZ+zlI9RDhry3GUCJK/LjIOCxDexvvTbaQTp/jTe/FsW65wvEUDbOAw== +"@xterm/addon-search@0.14.0-beta.14": + version "0.14.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-search/-/addon-search-0.14.0-beta.14.tgz#09da64dfea88315e1e07f95e5d8ec371fe986edb" + integrity sha512-SOIUqIakxLCT2jyn0GEidmd1KJRqGbuOITWXx8loBeiBb/Omo01nqhtHFU0HTdCRwFbOhMRMDTKKr2nQxaoPEQ== -"@xterm/addon-serialize@0.12.0-beta.13": - version "0.12.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.13.tgz#7b5c9f985b9b2e2b3eae007949db5e856bf4f67b" - integrity sha512-tLlTj/EAtISPjou8ri5d28Y9cc8J0t9MGpCbZgPUZxKp1+0JqAancDrqb9ACWr+iIxtuoiwEK1Hy9+jn7CXLPg== +"@xterm/addon-serialize@0.12.0-beta.14": + version "0.12.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-serialize/-/addon-serialize-0.12.0-beta.14.tgz#a02553b318f2f9863cadb072e3e671ba34985e3b" + integrity sha512-zHNc6gKxHG8D+oZRWopHRCZXGt/eTBGUbVKc3Jk0h5zuWrNATZCztljQ7Zy/VOwhxQRpFrV6MXE4vb2cBLdmvw== -"@xterm/addon-unicode11@0.7.0-beta.13": - version "0.7.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.13.tgz#585bda916256e16164d4601e5f1faad34748e488" - integrity sha512-z/8tikhVHZcupKItP3xI/XJ8O1L0DVWoVHc7KoGPZB5GAQekV11pkTVzapqNr3TBqNik63p25p0XMcGmy/xYuQ== +"@xterm/addon-unicode11@0.7.0-beta.14": + version "0.7.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-unicode11/-/addon-unicode11-0.7.0-beta.14.tgz#37f672945b59c62676a76f9afa292973bff13763" + integrity sha512-L1Maeye7mPYgllIOaD8b3J70B73SoC0deNrlhiMkry/8ue2Q48JzQnOGVWKIOZC+owB1aQRWZbQZbQaAiLKz4A== -"@xterm/addon-webgl@0.17.0-beta.13": - version "0.17.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.13.tgz#9fb91f08b66c2a63ec764c375596e52b52a888ee" - integrity sha512-RtTzCaVKj3KQa5zc74AnuGnhrwFzMLR0m+TERbKbbZgbyTQPwlTbtmuRIoCra8Dy0+2EbtdjDfDQ6pY061+pVg== +"@xterm/addon-webgl@0.17.0-beta.14": + version "0.17.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/addon-webgl/-/addon-webgl-0.17.0-beta.14.tgz#767057842d72258656be990b85718f01cf53ab55" + integrity sha512-FZoC0gk/H0hpQFrPEp2LM4qllj4a1MR/6sIg0TY6L83KS++8gxQLonTxDQoAmb9Ld5816s7ynLZJSTJUyDWRpg== -"@xterm/headless@5.4.0-beta.13": - version "5.4.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.13.tgz#684cd0f0eb1817de43259dcb720554ae3d286dfd" - integrity sha512-jxPorUSJsqExqw9ciXILK++SmXdsblt1t4SrOGcLuJHE+RKwcoh4OCHhtisXamAIVlXtbEEcuYJCpgULGaqtWA== +"@xterm/headless@5.4.0-beta.14": + version "5.4.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/headless/-/headless-5.4.0-beta.14.tgz#22f56a23bff9434b586a09771ac0c1dc06d72330" + integrity sha512-W1OPpSuKJqaJUXIi6GjOYRYzmmeB1SX6o2YIuYLJTzZx3cQzg6/gecYbGL1VKp7WzouAb8yJSlSkSQRIUMDRYg== -"@xterm/xterm@5.4.0-beta.13": - version "5.4.0-beta.13" - resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.13.tgz#d231582b8bcb238ba10aff4a4e966b6f98955383" - integrity sha512-D+SKeYJOa0IjcAMvGAMk+A5kwTyLbgC7QmewEk+HIvtD7ub2Q5W7Qn/NXUKp4+dI32RfUR8JlRZkgiiRJxavsw== +"@xterm/xterm@5.4.0-beta.14": + version "5.4.0-beta.14" + resolved "https://registry.yarnpkg.com/@xterm/xterm/-/xterm-5.4.0-beta.14.tgz#fa0902f457fe799c65dec6ff784538a087f611d9" + integrity sha512-69E++VxeLPxBRhR3EGpkDe3R+EhpEZILo0m6TcN+atC4Zm5+WgcqXBCrBhkvpnBA2AhZp51w+hLC/OCwaHE0rg== "@xtuc/ieee754@^1.2.0": version "1.2.0"