@codingame/monaco-vscode-xterm-common 36.2.7 → 37.2.0
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/agentHostOutputChannel.d.ts +22 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostOutputChannel.js +48 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.d.ts +17 -5
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostPty.js +173 -63
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.d.ts +13 -3
- package/vscode/src/vs/workbench/contrib/terminal/browser/agentHostTerminalService.js +119 -56
- 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.d.ts +6 -2
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalInstance.js +71 -49
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.d.ts +1 -0
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalProcessManager.js +9 -7
- 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/common/notifications.d.ts +0 -51
- package/vscode/src/vs/platform/agentHost/common/state/protocol/common/notifications.js +0 -9
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.d.ts +0 -78
- package/vscode/src/vs/workbench/contrib/terminalContrib/chat/browser/terminalChat.js +0 -83
|
@@ -63,7 +63,7 @@ import { ResourceContextKey } from '@codingame/monaco-vscode-api/vscode/vs/workb
|
|
|
63
63
|
import { SeparatorSelectOption } from '@codingame/monaco-vscode-api/vscode/vs/base/browser/ui/selectBox/selectBox';
|
|
64
64
|
import Severity from '@codingame/monaco-vscode-api/vscode/vs/base/common/severity';
|
|
65
65
|
|
|
66
|
-
const switchTerminalShowTabsTitle = ( localize(
|
|
66
|
+
const switchTerminalShowTabsTitle = ( localize(16820, "Show Tabs"));
|
|
67
67
|
const category = terminalStrings.actionCategory;
|
|
68
68
|
const sharedWhenClause = (() => {
|
|
69
69
|
const terminalAvailable = ( ContextKeyExpr.or(
|
|
@@ -86,7 +86,7 @@ async function getCwdForSplit(instance, folders, commandService, configService)
|
|
|
86
86
|
return folders[0].uri;
|
|
87
87
|
} else if (folders.length > 1) {
|
|
88
88
|
const options = {
|
|
89
|
-
placeHolder: ( localize(
|
|
89
|
+
placeHolder: ( localize(16821, "Select current working directory for new terminal"))
|
|
90
90
|
};
|
|
91
91
|
const workspace = await commandService.executeCommand(PICK_WORKSPACE_FOLDER_COMMAND_ID, [options]);
|
|
92
92
|
if (!workspace) {
|
|
@@ -104,7 +104,7 @@ async function getCwdForSplit(instance, folders, commandService, configService)
|
|
|
104
104
|
}
|
|
105
105
|
let TerminalLaunchHelpAction = class TerminalLaunchHelpAction extends Action {
|
|
106
106
|
constructor(_openerService) {
|
|
107
|
-
super("workbench.action.terminal.launchHelp", ( localize(
|
|
107
|
+
super("workbench.action.terminal.launchHelp", ( localize(16822, "Open Help")));
|
|
108
108
|
this._openerService = _openerService;
|
|
109
109
|
}
|
|
110
110
|
async run() {
|
|
@@ -205,7 +205,7 @@ function getTerminalServices(accessor) {
|
|
|
205
205
|
function registerTerminalActions() {
|
|
206
206
|
registerTerminalAction({
|
|
207
207
|
id: TerminalCommandId.NewInActiveWorkspace,
|
|
208
|
-
title: ( localize2(
|
|
208
|
+
title: ( localize2(16823, "Create New Terminal (In Active Workspace)")),
|
|
209
209
|
run: async c => {
|
|
210
210
|
if (c.service.isProcessSupportRegistered) {
|
|
211
211
|
const instance = await c.service.createTerminal({
|
|
@@ -222,7 +222,7 @@ function registerTerminalActions() {
|
|
|
222
222
|
refreshTerminalActions([]);
|
|
223
223
|
registerTerminalAction({
|
|
224
224
|
id: TerminalCommandId.CreateTerminalEditor,
|
|
225
|
-
title: ( localize2(
|
|
225
|
+
title: ( localize2(16824, "Create New Terminal in Editor Area")),
|
|
226
226
|
run: async (c, _, args) => {
|
|
227
227
|
function isCreateTerminalOptions(obj) {
|
|
228
228
|
return isObject(obj) && "location" in obj;
|
|
@@ -238,7 +238,7 @@ function registerTerminalActions() {
|
|
|
238
238
|
});
|
|
239
239
|
registerTerminalAction({
|
|
240
240
|
id: TerminalCommandId.CreateTerminalEditorSameGroup,
|
|
241
|
-
title: ( localize2(
|
|
241
|
+
title: ( localize2(16824, "Create New Terminal in Editor Area")),
|
|
242
242
|
f1: false,
|
|
243
243
|
run: async (c, accessor, args) => {
|
|
244
244
|
const editorGroupsService = accessor.get(IEditorGroupsService);
|
|
@@ -252,7 +252,7 @@ function registerTerminalActions() {
|
|
|
252
252
|
});
|
|
253
253
|
registerTerminalAction({
|
|
254
254
|
id: TerminalCommandId.CreateTerminalEditorSide,
|
|
255
|
-
title: ( localize2(
|
|
255
|
+
title: ( localize2(16825, "Create New Terminal in Editor Area to the Side")),
|
|
256
256
|
run: async c => {
|
|
257
257
|
const instance = await c.service.createTerminal({
|
|
258
258
|
location: {
|
|
@@ -313,7 +313,7 @@ function registerTerminalActions() {
|
|
|
313
313
|
});
|
|
314
314
|
registerTerminalAction({
|
|
315
315
|
id: TerminalCommandId.FocusPreviousPane,
|
|
316
|
-
title: ( localize2(
|
|
316
|
+
title: ( localize2(16826, "Focus Previous Terminal in Terminal Group")),
|
|
317
317
|
keybinding: {
|
|
318
318
|
primary: KeyMod.Alt | KeyCode.LeftArrow,
|
|
319
319
|
secondary: [KeyMod.Alt | KeyCode.UpArrow],
|
|
@@ -332,7 +332,7 @@ function registerTerminalActions() {
|
|
|
332
332
|
});
|
|
333
333
|
registerTerminalAction({
|
|
334
334
|
id: TerminalCommandId.FocusNextPane,
|
|
335
|
-
title: ( localize2(
|
|
335
|
+
title: ( localize2(16827, "Focus Next Terminal in Terminal Group")),
|
|
336
336
|
keybinding: {
|
|
337
337
|
primary: KeyMod.Alt | KeyCode.RightArrow,
|
|
338
338
|
secondary: [KeyMod.Alt | KeyCode.DownArrow],
|
|
@@ -351,7 +351,7 @@ function registerTerminalActions() {
|
|
|
351
351
|
});
|
|
352
352
|
registerTerminalAction({
|
|
353
353
|
id: TerminalCommandId.ResizePaneLeft,
|
|
354
|
-
title: ( localize2(
|
|
354
|
+
title: ( localize2(16828, "Resize Terminal Left")),
|
|
355
355
|
keybinding: {
|
|
356
356
|
linux: {
|
|
357
357
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.LeftArrow
|
|
@@ -367,7 +367,7 @@ function registerTerminalActions() {
|
|
|
367
367
|
});
|
|
368
368
|
registerTerminalAction({
|
|
369
369
|
id: TerminalCommandId.ResizePaneRight,
|
|
370
|
-
title: ( localize2(
|
|
370
|
+
title: ( localize2(16829, "Resize Terminal Right")),
|
|
371
371
|
keybinding: {
|
|
372
372
|
linux: {
|
|
373
373
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.RightArrow
|
|
@@ -383,7 +383,7 @@ function registerTerminalActions() {
|
|
|
383
383
|
});
|
|
384
384
|
registerTerminalAction({
|
|
385
385
|
id: TerminalCommandId.ResizePaneUp,
|
|
386
|
-
title: ( localize2(
|
|
386
|
+
title: ( localize2(16830, "Resize Terminal Up")),
|
|
387
387
|
keybinding: {
|
|
388
388
|
mac: {
|
|
389
389
|
primary: KeyMod.CtrlCmd | KeyMod.WinCtrl | KeyCode.UpArrow
|
|
@@ -396,7 +396,7 @@ function registerTerminalActions() {
|
|
|
396
396
|
});
|
|
397
397
|
registerTerminalAction({
|
|
398
398
|
id: TerminalCommandId.ResizePaneDown,
|
|
399
|
-
title: ( localize2(
|
|
399
|
+
title: ( localize2(16831, "Resize Terminal Down")),
|
|
400
400
|
keybinding: {
|
|
401
401
|
mac: {
|
|
402
402
|
primary: KeyMod.CtrlCmd | KeyMod.WinCtrl | KeyCode.DownArrow
|
|
@@ -433,7 +433,7 @@ function registerTerminalActions() {
|
|
|
433
433
|
});
|
|
434
434
|
registerTerminalAction({
|
|
435
435
|
id: TerminalCommandId.FocusTabs,
|
|
436
|
-
title: ( localize2(
|
|
436
|
+
title: ( localize2(16832, "Focus Terminal Tabs View")),
|
|
437
437
|
keybinding: {
|
|
438
438
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.Backslash,
|
|
439
439
|
weight: KeybindingWeight.WorkbenchContrib,
|
|
@@ -444,7 +444,7 @@ function registerTerminalActions() {
|
|
|
444
444
|
});
|
|
445
445
|
registerTerminalAction({
|
|
446
446
|
id: TerminalCommandId.FocusNext,
|
|
447
|
-
title: ( localize2(
|
|
447
|
+
title: ( localize2(16833, "Focus Next Terminal Group")),
|
|
448
448
|
precondition: sharedWhenClause.terminalAvailable,
|
|
449
449
|
keybinding: {
|
|
450
450
|
primary: KeyMod.CtrlCmd | KeyCode.PageDown,
|
|
@@ -461,7 +461,7 @@ function registerTerminalActions() {
|
|
|
461
461
|
});
|
|
462
462
|
registerTerminalAction({
|
|
463
463
|
id: TerminalCommandId.FocusPrevious,
|
|
464
|
-
title: ( localize2(
|
|
464
|
+
title: ( localize2(16834, "Focus Previous Terminal Group")),
|
|
465
465
|
precondition: sharedWhenClause.terminalAvailable,
|
|
466
466
|
keybinding: {
|
|
467
467
|
primary: KeyMod.CtrlCmd | KeyCode.PageUp,
|
|
@@ -478,7 +478,7 @@ function registerTerminalActions() {
|
|
|
478
478
|
});
|
|
479
479
|
registerTerminalAction({
|
|
480
480
|
id: TerminalCommandId.RunSelectedText,
|
|
481
|
-
title: ( localize2(
|
|
481
|
+
title: ( localize2(16835, "Run Selected Text In Active Terminal")),
|
|
482
482
|
run: async (c, accessor) => {
|
|
483
483
|
const codeEditorService = accessor.get(ICodeEditorService);
|
|
484
484
|
const editor = codeEditorService.getActiveCodeEditor();
|
|
@@ -502,7 +502,7 @@ function registerTerminalActions() {
|
|
|
502
502
|
});
|
|
503
503
|
registerTerminalAction({
|
|
504
504
|
id: TerminalCommandId.RunActiveFile,
|
|
505
|
-
title: ( localize2(
|
|
505
|
+
title: ( localize2(16836, "Run Active File In Active Terminal")),
|
|
506
506
|
precondition: sharedWhenClause.terminalAvailable,
|
|
507
507
|
run: async (c, accessor) => {
|
|
508
508
|
const codeEditorService = accessor.get(ICodeEditorService);
|
|
@@ -518,7 +518,7 @@ function registerTerminalActions() {
|
|
|
518
518
|
const isRemote = instance ? instance.hasRemoteAuthority : (workbenchEnvironmentService.remoteAuthority ? true : false);
|
|
519
519
|
const uri = editor.getModel().uri;
|
|
520
520
|
if ((!isRemote && uri.scheme !== Schemas.file && uri.scheme !== Schemas.vscodeUserData) || (isRemote && uri.scheme !== Schemas.vscodeRemote)) {
|
|
521
|
-
notificationService.warn(( localize(
|
|
521
|
+
notificationService.warn(( localize(16837, "Only files on disk can be run in the terminal")));
|
|
522
522
|
return;
|
|
523
523
|
}
|
|
524
524
|
await instance.sendPath(uri, true);
|
|
@@ -527,7 +527,7 @@ function registerTerminalActions() {
|
|
|
527
527
|
});
|
|
528
528
|
registerActiveXtermAction({
|
|
529
529
|
id: TerminalCommandId.ScrollDownLine,
|
|
530
|
-
title: ( localize2(
|
|
530
|
+
title: ( localize2(16838, "Scroll Down (Line)")),
|
|
531
531
|
keybinding: {
|
|
532
532
|
primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageDown,
|
|
533
533
|
linux: {
|
|
@@ -541,7 +541,7 @@ function registerTerminalActions() {
|
|
|
541
541
|
});
|
|
542
542
|
registerActiveXtermAction({
|
|
543
543
|
id: TerminalCommandId.ScrollDownPage,
|
|
544
|
-
title: ( localize2(
|
|
544
|
+
title: ( localize2(16839, "Scroll Down (Page)")),
|
|
545
545
|
keybinding: {
|
|
546
546
|
primary: KeyMod.Shift | KeyCode.PageDown,
|
|
547
547
|
mac: {
|
|
@@ -555,7 +555,7 @@ function registerTerminalActions() {
|
|
|
555
555
|
});
|
|
556
556
|
registerActiveXtermAction({
|
|
557
557
|
id: TerminalCommandId.ScrollToBottom,
|
|
558
|
-
title: ( localize2(
|
|
558
|
+
title: ( localize2(16840, "Scroll to Bottom")),
|
|
559
559
|
keybinding: {
|
|
560
560
|
primary: KeyMod.CtrlCmd | KeyCode.End,
|
|
561
561
|
linux: {
|
|
@@ -569,7 +569,7 @@ function registerTerminalActions() {
|
|
|
569
569
|
});
|
|
570
570
|
registerActiveXtermAction({
|
|
571
571
|
id: TerminalCommandId.ScrollUpLine,
|
|
572
|
-
title: ( localize2(
|
|
572
|
+
title: ( localize2(16841, "Scroll Up (Line)")),
|
|
573
573
|
keybinding: {
|
|
574
574
|
primary: KeyMod.CtrlCmd | KeyMod.Alt | KeyCode.PageUp,
|
|
575
575
|
linux: {
|
|
@@ -583,7 +583,7 @@ function registerTerminalActions() {
|
|
|
583
583
|
});
|
|
584
584
|
registerActiveXtermAction({
|
|
585
585
|
id: TerminalCommandId.ScrollUpPage,
|
|
586
|
-
title: ( localize2(
|
|
586
|
+
title: ( localize2(16842, "Scroll Up (Page)")),
|
|
587
587
|
f1: true,
|
|
588
588
|
keybinding: {
|
|
589
589
|
primary: KeyMod.Shift | KeyCode.PageUp,
|
|
@@ -598,7 +598,7 @@ function registerTerminalActions() {
|
|
|
598
598
|
});
|
|
599
599
|
registerActiveXtermAction({
|
|
600
600
|
id: TerminalCommandId.ScrollToTop,
|
|
601
|
-
title: ( localize2(
|
|
601
|
+
title: ( localize2(16843, "Scroll to Top")),
|
|
602
602
|
keybinding: {
|
|
603
603
|
primary: KeyMod.CtrlCmd | KeyCode.Home,
|
|
604
604
|
linux: {
|
|
@@ -612,7 +612,7 @@ function registerTerminalActions() {
|
|
|
612
612
|
});
|
|
613
613
|
registerActiveXtermAction({
|
|
614
614
|
id: TerminalCommandId.ClearSelection,
|
|
615
|
-
title: ( localize2(
|
|
615
|
+
title: ( localize2(16844, "Clear Selection")),
|
|
616
616
|
keybinding: {
|
|
617
617
|
primary: KeyCode.Escape,
|
|
618
618
|
when: ( ContextKeyExpr.and(
|
|
@@ -731,12 +731,12 @@ function registerTerminalActions() {
|
|
|
731
731
|
});
|
|
732
732
|
registerActiveInstanceAction({
|
|
733
733
|
id: TerminalCommandId.DetachSession,
|
|
734
|
-
title: ( localize2(
|
|
734
|
+
title: ( localize2(16845, "Detach Session")),
|
|
735
735
|
run: activeInstance => activeInstance.detachProcessAndDispose(TerminalExitReason.User)
|
|
736
736
|
});
|
|
737
737
|
registerTerminalAction({
|
|
738
738
|
id: TerminalCommandId.AttachToSession,
|
|
739
|
-
title: ( localize2(
|
|
739
|
+
title: ( localize2(16846, "Attach to Session")),
|
|
740
740
|
run: async (c, accessor) => {
|
|
741
741
|
const quickInputService = accessor.get(IQuickInputService);
|
|
742
742
|
const labelService = accessor.get(ILabelService);
|
|
@@ -760,7 +760,7 @@ function registerTerminalActions() {
|
|
|
760
760
|
};
|
|
761
761
|
}));
|
|
762
762
|
if (items.length === 0) {
|
|
763
|
-
notificationService.info(( localize(
|
|
763
|
+
notificationService.info(( localize(16847, "There are no unattached terminals to attach to")));
|
|
764
764
|
return;
|
|
765
765
|
}
|
|
766
766
|
const selected = await quickInputService.pick(items, {
|
|
@@ -832,7 +832,7 @@ function registerTerminalActions() {
|
|
|
832
832
|
});
|
|
833
833
|
registerActiveInstanceAction({
|
|
834
834
|
id: TerminalCommandId.SelectToPreviousCommand,
|
|
835
|
-
title: ( localize2(
|
|
835
|
+
title: ( localize2(16848, "Select to Previous Command")),
|
|
836
836
|
keybinding: {
|
|
837
837
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.UpArrow,
|
|
838
838
|
when: TerminalContextKeys.focus,
|
|
@@ -846,7 +846,7 @@ function registerTerminalActions() {
|
|
|
846
846
|
});
|
|
847
847
|
registerActiveInstanceAction({
|
|
848
848
|
id: TerminalCommandId.SelectToNextCommand,
|
|
849
|
-
title: ( localize2(
|
|
849
|
+
title: ( localize2(16849, "Select to Next Command")),
|
|
850
850
|
keybinding: {
|
|
851
851
|
primary: KeyMod.CtrlCmd | KeyMod.Shift | KeyCode.DownArrow,
|
|
852
852
|
when: TerminalContextKeys.focus,
|
|
@@ -860,7 +860,7 @@ function registerTerminalActions() {
|
|
|
860
860
|
});
|
|
861
861
|
registerActiveXtermAction({
|
|
862
862
|
id: TerminalCommandId.SelectToPreviousLine,
|
|
863
|
-
title: ( localize2(
|
|
863
|
+
title: ( localize2(16850, "Select to Previous Line")),
|
|
864
864
|
precondition: sharedWhenClause.terminalAvailable,
|
|
865
865
|
run: async (xterm, _, instance) => {
|
|
866
866
|
xterm.markTracker.selectToPreviousLine();
|
|
@@ -869,7 +869,7 @@ function registerTerminalActions() {
|
|
|
869
869
|
});
|
|
870
870
|
registerActiveXtermAction({
|
|
871
871
|
id: TerminalCommandId.SelectToNextLine,
|
|
872
|
-
title: ( localize2(
|
|
872
|
+
title: ( localize2(16851, "Select to Next Line")),
|
|
873
873
|
precondition: sharedWhenClause.terminalAvailable,
|
|
874
874
|
run: async (xterm, _, instance) => {
|
|
875
875
|
xterm.markTracker.selectToNextLine();
|
|
@@ -888,7 +888,7 @@ function registerTerminalActions() {
|
|
|
888
888
|
required: ["cwd"],
|
|
889
889
|
properties: {
|
|
890
890
|
cwd: {
|
|
891
|
-
description: ( localize(
|
|
891
|
+
description: ( localize(16852, "The directory to start the terminal at")),
|
|
892
892
|
type: "string"
|
|
893
893
|
}
|
|
894
894
|
}
|
|
@@ -919,7 +919,7 @@ function registerTerminalActions() {
|
|
|
919
919
|
required: ["name"],
|
|
920
920
|
properties: {
|
|
921
921
|
name: {
|
|
922
|
-
description: ( localize(
|
|
922
|
+
description: ( localize(16853, "The new name for the terminal")),
|
|
923
923
|
type: "string",
|
|
924
924
|
minLength: 1
|
|
925
925
|
}
|
|
@@ -933,7 +933,7 @@ function registerTerminalActions() {
|
|
|
933
933
|
const notificationService = accessor.get(INotificationService);
|
|
934
934
|
const name = args ? toOptionalString(args.name) : undefined;
|
|
935
935
|
if (!name) {
|
|
936
|
-
notificationService.warn(( localize(
|
|
936
|
+
notificationService.warn(( localize(16854, "No name argument provided")));
|
|
937
937
|
return;
|
|
938
938
|
}
|
|
939
939
|
activeInstance.rename(name);
|
|
@@ -941,7 +941,7 @@ function registerTerminalActions() {
|
|
|
941
941
|
});
|
|
942
942
|
registerActiveInstanceAction({
|
|
943
943
|
id: TerminalCommandId.Relaunch,
|
|
944
|
-
title: ( localize2(
|
|
944
|
+
title: ( localize2(16855, "Relaunch Active Terminal")),
|
|
945
945
|
run: activeInstance => activeInstance.relaunch()
|
|
946
946
|
});
|
|
947
947
|
registerTerminalAction({
|
|
@@ -1033,7 +1033,7 @@ function registerTerminalActions() {
|
|
|
1033
1033
|
});
|
|
1034
1034
|
registerTerminalAction({
|
|
1035
1035
|
id: TerminalCommandId.JoinActiveTab,
|
|
1036
|
-
title: ( localize2(
|
|
1036
|
+
title: ( localize2(16856, "Join Terminals")),
|
|
1037
1037
|
precondition: ( ContextKeyExpr.and(sharedWhenClause.terminalAvailable, ( TerminalContextKeys.tabsSingularSelection.toNegated()))),
|
|
1038
1038
|
run: async (c, accessor) => {
|
|
1039
1039
|
const instances = getSelectedViewInstances(accessor);
|
|
@@ -1044,7 +1044,7 @@ function registerTerminalActions() {
|
|
|
1044
1044
|
});
|
|
1045
1045
|
registerTerminalAction({
|
|
1046
1046
|
id: TerminalCommandId.Join,
|
|
1047
|
-
title: ( localize2(
|
|
1047
|
+
title: ( localize2(16857, "Join Terminals...")),
|
|
1048
1048
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1049
1049
|
run: async (c, accessor) => {
|
|
1050
1050
|
const themeService = accessor.get(IThemeService);
|
|
@@ -1052,7 +1052,7 @@ function registerTerminalActions() {
|
|
|
1052
1052
|
const quickInputService = accessor.get(IQuickInputService);
|
|
1053
1053
|
const picks = [];
|
|
1054
1054
|
if (c.groupService.instances.length <= 1) {
|
|
1055
|
-
notificationService.warn(( localize(
|
|
1055
|
+
notificationService.warn(( localize(16858, "Insufficient terminals for the join action")));
|
|
1056
1056
|
return;
|
|
1057
1057
|
}
|
|
1058
1058
|
const otherInstances = c.groupService.instances.filter(i => i.instanceId !== c.groupService.activeInstance?.instanceId);
|
|
@@ -1078,7 +1078,7 @@ function registerTerminalActions() {
|
|
|
1078
1078
|
}
|
|
1079
1079
|
}
|
|
1080
1080
|
if (picks.length === 0) {
|
|
1081
|
-
notificationService.warn(( localize(
|
|
1081
|
+
notificationService.warn(( localize(16859, "All terminals are joined already")));
|
|
1082
1082
|
return;
|
|
1083
1083
|
}
|
|
1084
1084
|
const result = await quickInputService.pick(picks, {});
|
|
@@ -1089,7 +1089,7 @@ function registerTerminalActions() {
|
|
|
1089
1089
|
});
|
|
1090
1090
|
registerActiveInstanceAction({
|
|
1091
1091
|
id: TerminalCommandId.SplitInActiveWorkspace,
|
|
1092
|
-
title: ( localize2(
|
|
1092
|
+
title: ( localize2(16860, "Split Terminal (In Active Workspace)")),
|
|
1093
1093
|
run: async (instance, c) => {
|
|
1094
1094
|
const newInstance = await c.service.createTerminal({
|
|
1095
1095
|
location: {
|
|
@@ -1103,7 +1103,7 @@ function registerTerminalActions() {
|
|
|
1103
1103
|
});
|
|
1104
1104
|
registerActiveXtermAction({
|
|
1105
1105
|
id: TerminalCommandId.SelectAll,
|
|
1106
|
-
title: ( localize2(
|
|
1106
|
+
title: ( localize2(16861, "Select All")),
|
|
1107
1107
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1108
1108
|
keybinding: [{
|
|
1109
1109
|
primary: 0,
|
|
@@ -1117,7 +1117,7 @@ function registerTerminalActions() {
|
|
|
1117
1117
|
});
|
|
1118
1118
|
registerTerminalAction({
|
|
1119
1119
|
id: TerminalCommandId.New,
|
|
1120
|
-
title: ( localize2(
|
|
1120
|
+
title: ( localize2(16862, "Create New Terminal")),
|
|
1121
1121
|
precondition: ( ContextKeyExpr.or(
|
|
1122
1122
|
TerminalContextKeys.processSupported,
|
|
1123
1123
|
TerminalContextKeys.webExtensionContributedProfile
|
|
@@ -1184,7 +1184,7 @@ function registerTerminalActions() {
|
|
|
1184
1184
|
}
|
|
1185
1185
|
registerTerminalAction({
|
|
1186
1186
|
id: TerminalCommandId.Kill,
|
|
1187
|
-
title: ( localize2(
|
|
1187
|
+
title: ( localize2(16863, "Kill the Active Terminal Instance")),
|
|
1188
1188
|
precondition: ( ContextKeyExpr.or(sharedWhenClause.terminalAvailable, TerminalContextKeys.isOpen)),
|
|
1189
1189
|
icon: killTerminalIcon,
|
|
1190
1190
|
run: async c => killInstance(c, c.groupService.activeInstance)
|
|
@@ -1198,7 +1198,7 @@ function registerTerminalActions() {
|
|
|
1198
1198
|
});
|
|
1199
1199
|
registerTerminalAction({
|
|
1200
1200
|
id: TerminalCommandId.KillAll,
|
|
1201
|
-
title: ( localize2(
|
|
1201
|
+
title: ( localize2(16864, "Kill All Terminals")),
|
|
1202
1202
|
precondition: ( ContextKeyExpr.or(sharedWhenClause.terminalAvailable, TerminalContextKeys.isOpen)),
|
|
1203
1203
|
icon: Codicon.trash,
|
|
1204
1204
|
run: async c => {
|
|
@@ -1211,7 +1211,7 @@ function registerTerminalActions() {
|
|
|
1211
1211
|
});
|
|
1212
1212
|
registerTerminalAction({
|
|
1213
1213
|
id: TerminalCommandId.KillEditor,
|
|
1214
|
-
title: ( localize2(
|
|
1214
|
+
title: ( localize2(16865, "Kill the Active Terminal in Editor Area")),
|
|
1215
1215
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1216
1216
|
keybinding: {
|
|
1217
1217
|
primary: KeyMod.CtrlCmd | KeyCode.KeyW,
|
|
@@ -1260,7 +1260,7 @@ function registerTerminalActions() {
|
|
|
1260
1260
|
});
|
|
1261
1261
|
registerActiveInstanceAction({
|
|
1262
1262
|
id: TerminalCommandId.Clear,
|
|
1263
|
-
title: ( localize2(
|
|
1263
|
+
title: ( localize2(16866, "Clear")),
|
|
1264
1264
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1265
1265
|
keybinding: [{
|
|
1266
1266
|
primary: 0,
|
|
@@ -1274,12 +1274,12 @@ function registerTerminalActions() {
|
|
|
1274
1274
|
});
|
|
1275
1275
|
registerTerminalAction({
|
|
1276
1276
|
id: TerminalCommandId.SelectDefaultProfile,
|
|
1277
|
-
title: ( localize2(
|
|
1277
|
+
title: ( localize2(16867, "Select Default Profile")),
|
|
1278
1278
|
run: c => c.service.showProfileQuickPick("setDefault")
|
|
1279
1279
|
});
|
|
1280
1280
|
registerTerminalAction({
|
|
1281
1281
|
id: TerminalCommandId.ConfigureTerminalSettings,
|
|
1282
|
-
title: ( localize2(
|
|
1282
|
+
title: ( localize2(16868, "Configure Terminal Settings")),
|
|
1283
1283
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1284
1284
|
run: (c, accessor) => accessor.get(IPreferencesService).openSettings({
|
|
1285
1285
|
jsonEditor: false,
|
|
@@ -1288,7 +1288,7 @@ function registerTerminalActions() {
|
|
|
1288
1288
|
});
|
|
1289
1289
|
registerActiveInstanceAction({
|
|
1290
1290
|
id: TerminalCommandId.SetDimensions,
|
|
1291
|
-
title: ( localize2(
|
|
1291
|
+
title: ( localize2(16869, "Set Fixed Dimensions")),
|
|
1292
1292
|
precondition: sharedWhenClause.terminalAvailable_and_opened,
|
|
1293
1293
|
run: activeInstance => activeInstance.setFixedDimensions()
|
|
1294
1294
|
});
|
|
@@ -1305,7 +1305,7 @@ function registerTerminalActions() {
|
|
|
1305
1305
|
});
|
|
1306
1306
|
registerTerminalAction({
|
|
1307
1307
|
id: TerminalCommandId.SwitchTerminal,
|
|
1308
|
-
title: ( localize2(
|
|
1308
|
+
title: ( localize2(16870, "Switch Terminal")),
|
|
1309
1309
|
precondition: sharedWhenClause.terminalAvailable,
|
|
1310
1310
|
run: async (c, accessor, args) => {
|
|
1311
1311
|
const item = toOptionalString(args);
|
|
@@ -1388,7 +1388,7 @@ function getSelectedViewInstances(accessor, args, args2) {
|
|
|
1388
1388
|
function validateTerminalName(name) {
|
|
1389
1389
|
if (!name || name.trim().length === 0) {
|
|
1390
1390
|
return {
|
|
1391
|
-
content: ( localize(
|
|
1391
|
+
content: ( localize(16871, "Providing no name will reset it to the default value")),
|
|
1392
1392
|
severity: Severity.Info
|
|
1393
1393
|
};
|
|
1394
1394
|
}
|
|
@@ -1414,7 +1414,7 @@ function refreshTerminalActions(detectedProfiles) {
|
|
|
1414
1414
|
constructor() {
|
|
1415
1415
|
super({
|
|
1416
1416
|
id: TerminalCommandId.NewWithProfile,
|
|
1417
|
-
title: ( localize2(
|
|
1417
|
+
title: ( localize2(16872, "Create New Terminal (With Profile)")),
|
|
1418
1418
|
f1: true,
|
|
1419
1419
|
precondition: ( ContextKeyExpr.or(
|
|
1420
1420
|
TerminalContextKeys.processSupported,
|
|
@@ -1429,16 +1429,16 @@ function refreshTerminalActions(detectedProfiles) {
|
|
|
1429
1429
|
required: ["profileName"],
|
|
1430
1430
|
properties: {
|
|
1431
1431
|
profileName: {
|
|
1432
|
-
description: ( localize(
|
|
1432
|
+
description: ( localize(16873, "The name of the profile to create")),
|
|
1433
1433
|
type: "string",
|
|
1434
1434
|
enum: profileEnum.values,
|
|
1435
1435
|
markdownEnumDescriptions: profileEnum.markdownDescriptions
|
|
1436
1436
|
},
|
|
1437
1437
|
location: {
|
|
1438
|
-
description: ( localize(
|
|
1438
|
+
description: ( localize(16874, "Where to create the terminal")),
|
|
1439
1439
|
type: "string",
|
|
1440
1440
|
enum: ["view", "editor"],
|
|
1441
|
-
enumDescriptions: [( localize(
|
|
1441
|
+
enumDescriptions: [( localize(16875, "Create the terminal in the terminal view")), ( localize(16876, "Create the terminal in the editor"))]
|
|
1442
1442
|
}
|
|
1443
1443
|
}
|
|
1444
1444
|
}
|
|
@@ -1500,7 +1500,7 @@ function refreshTerminalActions(detectedProfiles) {
|
|
|
1500
1500
|
const folders = workspaceContextService.getWorkspace().folders;
|
|
1501
1501
|
if (folders.length > 1) {
|
|
1502
1502
|
const options = {
|
|
1503
|
-
placeHolder: ( localize(
|
|
1503
|
+
placeHolder: ( localize(16821, "Select current working directory for new terminal"))
|
|
1504
1504
|
};
|
|
1505
1505
|
const workspace = await commandService.executeCommand(PICK_WORKSPACE_FOLDER_COMMAND_ID, [options]);
|
|
1506
1506
|
if (!workspace) {
|
|
@@ -1546,7 +1546,7 @@ async function pickTerminalCwd(accessor, cancel) {
|
|
|
1546
1546
|
}
|
|
1547
1547
|
const folderPicks = ( shrinkedPairs.map(pair => {
|
|
1548
1548
|
const label = pair.folder.name;
|
|
1549
|
-
const description = pair.isOverridden ? ( localize(
|
|
1549
|
+
const description = pair.isOverridden ? ( localize(16877, "(Overridden) {0}", labelService.getUriLabel(pair.cwd, {
|
|
1550
1550
|
relative: !pair.isAbsolute
|
|
1551
1551
|
}))) : labelService.getUriLabel(dirname(pair.cwd), {
|
|
1552
1552
|
relative: true
|
|
@@ -1559,7 +1559,7 @@ async function pickTerminalCwd(accessor, cancel) {
|
|
|
1559
1559
|
};
|
|
1560
1560
|
}));
|
|
1561
1561
|
const options = {
|
|
1562
|
-
placeHolder: ( localize(
|
|
1562
|
+
placeHolder: ( localize(16821, "Select current working directory for new terminal")),
|
|
1563
1563
|
matchOnDescription: true,
|
|
1564
1564
|
canPickMany: false
|
|
1565
1565
|
};
|
|
@@ -1626,7 +1626,7 @@ async function renameWithQuickPick(c, accessor, resource) {
|
|
|
1626
1626
|
if (instance) {
|
|
1627
1627
|
const title = await accessor.get(IQuickInputService).input({
|
|
1628
1628
|
value: instance.title,
|
|
1629
|
-
prompt: ( localize(
|
|
1629
|
+
prompt: ( localize(16878, "Enter terminal name"))
|
|
1630
1630
|
});
|
|
1631
1631
|
if (title) {
|
|
1632
1632
|
instance.rename(title);
|
|
@@ -91,6 +91,7 @@ export declare class TerminalInstance extends Disposable implements ITerminalIns
|
|
|
91
91
|
private _latestXtermWriteData;
|
|
92
92
|
private _latestXtermParseData;
|
|
93
93
|
private _isExiting;
|
|
94
|
+
private _isDisposing;
|
|
94
95
|
private _hadFocusOnExit;
|
|
95
96
|
private _exitCode;
|
|
96
97
|
private _exitReason;
|
|
@@ -197,6 +198,8 @@ export declare class TerminalInstance extends Disposable implements ITerminalIns
|
|
|
197
198
|
get injectedArgs(): string[] | undefined;
|
|
198
199
|
private readonly _onExit;
|
|
199
200
|
readonly onExit: Event<number | ITerminalLaunchError | undefined>;
|
|
201
|
+
private readonly _onWillDispose;
|
|
202
|
+
readonly onWillDispose: Event<ITerminalInstance>;
|
|
200
203
|
private readonly _onDisposed;
|
|
201
204
|
readonly onDisposed: Event<ITerminalInstance>;
|
|
202
205
|
private readonly _onProcessIdReady;
|
|
@@ -249,6 +252,7 @@ export declare class TerminalInstance extends Disposable implements ITerminalIns
|
|
|
249
252
|
private readonly _onLineData;
|
|
250
253
|
readonly onLineData: Event<string>;
|
|
251
254
|
readonly sessionId: string;
|
|
255
|
+
private readonly _isRemoteResolverTerminal;
|
|
252
256
|
constructor(_terminalShellTypeContextKey: IContextKey<string>, _shellLaunchConfig: IShellLaunchConfig, _contextKeyService: IContextKeyService, _contextMenuService: IContextMenuService, instantiationService: IInstantiationService, _terminalConfigurationService: ITerminalConfigurationService, _terminalProfileResolverService: ITerminalProfileResolverService, _pathService: IPathService, _fileService: IFileService, _keybindingService: IKeybindingService, _notificationService: INotificationService, _preferencesService: IPreferencesService, _viewsService: IViewsService, _themeService: IThemeService, _configurationService: IConfigurationService, _logService: ITerminalLogService, _storageService: IStorageService, _accessibilityService: IAccessibilityService, _productService: IProductService, _quickInputService: IQuickInputService, _workbenchEnvironmentService: IWorkbenchEnvironmentService, _workspaceContextService: IWorkspaceContextService, _editorService: IEditorService, _workspaceTrustRequestService: IWorkspaceTrustRequestService, _historyService: IHistoryService, _telemetryService: ITelemetryService, _openerService: IOpenerService, _commandService: ICommandService, _accessibilitySignalService: IAccessibilitySignalService, _viewDescriptorService: IViewDescriptorService);
|
|
253
257
|
getContribution<T extends ITerminalContribution>(id: string): T | null;
|
|
254
258
|
private _handleOnData;
|
|
@@ -394,8 +398,8 @@ export declare class TerminalLabelComputer extends Disposable {
|
|
|
394
398
|
*/
|
|
395
399
|
static readonly agentCliShellTypes: ReadonlySet<GeneralShellType>;
|
|
396
400
|
constructor(_fileService: IFileService, _terminalConfigurationService: ITerminalConfigurationService, _workspaceContextService: IWorkspaceContextService);
|
|
397
|
-
refreshLabel(instance: Pick<ITerminalInstance, "shellLaunchConfig" | "shellType" | "cwd" | "fixedCols" | "fixedRows" | "initialCwd" | "processName" | "sequence" | "userHome" | "workspaceFolder" | "staticTitle" | "capabilities" | "title" | "description">, reset?: boolean): void;
|
|
398
|
-
computeLabel(instance: Pick<ITerminalInstance, "shellLaunchConfig" | "shellType" | "cwd" | "fixedCols" | "fixedRows" | "initialCwd" | "processName" | "sequence" | "userHome" | "workspaceFolder" | "staticTitle" | "capabilities" | "title" | "description" | "progressState">, labelTemplate: string, labelType: TerminalLabelType, reset?: boolean): string;
|
|
401
|
+
refreshLabel(instance: Pick<ITerminalInstance, "shellLaunchConfig" | "shellType" | "cwd" | "fixedCols" | "fixedRows" | "initialCwd" | "processName" | "sequence" | "userHome" | "workspaceFolder" | "staticTitle" | "capabilities" | "title" | "description" | "os">, reset?: boolean): void;
|
|
402
|
+
computeLabel(instance: Pick<ITerminalInstance, "shellLaunchConfig" | "shellType" | "cwd" | "fixedCols" | "fixedRows" | "initialCwd" | "processName" | "sequence" | "userHome" | "workspaceFolder" | "staticTitle" | "capabilities" | "title" | "description" | "progressState" | "os">, labelTemplate: string, labelType: TerminalLabelType, reset?: boolean): string;
|
|
399
403
|
private _getProgressStateString;
|
|
400
404
|
}
|
|
401
405
|
export declare function parseExitResult(exitCodeOrError: ITerminalLaunchError | number | undefined, shellLaunchConfig: IShellLaunchConfig, processState: ProcessState, initialCwd: string | undefined): {
|