@codingame/monaco-vscode-xterm-common 32.0.1 → 33.0.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +4 -4
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.js +8 -8
- package/vscode/src/vs/workbench/contrib/terminal/browser/environmentVariableInfo.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalActions.js +61 -61
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalInstance.js +40 -39
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +2 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTabsList.js +5 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalTooltip.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollColorRegistry.js +3 -3
- package/vscode/src/vs/workbench/contrib/terminalContrib/stickyScroll/browser/terminalStickyScrollOverlay.js +3 -3
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.d.ts +0 -1054
- package/vscode/src/vs/platform/agentHost/common/state/protocol/actions.js +0 -59
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.d.ts +0 -139
- package/vscode/src/vs/platform/agentHost/common/state/sessionState.js +0 -24
|
@@ -774,13 +774,13 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
774
774
|
}
|
|
775
775
|
xtermConstructor = Promises.withAsyncBody(async resolve => {
|
|
776
776
|
const Terminal = (await import('@xterm/xterm')).Terminal;
|
|
777
|
-
Terminal.strings.promptLabel = ( localize(
|
|
777
|
+
Terminal.strings.promptLabel = ( localize(13999, "Terminal input"));
|
|
778
778
|
Terminal.strings.tooMuchOutput = keybinding ? ( localize(
|
|
779
|
-
|
|
779
|
+
14000,
|
|
780
780
|
"Use the accessible buffer {0} to manually review output",
|
|
781
781
|
keybinding.getLabel()
|
|
782
782
|
)) : ( localize(
|
|
783
|
-
|
|
783
|
+
14001,
|
|
784
784
|
"Use the Terminal: Focus Accessible Buffer command to manually review output"
|
|
785
785
|
));
|
|
786
786
|
resolve(Terminal);
|
|
@@ -842,7 +842,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
842
842
|
id: TerminalStatus.Bell,
|
|
843
843
|
severity: Severity.Warning,
|
|
844
844
|
icon: Codicon.bell,
|
|
845
|
-
tooltip: ( localize(
|
|
845
|
+
tooltip: ( localize(14002, "Bell"))
|
|
846
846
|
}, this._terminalConfigurationService.config.bellDuration);
|
|
847
847
|
}
|
|
848
848
|
this._accessibilitySignalService.playSignal(AccessibilitySignal.terminalBell);
|
|
@@ -920,7 +920,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
920
920
|
if (!instance.xterm) {
|
|
921
921
|
return;
|
|
922
922
|
}
|
|
923
|
-
const cmdDetectionType = (instance.capabilities.get(TerminalCapability.CommandDetection)?.hasRichCommandDetection ? ( localize(
|
|
923
|
+
const cmdDetectionType = (instance.capabilities.get(TerminalCapability.CommandDetection)?.hasRichCommandDetection ? ( localize(14003, "Rich")) : ( instance.capabilities.has(TerminalCapability.CommandDetection)) ? ( localize(14004, "Basic")) : instance.usedShellIntegrationInjection ? ( localize(14005, "Injection failed to activate")) : ( localize(14006, "No")));
|
|
924
924
|
const detailedAdditions = [];
|
|
925
925
|
if (instance.shellType) {
|
|
926
926
|
detailedAdditions.push(`Shell type: \`${instance.shellType}\``);
|
|
@@ -945,8 +945,8 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
945
945
|
instance.statusList.add({
|
|
946
946
|
id: TerminalStatus.ShellIntegrationInfo,
|
|
947
947
|
severity: Severity.Info,
|
|
948
|
-
tooltip: `${( localize(
|
|
949
|
-
detailedTooltip: `${( localize(
|
|
948
|
+
tooltip: `${( localize(14007, "Shell integration"))}: ${cmdDetectionType}`,
|
|
949
|
+
detailedTooltip: `${( localize(14007, "Shell integration"))}: ${cmdDetectionType}${detailedAdditionsString}`
|
|
950
950
|
});
|
|
951
951
|
}
|
|
952
952
|
async runCommand(
|
|
@@ -1185,16 +1185,6 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1185
1185
|
this._horizontalScrollbar.dispose();
|
|
1186
1186
|
this._horizontalScrollbar = undefined;
|
|
1187
1187
|
}
|
|
1188
|
-
try {
|
|
1189
|
-
this.xterm?.dispose();
|
|
1190
|
-
} catch (err) {
|
|
1191
|
-
this._logService.error("Exception occurred during xterm disposal", err);
|
|
1192
|
-
}
|
|
1193
|
-
if (isFirefox) {
|
|
1194
|
-
this.resetFocusContextKey();
|
|
1195
|
-
this._terminalHasTextContextKey.reset();
|
|
1196
|
-
this._onDidBlur.fire(this);
|
|
1197
|
-
}
|
|
1198
1188
|
if (this._pressAnyKeyToCloseListener) {
|
|
1199
1189
|
this._pressAnyKeyToCloseListener.dispose();
|
|
1200
1190
|
this._pressAnyKeyToCloseListener = undefined;
|
|
@@ -1205,6 +1195,16 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1205
1195
|
this._processManager.dispose();
|
|
1206
1196
|
this._onProcessExit(undefined);
|
|
1207
1197
|
this._onDisposed.fire(this);
|
|
1198
|
+
try {
|
|
1199
|
+
this.xterm?.dispose();
|
|
1200
|
+
} catch (err) {
|
|
1201
|
+
this._logService.error("Exception occurred during xterm disposal", err);
|
|
1202
|
+
}
|
|
1203
|
+
if (isFirefox) {
|
|
1204
|
+
this.resetFocusContextKey();
|
|
1205
|
+
this._terminalHasTextContextKey.reset();
|
|
1206
|
+
this._onDidBlur.fire(this);
|
|
1207
|
+
}
|
|
1208
1208
|
super.dispose();
|
|
1209
1209
|
}
|
|
1210
1210
|
async detachProcessAndDispose(reason) {
|
|
@@ -1415,7 +1415,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1415
1415
|
id: TerminalStatus.Disconnected,
|
|
1416
1416
|
severity: Severity.Error,
|
|
1417
1417
|
icon: Codicon.debugDisconnect,
|
|
1418
|
-
tooltip: ( localize(
|
|
1418
|
+
tooltip: ( localize(14008, "Lost connection to process"))
|
|
1419
1419
|
});
|
|
1420
1420
|
}));
|
|
1421
1421
|
this._register(processManager.onPtyReconnect(() => {
|
|
@@ -1431,14 +1431,15 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1431
1431
|
return;
|
|
1432
1432
|
}
|
|
1433
1433
|
const trusted = await this._trust();
|
|
1434
|
-
|
|
1434
|
+
const isRemoteTerminal = !!this.remoteAuthority;
|
|
1435
|
+
if (!trusted && !(isRemoteTerminal && this._workbenchEnvironmentService.remoteAuthority)) {
|
|
1435
1436
|
this._onProcessExit({
|
|
1436
|
-
message: ( localize(
|
|
1437
|
+
message: ( localize(14009, "Cannot launch a terminal process in an untrusted workspace"))
|
|
1437
1438
|
});
|
|
1438
1439
|
} else if (this._workspaceContextService.getWorkspace().folders.length === 0 && this._cwd && this._userHome && normalizeDriveLetter(this._cwd) !== normalizeDriveLetter(this._userHome)) {
|
|
1439
1440
|
this._onProcessExit({
|
|
1440
1441
|
message: ( localize(
|
|
1441
|
-
|
|
1442
|
+
14010,
|
|
1442
1443
|
"Cannot launch a terminal process in an empty workspace with cwd {0} different from userHome {1}",
|
|
1443
1444
|
this._cwd,
|
|
1444
1445
|
this._userHome
|
|
@@ -1524,7 +1525,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1524
1525
|
});
|
|
1525
1526
|
}
|
|
1526
1527
|
async _onProcessExit(exitCodeOrError) {
|
|
1527
|
-
if (this._isExiting) {
|
|
1528
|
+
if (this._isExiting || this.isDisposed) {
|
|
1528
1529
|
return;
|
|
1529
1530
|
}
|
|
1530
1531
|
const parsedExitResult = parseExitResult(
|
|
@@ -1608,10 +1609,10 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1608
1609
|
id: TerminalStatus.ShellIntegrationAttentionNeeded,
|
|
1609
1610
|
severity: Severity.Warning,
|
|
1610
1611
|
icon: Codicon.warning,
|
|
1611
|
-
tooltip: `${exitMessage} ` + ( localize(
|
|
1612
|
+
tooltip: `${exitMessage} ` + ( localize(14011, "Disabling shell integration in user settings might help.")),
|
|
1612
1613
|
hoverActions: [{
|
|
1613
1614
|
commandId: TerminalCommandId.ShellIntegrationLearnMore,
|
|
1614
|
-
label: ( localize(
|
|
1615
|
+
label: ( localize(14012, "Learn more about shell integration")),
|
|
1615
1616
|
run: () => {
|
|
1616
1617
|
this._openerService.open(
|
|
1617
1618
|
"https://code.visualstudio.com/docs/editor/integrated-terminal#_shell-integration"
|
|
@@ -1619,7 +1620,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1619
1620
|
}
|
|
1620
1621
|
}, {
|
|
1621
1622
|
commandId: "workbench.action.openSettings",
|
|
1622
|
-
label: ( localize(
|
|
1623
|
+
label: ( localize(14013, "Open user settings")),
|
|
1623
1624
|
run: () => {
|
|
1624
1625
|
this._commandService.executeCommand(
|
|
1625
1626
|
"workbench.action.openSettings",
|
|
@@ -1753,7 +1754,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1753
1754
|
return true;
|
|
1754
1755
|
}
|
|
1755
1756
|
const trustRequest = await this._workspaceTrustRequestService.requestWorkspaceTrust({
|
|
1756
|
-
message: ( localize(
|
|
1757
|
+
message: ( localize(14014, "Creating a terminal process requires executing code"))
|
|
1757
1758
|
});
|
|
1758
1759
|
return trustRequest === true;
|
|
1759
1760
|
}
|
|
@@ -1881,21 +1882,21 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1881
1882
|
const labelParts = [];
|
|
1882
1883
|
if (xterm && xterm.textarea) {
|
|
1883
1884
|
if (title && title.length > 0) {
|
|
1884
|
-
labelParts.push(( localize(
|
|
1885
|
+
labelParts.push(( localize(14015, "Terminal {0}, {1}", terminalId, title)));
|
|
1885
1886
|
} else {
|
|
1886
|
-
labelParts.push(( localize(
|
|
1887
|
+
labelParts.push(( localize(14016, "Terminal {0}", terminalId)));
|
|
1887
1888
|
}
|
|
1888
1889
|
const screenReaderOptimized = this._accessibilityService.isScreenReaderOptimized();
|
|
1889
1890
|
if (!screenReaderOptimized) {
|
|
1890
1891
|
labelParts.push(( localize(
|
|
1891
|
-
|
|
1892
|
+
14017,
|
|
1892
1893
|
"Run the command: Toggle Screen Reader Accessibility Mode for an optimized screen reader experience"
|
|
1893
1894
|
)));
|
|
1894
1895
|
}
|
|
1895
1896
|
const accessibilityHelpKeybinding = this._keybindingService.lookupKeybinding(AccessibilityCommandId.OpenAccessibilityHelp)?.getLabel();
|
|
1896
1897
|
if (this._configurationService.getValue(AccessibilityVerbositySettingId.Terminal) && accessibilityHelpKeybinding) {
|
|
1897
1898
|
labelParts.push(( localize(
|
|
1898
|
-
|
|
1899
|
+
14018,
|
|
1899
1900
|
"Use {0} for terminal accessibility help",
|
|
1900
1901
|
accessibilityHelpKeybinding
|
|
1901
1902
|
)));
|
|
@@ -1949,7 +1950,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1949
1950
|
}
|
|
1950
1951
|
async setFixedDimensions() {
|
|
1951
1952
|
const cols = await this._quickInputService.input({
|
|
1952
|
-
title: ( localize(
|
|
1953
|
+
title: ( localize(14019, "Set Fixed Dimensions: Column")),
|
|
1953
1954
|
placeHolder: "Enter a number of columns or leave empty for automatic width",
|
|
1954
1955
|
validateInput: async text => text.length > 0 && !text.match(/^\d+$/) ? {
|
|
1955
1956
|
content: "Enter a number or leave empty size automatically",
|
|
@@ -1963,7 +1964,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
1963
1964
|
this._labelComputer?.refreshLabel(this);
|
|
1964
1965
|
this._terminalHasFixedWidth.set(!!this._fixedCols);
|
|
1965
1966
|
const rows = await this._quickInputService.input({
|
|
1966
|
-
title: ( localize(
|
|
1967
|
+
title: ( localize(14020, "Set Fixed Dimensions: Row")),
|
|
1967
1968
|
placeHolder: "Enter a number of rows or leave empty for automatic height",
|
|
1968
1969
|
validateInput: async text => text.length > 0 && !text.match(/^\d+$/) ? {
|
|
1969
1970
|
content: "Enter a number or leave empty size automatically",
|
|
@@ -2073,7 +2074,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
2073
2074
|
_onEnvironmentVariableInfoChanged(info) {
|
|
2074
2075
|
if (info.requiresAction) {
|
|
2075
2076
|
this.xterm?.raw.textarea?.setAttribute("aria-label", ( localize(
|
|
2076
|
-
|
|
2077
|
+
14021,
|
|
2077
2078
|
"Terminal {0} environment is stale, run the 'Show Environment Information' command for more information",
|
|
2078
2079
|
this._instanceId
|
|
2079
2080
|
)));
|
|
@@ -2229,7 +2230,7 @@ let TerminalInstance = class TerminalInstance extends Disposable {
|
|
|
2229
2230
|
disposables.push(quickPick);
|
|
2230
2231
|
quickPick.items = items;
|
|
2231
2232
|
quickPick.matchOnDescription = true;
|
|
2232
|
-
quickPick.placeholder = ( localize(
|
|
2233
|
+
quickPick.placeholder = ( localize(14022, "Select a color for the terminal"));
|
|
2233
2234
|
quickPick.show();
|
|
2234
2235
|
const result = await ( new Promise(r => {
|
|
2235
2236
|
disposables.push(quickPick.onDidHide(() => r(undefined)));
|
|
@@ -2566,24 +2567,24 @@ function parseExitResult(exitCodeOrError, shellLaunchConfig, processState, initi
|
|
|
2566
2567
|
if (processState === ProcessState.KilledDuringLaunch) {
|
|
2567
2568
|
if (commandLine) {
|
|
2568
2569
|
message = ( localize(
|
|
2569
|
-
|
|
2570
|
+
14023,
|
|
2570
2571
|
"The terminal process \"{0}\" failed to launch (exit code: {1}).",
|
|
2571
2572
|
commandLine,
|
|
2572
2573
|
code
|
|
2573
2574
|
));
|
|
2574
2575
|
} else {
|
|
2575
|
-
message = ( localize(
|
|
2576
|
+
message = ( localize(14024, "The terminal process failed to launch (exit code: {0}).", code));
|
|
2576
2577
|
}
|
|
2577
2578
|
} else {
|
|
2578
2579
|
if (commandLine) {
|
|
2579
2580
|
message = ( localize(
|
|
2580
|
-
|
|
2581
|
+
14025,
|
|
2581
2582
|
"The terminal process \"{0}\" terminated with exit code: {1}.",
|
|
2582
2583
|
commandLine,
|
|
2583
2584
|
code
|
|
2584
2585
|
));
|
|
2585
2586
|
} else {
|
|
2586
|
-
message = ( localize(
|
|
2587
|
+
message = ( localize(14026, "The terminal process terminated with exit code: {0}.", code));
|
|
2587
2588
|
}
|
|
2588
2589
|
}
|
|
2589
2590
|
break;
|
|
@@ -2609,7 +2610,7 @@ function parseExitResult(exitCodeOrError, shellLaunchConfig, processState, initi
|
|
|
2609
2610
|
break;
|
|
2610
2611
|
}
|
|
2611
2612
|
}
|
|
2612
|
-
message = ( localize(
|
|
2613
|
+
message = ( localize(14027, "The terminal process failed to launch: {0}.", innerMessage));
|
|
2613
2614
|
break;
|
|
2614
2615
|
}
|
|
2615
2616
|
}
|
|
@@ -202,7 +202,7 @@ let TerminalProcessManager = class TerminalProcessManager extends Disposable {
|
|
|
202
202
|
} catch (e) {
|
|
203
203
|
this._notificationService.notify({
|
|
204
204
|
message: ( localize(
|
|
205
|
-
|
|
205
|
+
14058,
|
|
206
206
|
"Could not kill process listening on port {0}, command exited with error {1}",
|
|
207
207
|
port,
|
|
208
208
|
e
|
|
@@ -538,7 +538,7 @@ let TerminalProcessManager = class TerminalProcessManager extends Disposable {
|
|
|
538
538
|
this._onExit(-1);
|
|
539
539
|
} else {
|
|
540
540
|
const message = ( localize(
|
|
541
|
-
|
|
541
|
+
14059,
|
|
542
542
|
"Restarting the terminal because the connection to the shell process was lost..."
|
|
543
543
|
));
|
|
544
544
|
let postRestartMessage = "";
|
|
@@ -435,7 +435,7 @@ let TerminalTabsRenderer = class TerminalTabsRenderer {
|
|
|
435
435
|
};
|
|
436
436
|
}
|
|
437
437
|
},
|
|
438
|
-
ariaLabel: ( localize(
|
|
438
|
+
ariaLabel: ( localize(14086, "Type terminal name. Press Enter to confirm or Escape to cancel.")),
|
|
439
439
|
inputBoxStyles: defaultInputBoxStyles
|
|
440
440
|
}));
|
|
441
441
|
inputBox.element.style.height = "22px";
|
|
@@ -566,7 +566,7 @@ let TerminalTabsAccessibilityProvider = class TerminalTabsAccessibilityProvider
|
|
|
566
566
|
this._terminalGroupService = _terminalGroupService;
|
|
567
567
|
}
|
|
568
568
|
getWidgetAriaLabel() {
|
|
569
|
-
return localize(
|
|
569
|
+
return localize(14087, "Terminal tabs");
|
|
570
570
|
}
|
|
571
571
|
getAriaLabel(instance) {
|
|
572
572
|
let ariaLabel = "";
|
|
@@ -574,7 +574,7 @@ let TerminalTabsAccessibilityProvider = class TerminalTabsAccessibilityProvider
|
|
|
574
574
|
if (tab && tab.terminalInstances?.length > 1) {
|
|
575
575
|
const terminalIndex = tab.terminalInstances.indexOf(instance);
|
|
576
576
|
ariaLabel = ( localize(
|
|
577
|
-
|
|
577
|
+
14088,
|
|
578
578
|
"Terminal {0} {1}, split {2} of {3}",
|
|
579
579
|
instance.instanceId,
|
|
580
580
|
instance.title,
|
|
@@ -582,7 +582,7 @@ let TerminalTabsAccessibilityProvider = class TerminalTabsAccessibilityProvider
|
|
|
582
582
|
tab.terminalInstances.length
|
|
583
583
|
));
|
|
584
584
|
} else {
|
|
585
|
-
ariaLabel = ( localize(
|
|
585
|
+
ariaLabel = ( localize(14089, "Terminal {0} {1}", instance.instanceId, instance.title));
|
|
586
586
|
}
|
|
587
587
|
return ariaLabel;
|
|
588
588
|
}
|
|
@@ -770,7 +770,7 @@ let TabDecorationsProvider = class TabDecorationsProvider extends Disposable {
|
|
|
770
770
|
constructor(_terminalService) {
|
|
771
771
|
super();
|
|
772
772
|
this._terminalService = _terminalService;
|
|
773
|
-
this.label = ( localize(
|
|
773
|
+
this.label = ( localize(14090, "Terminal"));
|
|
774
774
|
this._onDidChange = this._register(( new Emitter()));
|
|
775
775
|
this.onDidChange = this._onDidChange.event;
|
|
776
776
|
this._register(
|
|
@@ -29,7 +29,7 @@ function getInstanceHoverInfo(instance, storageService) {
|
|
|
29
29
|
}
|
|
30
30
|
actions.push({
|
|
31
31
|
commandId: "toggleDetailedInfo",
|
|
32
|
-
label: showDetailed ? ( localize(
|
|
32
|
+
label: showDetailed ? ( localize(14091, "Hide Details")) : ( localize(14092, "Show Details")),
|
|
33
33
|
run() {
|
|
34
34
|
storageService.store(
|
|
35
35
|
TerminalStorageKeys.TabsShowDetailed,
|
|
@@ -51,7 +51,7 @@ function getInstanceHoverInfo(instance, storageService) {
|
|
|
51
51
|
function getShellProcessTooltip(instance, showDetailed) {
|
|
52
52
|
const lines = [];
|
|
53
53
|
if (instance.processId && instance.processId > 0) {
|
|
54
|
-
lines.push(( localize(
|
|
54
|
+
lines.push(( localize(14093, "Process ID ({0}): {1}", "PID", instance.processId)) + "\n");
|
|
55
55
|
}
|
|
56
56
|
if (instance.shellLaunchConfig.executable) {
|
|
57
57
|
let commandLine = "";
|
|
@@ -67,7 +67,7 @@ function getShellProcessTooltip(instance, showDetailed) {
|
|
|
67
67
|
if (args) {
|
|
68
68
|
commandLine += ` ${args}`;
|
|
69
69
|
}
|
|
70
|
-
lines.push(( localize(
|
|
70
|
+
lines.push(( localize(14094, "Command line: {0}", commandLine)));
|
|
71
71
|
}
|
|
72
72
|
return lines.length ? `\n\n---\n\n${lines.join("\n")}` : "";
|
|
73
73
|
}
|
|
@@ -3,7 +3,7 @@ import { localize } from '@codingame/monaco-vscode-api/vscode/vs/nls';
|
|
|
3
3
|
import { registerColor } from '@codingame/monaco-vscode-api/vscode/vs/platform/theme/common/colorUtils';
|
|
4
4
|
|
|
5
5
|
const terminalStickyScrollBackground = registerColor("terminalStickyScroll.background", null, ( localize(
|
|
6
|
-
|
|
6
|
+
14811,
|
|
7
7
|
"The background color of the sticky scroll overlay in the terminal."
|
|
8
8
|
)));
|
|
9
9
|
const terminalStickyScrollHoverBackground = registerColor("terminalStickyScrollHover.background", {
|
|
@@ -12,7 +12,7 @@ const terminalStickyScrollHoverBackground = registerColor("terminalStickyScrollH
|
|
|
12
12
|
hcDark: "#E48B39",
|
|
13
13
|
hcLight: "#0f4a85"
|
|
14
14
|
}, ( localize(
|
|
15
|
-
|
|
15
|
+
14812,
|
|
16
16
|
"The background color of the sticky scroll overlay in the terminal when hovered."
|
|
17
17
|
)));
|
|
18
18
|
registerColor("terminalStickyScroll.border", {
|
|
@@ -20,6 +20,6 @@ registerColor("terminalStickyScroll.border", {
|
|
|
20
20
|
light: null,
|
|
21
21
|
hcDark: "#6fc3df",
|
|
22
22
|
hcLight: "#0f4a85"
|
|
23
|
-
}, ( localize(
|
|
23
|
+
}, ( localize(14813, "The border of the sticky scroll overlay in the terminal.")));
|
|
24
24
|
|
|
25
25
|
export { terminalStickyScrollBackground, terminalStickyScrollHoverBackground };
|
|
@@ -304,19 +304,19 @@ let TerminalStickyScrollOverlay = class TerminalStickyScrollOverlay extends Disp
|
|
|
304
304
|
this._element = $(".terminal-sticky-scroll", undefined, hoverOverlay);
|
|
305
305
|
this._xterm.raw.element.parentElement.append(this._element);
|
|
306
306
|
this._register(toDisposable(() => this._element?.remove()));
|
|
307
|
-
let hoverTitle = ( localize(
|
|
307
|
+
let hoverTitle = ( localize(14814, "Navigate to Command"));
|
|
308
308
|
const scrollToPreviousCommandKeybinding = this._keybindingService.lookupKeybinding(TerminalCommandId.ScrollToPreviousCommand);
|
|
309
309
|
if (scrollToPreviousCommandKeybinding) {
|
|
310
310
|
const label = scrollToPreviousCommandKeybinding.getLabel();
|
|
311
311
|
if (label) {
|
|
312
|
-
hoverTitle += "\n" + ( localize(
|
|
312
|
+
hoverTitle += "\n" + ( localize(14815, "{0} ({1})", terminalStrings.scrollToPreviousCommand.value, label));
|
|
313
313
|
}
|
|
314
314
|
}
|
|
315
315
|
const scrollToNextCommandKeybinding = this._keybindingService.lookupKeybinding(TerminalCommandId.ScrollToNextCommand);
|
|
316
316
|
if (scrollToNextCommandKeybinding) {
|
|
317
317
|
const label = scrollToNextCommandKeybinding.getLabel();
|
|
318
318
|
if (label) {
|
|
319
|
-
hoverTitle += "\n" + ( localize(
|
|
319
|
+
hoverTitle += "\n" + ( localize(14815, "{0} ({1})", terminalStrings.scrollToNextCommand.value, label));
|
|
320
320
|
}
|
|
321
321
|
}
|
|
322
322
|
hoverOverlay.title = hoverTitle;
|