@codingame/monaco-vscode-debug-service-override 28.4.0 → 29.0.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 +2 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +16 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +104 -104
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +12 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugChatIntegration.js +12 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.d.ts +6 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +34 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +1 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +25 -25
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +8 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +20 -20
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +42 -42
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +15 -15
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +7 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +7 -7
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +5 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/replAccessibilityHelp.js +36 -36
- package/vscode/src/vs/workbench/contrib/debug/browser/runAndDebugAccessibilityHelp.js +16 -16
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +4 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +10 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +6 -6
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +3 -3
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +43 -43
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +11 -11
- package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/notebookVariables/notebookVariableCommands.js +2 -2
|
@@ -102,7 +102,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
102
102
|
delta.added.forEach(added => {
|
|
103
103
|
added.value.forEach(rawAdapter => {
|
|
104
104
|
if (!rawAdapter.type || (typeof rawAdapter.type !== "string")) {
|
|
105
|
-
added.collector.error(( localize(
|
|
105
|
+
added.collector.error(( localize(8219, "Debugger 'type' can not be omitted and must be of type 'string'.")));
|
|
106
106
|
}
|
|
107
107
|
if (rawAdapter.type !== "*") {
|
|
108
108
|
const existing = this.getDebugger(rawAdapter.type);
|
|
@@ -151,7 +151,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
151
151
|
"name": {
|
|
152
152
|
type: "string",
|
|
153
153
|
description: ( localize(
|
|
154
|
-
|
|
154
|
+
8220,
|
|
155
155
|
"Name of configuration; appears in the launch configuration dropdown menu."
|
|
156
156
|
)),
|
|
157
157
|
default: "Launch"
|
|
@@ -159,7 +159,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
159
159
|
"debugServer": {
|
|
160
160
|
type: "number",
|
|
161
161
|
description: ( localize(
|
|
162
|
-
|
|
162
|
+
8221,
|
|
163
163
|
"For debug extension development only: if a port is specified VS Code tries to connect to a debug adapter running in server mode"
|
|
164
164
|
)),
|
|
165
165
|
default: 4711
|
|
@@ -175,7 +175,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
175
175
|
type: ""
|
|
176
176
|
}
|
|
177
177
|
}],
|
|
178
|
-
description: ( localize(
|
|
178
|
+
description: ( localize(8222, "Task to run before debug session starts.")),
|
|
179
179
|
examples: this.taskLabels
|
|
180
180
|
},
|
|
181
181
|
"postDebugTask": {
|
|
@@ -189,7 +189,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
189
189
|
type: ""
|
|
190
190
|
}
|
|
191
191
|
}],
|
|
192
|
-
description: ( localize(
|
|
192
|
+
description: ( localize(8223, "Task to run after debug session ends.")),
|
|
193
193
|
examples: this.taskLabels
|
|
194
194
|
},
|
|
195
195
|
"presentation": presentationSchema,
|
|
@@ -197,7 +197,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
197
197
|
"suppressMultipleSessionWarning": {
|
|
198
198
|
type: "boolean",
|
|
199
199
|
description: ( localize(
|
|
200
|
-
|
|
200
|
+
8224,
|
|
201
201
|
"Disable the warning when trying to start the same debug configuration more than once."
|
|
202
202
|
)),
|
|
203
203
|
default: true
|
|
@@ -353,11 +353,11 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
353
353
|
} = await this.dialogService.confirm({
|
|
354
354
|
type: Severity.Warning,
|
|
355
355
|
message: ( localize(
|
|
356
|
-
|
|
356
|
+
8225,
|
|
357
357
|
"You don't have an extension for debugging {0}. Should we find a {0} extension in the Marketplace?",
|
|
358
358
|
languageLabel
|
|
359
359
|
)),
|
|
360
|
-
primaryButton: ( localize(
|
|
360
|
+
primaryButton: ( localize(8226, "&&Find {0} extension", languageLabel))
|
|
361
361
|
});
|
|
362
362
|
if (confirmed) {
|
|
363
363
|
await this.commandService.executeCommand("debug.installAdditionalDebuggers", languageLabel);
|
|
@@ -384,7 +384,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
384
384
|
if (suggestedCandidates.length > 0) {
|
|
385
385
|
picks.push({
|
|
386
386
|
type: "separator",
|
|
387
|
-
label: ( localize(
|
|
387
|
+
label: ( localize(8227, "Suggested"))
|
|
388
388
|
}, ...( suggestedCandidates.map(c => ({
|
|
389
389
|
label: c.label,
|
|
390
390
|
pick: () => ({
|
|
@@ -415,7 +415,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
415
415
|
}
|
|
416
416
|
for (const d of dynamic) {
|
|
417
417
|
picks.push({
|
|
418
|
-
label: ( localize(
|
|
418
|
+
label: ( localize(8228, "More {0} options...", d.label)),
|
|
419
419
|
pick: async () => {
|
|
420
420
|
const cfg = await d.pick();
|
|
421
421
|
if (!cfg) {
|
|
@@ -433,7 +433,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
433
433
|
type: "separator",
|
|
434
434
|
label: ""
|
|
435
435
|
}, {
|
|
436
|
-
label: languageLabel ? ( localize(
|
|
436
|
+
label: languageLabel ? ( localize(8229, "Install an extension for {0}...", languageLabel)) : ( localize(8230, "Install extension..."))
|
|
437
437
|
});
|
|
438
438
|
const contributed = this.menuService.getMenuActions(MenuId.DebugCreateConfiguration, this.contextKeyService);
|
|
439
439
|
for (const [, action] of contributed) {
|
|
@@ -441,7 +441,7 @@ let AdapterManager = class AdapterManager extends Disposable {
|
|
|
441
441
|
picks.push(item);
|
|
442
442
|
}
|
|
443
443
|
}
|
|
444
|
-
const placeHolder = ( localize(
|
|
444
|
+
const placeHolder = ( localize(8231, "Select debugger"));
|
|
445
445
|
return this.quickInputService.pick(picks, {
|
|
446
446
|
activeItem: picks[0],
|
|
447
447
|
placeHolder
|
|
@@ -31,7 +31,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
31
31
|
constructor(debugService) {
|
|
32
32
|
this.debugService = debugService;
|
|
33
33
|
this.type = "pickerPick";
|
|
34
|
-
this.label = ( localize(
|
|
34
|
+
this.label = ( localize(8232, "Debug Session..."));
|
|
35
35
|
this.icon = Codicon.debug;
|
|
36
36
|
this.ordinal = -200;
|
|
37
37
|
}
|
|
@@ -46,7 +46,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
46
46
|
const query = observableValue("debugPicker.query", "");
|
|
47
47
|
const picksObservable = this.createPicksObservable(mode, query, store);
|
|
48
48
|
return {
|
|
49
|
-
placeholder: ( localize(
|
|
49
|
+
placeholder: ( localize(8233, "Select debug data to attach")),
|
|
50
50
|
picks: (_queryObs, token) => {
|
|
51
51
|
store.add(autorun(reader => {
|
|
52
52
|
query.set(_queryObs.read(reader), undefined);
|
|
@@ -97,7 +97,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
97
97
|
return picks;
|
|
98
98
|
}
|
|
99
99
|
picks.push({
|
|
100
|
-
label: ( localize(
|
|
100
|
+
label: ( localize(8234, "Expression Value...")),
|
|
101
101
|
iconClass: ThemeIcon.asClassName(Codicon.symbolVariable),
|
|
102
102
|
asAttachment: () => {
|
|
103
103
|
mode.set(PickerMode.Expression, undefined);
|
|
@@ -108,7 +108,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
108
108
|
if (watches.length > 0) {
|
|
109
109
|
picks.push({
|
|
110
110
|
type: "separator",
|
|
111
|
-
label: ( localize(
|
|
111
|
+
label: ( localize(8235, "Watch Expressions"))
|
|
112
112
|
});
|
|
113
113
|
for (const watch of watches) {
|
|
114
114
|
picks.push({
|
|
@@ -135,7 +135,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
135
135
|
const variables = await scope.getChildren();
|
|
136
136
|
if (variables.length > 1) {
|
|
137
137
|
picks.push({
|
|
138
|
-
label: ( localize(
|
|
138
|
+
label: ( localize(8236, "All variables in {0}", scope.name)),
|
|
139
139
|
iconClass: ThemeIcon.asClassName(Codicon.symbolNamespace),
|
|
140
140
|
asAttachment: () => createDebugAttachments(stackFrame, createScopeEntry(scope, variables))
|
|
141
141
|
});
|
|
@@ -170,7 +170,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
170
170
|
async evaluateExpression(expression, token) {
|
|
171
171
|
if (!expression.trim()) {
|
|
172
172
|
return [{
|
|
173
|
-
label: ( localize(
|
|
173
|
+
label: ( localize(8237, "Type an expression to evaluate...")),
|
|
174
174
|
disabled: true,
|
|
175
175
|
asAttachment: () => "noop"
|
|
176
176
|
}];
|
|
@@ -180,7 +180,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
180
180
|
const stackFrame = viewModel.focusedStackFrame;
|
|
181
181
|
if (!session || !stackFrame) {
|
|
182
182
|
return [{
|
|
183
|
-
label: ( localize(
|
|
183
|
+
label: ( localize(8238, "No active debug session")),
|
|
184
184
|
disabled: true,
|
|
185
185
|
asAttachment: () => "noop"
|
|
186
186
|
}];
|
|
@@ -212,7 +212,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
212
212
|
} else {
|
|
213
213
|
return [{
|
|
214
214
|
label: expression,
|
|
215
|
-
description: ( localize(
|
|
215
|
+
description: ( localize(8239, "No result")),
|
|
216
216
|
disabled: true,
|
|
217
217
|
asAttachment: () => "noop"
|
|
218
218
|
}];
|
|
@@ -220,7 +220,7 @@ let DebugSessionContextPick = class DebugSessionContextPick {
|
|
|
220
220
|
} catch (err) {
|
|
221
221
|
return [{
|
|
222
222
|
label: expression,
|
|
223
|
-
description: err instanceof Error ? err.message : ( localize(
|
|
223
|
+
description: err instanceof Error ? err.message : ( localize(8240, "Evaluation error")),
|
|
224
224
|
disabled: true,
|
|
225
225
|
asAttachment: () => "noop"
|
|
226
226
|
}];
|
|
@@ -313,7 +313,7 @@ registerAction2(class extends Action2 {
|
|
|
313
313
|
constructor() {
|
|
314
314
|
super({
|
|
315
315
|
id: "workbench.debug.action.addVariableToChat",
|
|
316
|
-
title: ( localize(
|
|
316
|
+
title: ( localize(8241, "Add to Chat")),
|
|
317
317
|
f1: false,
|
|
318
318
|
menu: {
|
|
319
319
|
id: MenuId.DebugVariablesContext,
|
|
@@ -344,7 +344,7 @@ registerAction2(class extends Action2 {
|
|
|
344
344
|
constructor() {
|
|
345
345
|
super({
|
|
346
346
|
id: "workbench.debug.action.addWatchExpressionToChat",
|
|
347
|
-
title: ( localize(
|
|
347
|
+
title: ( localize(8241, "Add to Chat")),
|
|
348
348
|
f1: false,
|
|
349
349
|
menu: {
|
|
350
350
|
id: MenuId.DebugWatchContext,
|
|
@@ -372,7 +372,7 @@ registerAction2(class extends Action2 {
|
|
|
372
372
|
constructor() {
|
|
373
373
|
super({
|
|
374
374
|
id: "workbench.debug.action.addScopeToChat",
|
|
375
|
-
title: ( localize(
|
|
375
|
+
title: ( localize(8241, "Add to Chat")),
|
|
376
376
|
f1: false,
|
|
377
377
|
menu: {
|
|
378
378
|
id: MenuId.DebugScopesContext,
|
|
@@ -12,6 +12,7 @@ import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/plat
|
|
|
12
12
|
import { IWorkspaceContextService } from "@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service";
|
|
13
13
|
import { IExtensionService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service";
|
|
14
14
|
import { IHistoryService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/history/common/history.service";
|
|
15
|
+
import { IRemoteAgentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service";
|
|
15
16
|
import { DebugConfigurationProviderTriggerKind, IAdapterManager, IConfig, IConfigPresentation, IConfigurationManager, IDebugConfigurationProvider, ILaunch } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debug";
|
|
16
17
|
interface IDynamicPickItem {
|
|
17
18
|
label: string;
|
|
@@ -28,6 +29,7 @@ export declare class ConfigurationManager implements IConfigurationManager {
|
|
|
28
29
|
private readonly extensionService;
|
|
29
30
|
private readonly historyService;
|
|
30
31
|
private readonly uriIdentityService;
|
|
32
|
+
private readonly remoteAgentService;
|
|
31
33
|
private readonly logService;
|
|
32
34
|
private launches;
|
|
33
35
|
private selectedName;
|
|
@@ -41,7 +43,10 @@ export declare class ConfigurationManager implements IConfigurationManager {
|
|
|
41
43
|
private debugConfigurationTypeContext;
|
|
42
44
|
private readonly _onDidChangeConfigurationProviders;
|
|
43
45
|
readonly onDidChangeConfigurationProviders: Event<void>;
|
|
44
|
-
|
|
46
|
+
private targetOperatingSystem;
|
|
47
|
+
constructor(adapterManager: IAdapterManager, contextService: IWorkspaceContextService, configurationService: IConfigurationService, quickInputService: IQuickInputService, instantiationService: IInstantiationService, storageService: IStorageService, extensionService: IExtensionService, historyService: IHistoryService, uriIdentityService: IUriIdentityService, remoteAgentService: IRemoteAgentService, contextKeyService: IContextKeyService, logService: ILogService);
|
|
48
|
+
private resolveTargetOperatingSystem;
|
|
49
|
+
getTargetOperatingSystem(): import("@codingame/monaco-vscode-api/vscode/vs/base/common/platform").OperatingSystem;
|
|
45
50
|
registerDebugConfigurationProvider(debugConfigurationProvider: IDebugConfigurationProvider): IDisposable;
|
|
46
51
|
unregisterDebugConfigurationProvider(debugConfigurationProvider: IDebugConfigurationProvider): void;
|
|
47
52
|
/**
|
|
@@ -24,16 +24,18 @@ import { IStorageService } from '@codingame/monaco-vscode-api/vscode/vs/platform
|
|
|
24
24
|
import { IUriIdentityService } from '@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service';
|
|
25
25
|
import { WorkbenchState } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace';
|
|
26
26
|
import { IWorkspaceContextService } from '@codingame/monaco-vscode-api/vscode/vs/platform/workspace/common/workspace.service';
|
|
27
|
+
import { OS } from '@codingame/monaco-vscode-api/vscode/vs/base/common/platform';
|
|
27
28
|
import { launchSchemaId } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/configuration/common/configuration';
|
|
28
29
|
import { ACTIVE_GROUP } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService';
|
|
29
30
|
import { IEditorService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service';
|
|
30
31
|
import { IExtensionService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/extensions/common/extensions.service';
|
|
31
32
|
import { IHistoryService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/history/common/history.service';
|
|
32
33
|
import { IPreferencesService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/preferences/common/preferences.service';
|
|
34
|
+
import { IRemoteAgentService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/remote/common/remoteAgentService.service';
|
|
33
35
|
import { ITextFileService } from '@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service';
|
|
34
|
-
import { CONTEXT_DEBUG_CONFIGURATION_TYPE, DebugConfigurationProviderTriggerKind } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debug';
|
|
36
|
+
import { CONTEXT_DEBUG_CONFIGURATION_TYPE, DebugConfigurationProviderTriggerKind, isDebugConfig } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debug';
|
|
35
37
|
import { launchSchema } from '../common/debugSchemas.js';
|
|
36
|
-
import { getVisibleAndSorted } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debugUtils';
|
|
38
|
+
import { getVisibleAndSorted, getEffectiveConfigForPlatform } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/common/debugUtils';
|
|
37
39
|
import { debugConfigure } from '@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/debug/browser/debugIcons';
|
|
38
40
|
|
|
39
41
|
const jsonRegistry = ( Registry.as(Extensions.JSONContribution));
|
|
@@ -54,6 +56,7 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
54
56
|
extensionService,
|
|
55
57
|
historyService,
|
|
56
58
|
uriIdentityService,
|
|
59
|
+
remoteAgentService,
|
|
57
60
|
contextKeyService,
|
|
58
61
|
logService
|
|
59
62
|
) {
|
|
@@ -66,12 +69,14 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
66
69
|
this.extensionService = extensionService;
|
|
67
70
|
this.historyService = historyService;
|
|
68
71
|
this.uriIdentityService = uriIdentityService;
|
|
72
|
+
this.remoteAgentService = remoteAgentService;
|
|
69
73
|
this.logService = logService;
|
|
70
74
|
this.getSelectedConfig = () => Promise.resolve(undefined);
|
|
71
75
|
this.selectedDynamic = false;
|
|
72
76
|
this._onDidSelectConfigurationName = ( new Emitter());
|
|
73
77
|
this._onDidChangeConfigurationProviders = ( new Emitter());
|
|
74
78
|
this.onDidChangeConfigurationProviders = this._onDidChangeConfigurationProviders.event;
|
|
79
|
+
this.targetOperatingSystem = OS;
|
|
75
80
|
this.configProviders = [];
|
|
76
81
|
this.toDispose = [
|
|
77
82
|
this._onDidChangeConfigurationProviders,
|
|
@@ -93,6 +98,19 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
93
98
|
} else if (this.launches.length > 0) {
|
|
94
99
|
this.selectConfiguration(undefined, previousSelectedName, undefined, dynamicConfig);
|
|
95
100
|
}
|
|
101
|
+
this.resolveTargetOperatingSystem();
|
|
102
|
+
}
|
|
103
|
+
resolveTargetOperatingSystem() {
|
|
104
|
+
this.remoteAgentService.getEnvironment().then(environment => {
|
|
105
|
+
const targetOperatingSystem = environment?.os ?? OS;
|
|
106
|
+
if (this.targetOperatingSystem !== targetOperatingSystem) {
|
|
107
|
+
this.targetOperatingSystem = targetOperatingSystem;
|
|
108
|
+
this._onDidSelectConfigurationName.fire();
|
|
109
|
+
}
|
|
110
|
+
}, () => {});
|
|
111
|
+
}
|
|
112
|
+
getTargetOperatingSystem() {
|
|
113
|
+
return this.targetOperatingSystem;
|
|
96
114
|
}
|
|
97
115
|
registerDebugConfigurationProvider(debugConfigurationProvider) {
|
|
98
116
|
this.configProviders.push(debugConfigurationProvider);
|
|
@@ -212,7 +230,7 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
212
230
|
disposables.add(token);
|
|
213
231
|
const input = disposables.add(this.quickInputService.createQuickPick());
|
|
214
232
|
input.busy = true;
|
|
215
|
-
input.placeholder = ( localize(
|
|
233
|
+
input.placeholder = ( localize(8292, "Select Launch Configuration"));
|
|
216
234
|
const chosenPromise = ( new Promise(resolve => {
|
|
217
235
|
disposables.add(input.onDidAccept(() => resolve(input.activeItems[0])));
|
|
218
236
|
disposables.add(input.onDidTriggerItemButton(async context => {
|
|
@@ -265,7 +283,7 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
265
283
|
config,
|
|
266
284
|
buttons: [{
|
|
267
285
|
iconClass: ThemeIcon.asClassName(debugConfigure),
|
|
268
|
-
tooltip: ( localize(
|
|
286
|
+
tooltip: ( localize(8293, "Edit Debug Configuration in launch.json"))
|
|
269
287
|
}],
|
|
270
288
|
launch
|
|
271
289
|
}))))
|
|
@@ -481,7 +499,7 @@ let ConfigurationManager = class ConfigurationManager {
|
|
|
481
499
|
this.toDispose = dispose(this.toDispose);
|
|
482
500
|
}
|
|
483
501
|
};
|
|
484
|
-
ConfigurationManager = ( __decorate([( __param(1, IWorkspaceContextService)), ( __param(2, IConfigurationService)), ( __param(3, IQuickInputService)), ( __param(4, IInstantiationService)), ( __param(5, IStorageService)), ( __param(6, IExtensionService)), ( __param(7, IHistoryService)), ( __param(8, IUriIdentityService)), ( __param(9,
|
|
502
|
+
ConfigurationManager = ( __decorate([( __param(1, IWorkspaceContextService)), ( __param(2, IConfigurationService)), ( __param(3, IQuickInputService)), ( __param(4, IInstantiationService)), ( __param(5, IStorageService)), ( __param(6, IExtensionService)), ( __param(7, IHistoryService)), ( __param(8, IUriIdentityService)), ( __param(9, IRemoteAgentService)), ( __param(10, IContextKeyService)), ( __param(11, ILogService))], ConfigurationManager));
|
|
485
503
|
class AbstractLaunch {
|
|
486
504
|
constructor(configurationManager, adapterManager) {
|
|
487
505
|
this.configurationManager = configurationManager;
|
|
@@ -513,7 +531,10 @@ class AbstractLaunch {
|
|
|
513
531
|
compound => typeof compound.name === "string" && compound.configurations && compound.configurations.length
|
|
514
532
|
));
|
|
515
533
|
}
|
|
516
|
-
|
|
534
|
+
const resolved = ( configurations.map(
|
|
535
|
+
c => isDebugConfig(c) ? getEffectiveConfigForPlatform(c, this.configurationManager.getTargetOperatingSystem()) : c
|
|
536
|
+
));
|
|
537
|
+
return ( getVisibleAndSorted(resolved).map(c => c.name));
|
|
517
538
|
}
|
|
518
539
|
}
|
|
519
540
|
getConfiguration(name) {
|
|
@@ -525,19 +546,20 @@ class AbstractLaunch {
|
|
|
525
546
|
if (!configuration) {
|
|
526
547
|
return;
|
|
527
548
|
}
|
|
549
|
+
const effectiveConfiguration = getEffectiveConfigForPlatform(configuration, this.configurationManager.getTargetOperatingSystem());
|
|
528
550
|
if (this instanceof UserLaunch) {
|
|
529
551
|
return {
|
|
530
|
-
...
|
|
552
|
+
...effectiveConfiguration,
|
|
531
553
|
__configurationTarget: ConfigurationTarget.USER
|
|
532
554
|
};
|
|
533
555
|
} else if (this instanceof WorkspaceLaunch) {
|
|
534
556
|
return {
|
|
535
|
-
...
|
|
557
|
+
...effectiveConfiguration,
|
|
536
558
|
__configurationTarget: ConfigurationTarget.WORKSPACE
|
|
537
559
|
};
|
|
538
560
|
} else {
|
|
539
561
|
return {
|
|
540
|
-
...
|
|
562
|
+
...effectiveConfiguration,
|
|
541
563
|
__configurationTarget: ConfigurationTarget.WORKSPACE_FOLDER
|
|
542
564
|
};
|
|
543
565
|
}
|
|
@@ -633,7 +655,7 @@ let Launch = class Launch extends AbstractLaunch {
|
|
|
633
655
|
await this.textFileService.write(resource, content);
|
|
634
656
|
} catch (error) {
|
|
635
657
|
throw ( new Error(( localize(
|
|
636
|
-
|
|
658
|
+
8294,
|
|
637
659
|
"Unable to create 'launch.json' file inside the '.vscode' folder ({0}).",
|
|
638
660
|
error.message
|
|
639
661
|
))));
|
|
@@ -695,7 +717,7 @@ let WorkspaceLaunch = class WorkspaceLaunch extends AbstractLaunch {
|
|
|
695
717
|
return this.contextService.getWorkspace().configuration;
|
|
696
718
|
}
|
|
697
719
|
get name() {
|
|
698
|
-
return localize(
|
|
720
|
+
return localize(8295, "workspace");
|
|
699
721
|
}
|
|
700
722
|
getConfig() {
|
|
701
723
|
return this.configurationService.inspect("launch").workspaceValue;
|
|
@@ -751,7 +773,7 @@ let UserLaunch = class UserLaunch extends AbstractLaunch {
|
|
|
751
773
|
return this.preferencesService.userSettingsResource;
|
|
752
774
|
}
|
|
753
775
|
get name() {
|
|
754
|
-
return localize(
|
|
776
|
+
return localize(8296, "user settings");
|
|
755
777
|
}
|
|
756
778
|
get hidden() {
|
|
757
779
|
return true;
|
|
@@ -31,7 +31,7 @@ let DebugConsoleQuickAccess = class DebugConsoleQuickAccess extends PickerQuickA
|
|
|
31
31
|
type: "separator"
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
|
-
const createTerminalLabel = ( localize(
|
|
34
|
+
const createTerminalLabel = ( localize(8297, "Start a New Debug Session"));
|
|
35
35
|
debugConsolePicks.push({
|
|
36
36
|
label: `$(plus) ${createTerminalLabel}`,
|
|
37
37
|
ariaLabel: createTerminalLabel,
|
|
@@ -32,10 +32,10 @@ class ToggleBreakpointAction extends Action2 {
|
|
|
32
32
|
super({
|
|
33
33
|
id: TOGGLE_BREAKPOINT_ID,
|
|
34
34
|
title: {
|
|
35
|
-
...( localize2(
|
|
36
|
-
mnemonicTitle: ( localize(
|
|
35
|
+
...( localize2(8298, "Toggle Breakpoint")),
|
|
36
|
+
mnemonicTitle: ( localize(8299, "Toggle &&Breakpoint"))
|
|
37
37
|
},
|
|
38
|
-
category: ( localize2(
|
|
38
|
+
category: ( localize2(8300, "Debug")),
|
|
39
39
|
f1: true,
|
|
40
40
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
41
41
|
keybinding: {
|
|
@@ -99,11 +99,11 @@ class ConditionalBreakpointAction extends EditorAction {
|
|
|
99
99
|
constructor() {
|
|
100
100
|
super({
|
|
101
101
|
id: "editor.debug.action.conditionalBreakpoint",
|
|
102
|
-
label: ( localize2(
|
|
102
|
+
label: ( localize2(8301, "Debug: Add Conditional Breakpoint...")),
|
|
103
103
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
104
104
|
menuOpts: {
|
|
105
105
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
106
|
-
title: ( localize(
|
|
106
|
+
title: ( localize(8302, "&&Conditional Breakpoint...")),
|
|
107
107
|
group: "1_breakpoints",
|
|
108
108
|
order: 1,
|
|
109
109
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -122,11 +122,11 @@ class LogPointAction extends EditorAction {
|
|
|
122
122
|
constructor() {
|
|
123
123
|
super({
|
|
124
124
|
id: "editor.debug.action.addLogPoint",
|
|
125
|
-
label: ( localize2(
|
|
125
|
+
label: ( localize2(8303, "Debug: Add Logpoint...")),
|
|
126
126
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
127
127
|
menuOpts: [{
|
|
128
128
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
129
|
-
title: ( localize(
|
|
129
|
+
title: ( localize(8304, "&&Logpoint...")),
|
|
130
130
|
group: "1_breakpoints",
|
|
131
131
|
order: 4,
|
|
132
132
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -145,12 +145,12 @@ class TriggerByBreakpointAction extends EditorAction {
|
|
|
145
145
|
constructor() {
|
|
146
146
|
super({
|
|
147
147
|
id: "editor.debug.action.triggerByBreakpoint",
|
|
148
|
-
label: ( localize(
|
|
148
|
+
label: ( localize(8305, "Debug: Add Triggered Breakpoint...")),
|
|
149
149
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
150
150
|
alias: "Debug: Triggered Breakpoint...",
|
|
151
151
|
menuOpts: [{
|
|
152
152
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
153
|
-
title: ( localize(
|
|
153
|
+
title: ( localize(8306, "&&Triggered Breakpoint...")),
|
|
154
154
|
group: "1_breakpoints",
|
|
155
155
|
order: 4,
|
|
156
156
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -173,12 +173,12 @@ class EditBreakpointAction extends EditorAction {
|
|
|
173
173
|
constructor() {
|
|
174
174
|
super({
|
|
175
175
|
id: "editor.debug.action.editBreakpoint",
|
|
176
|
-
label: ( localize(
|
|
176
|
+
label: ( localize(8307, "Debug: Edit Breakpoint")),
|
|
177
177
|
alias: "Debug: Edit Existing Breakpoint",
|
|
178
178
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
179
179
|
menuOpts: {
|
|
180
180
|
menuId: MenuId.MenubarNewBreakpointMenu,
|
|
181
|
-
title: ( localize(
|
|
181
|
+
title: ( localize(8308, "&&Edit Breakpoint")),
|
|
182
182
|
group: "1_breakpoints",
|
|
183
183
|
order: 1,
|
|
184
184
|
when: CONTEXT_DEBUGGERS_AVAILABLE
|
|
@@ -217,8 +217,8 @@ class OpenDisassemblyViewAction extends Action2 {
|
|
|
217
217
|
super({
|
|
218
218
|
id: OpenDisassemblyViewAction.ID,
|
|
219
219
|
title: {
|
|
220
|
-
...( localize2(
|
|
221
|
-
mnemonicTitle: ( localize(
|
|
220
|
+
...( localize2(8309, "Open Disassembly View")),
|
|
221
|
+
mnemonicTitle: ( localize(8310, "&&DisassemblyView"))
|
|
222
222
|
},
|
|
223
223
|
precondition: CONTEXT_FOCUSED_STACK_FRAME_HAS_INSTRUCTION_POINTER_REFERENCE,
|
|
224
224
|
menu: [{
|
|
@@ -256,11 +256,11 @@ class ToggleDisassemblyViewSourceCodeAction extends Action2 {
|
|
|
256
256
|
super({
|
|
257
257
|
id: ToggleDisassemblyViewSourceCodeAction.ID,
|
|
258
258
|
title: {
|
|
259
|
-
...( localize2(
|
|
260
|
-
mnemonicTitle: ( localize(
|
|
259
|
+
...( localize2(8311, "Toggle Source Code in Disassembly View")),
|
|
260
|
+
mnemonicTitle: ( localize(8312, "&&ToggleSource"))
|
|
261
261
|
},
|
|
262
262
|
metadata: {
|
|
263
|
-
description: ( localize2(
|
|
263
|
+
description: ( localize2(8313, "Shows or hides source code in disassembly"))
|
|
264
264
|
},
|
|
265
265
|
f1: true
|
|
266
266
|
});
|
|
@@ -278,7 +278,7 @@ class RunToCursorAction extends EditorAction {
|
|
|
278
278
|
this.ID = "editor.debug.action.runToCursor";
|
|
279
279
|
}
|
|
280
280
|
static {
|
|
281
|
-
this.LABEL = ( localize2(
|
|
281
|
+
this.LABEL = ( localize2(8314, "Run to Cursor"));
|
|
282
282
|
}
|
|
283
283
|
constructor() {
|
|
284
284
|
super({
|
|
@@ -315,7 +315,7 @@ class SelectionToReplAction extends EditorAction {
|
|
|
315
315
|
this.ID = "editor.debug.action.selectionToRepl";
|
|
316
316
|
}
|
|
317
317
|
static {
|
|
318
|
-
this.LABEL = ( localize2(
|
|
318
|
+
this.LABEL = ( localize2(8315, "Evaluate in Debug Console"));
|
|
319
319
|
}
|
|
320
320
|
constructor() {
|
|
321
321
|
super({
|
|
@@ -353,7 +353,7 @@ class SelectionToWatchExpressionsAction extends EditorAction {
|
|
|
353
353
|
this.ID = "editor.debug.action.selectionToWatch";
|
|
354
354
|
}
|
|
355
355
|
static {
|
|
356
|
-
this.LABEL = ( localize2(
|
|
356
|
+
this.LABEL = ( localize2(8316, "Add to Watch"));
|
|
357
357
|
}
|
|
358
358
|
constructor() {
|
|
359
359
|
super({
|
|
@@ -398,7 +398,7 @@ class ShowDebugHoverAction extends EditorAction {
|
|
|
398
398
|
constructor() {
|
|
399
399
|
super({
|
|
400
400
|
id: "editor.debug.action.showDebugHover",
|
|
401
|
-
label: ( localize2(
|
|
401
|
+
label: ( localize2(8317, "Debug: Show Hover")),
|
|
402
402
|
precondition: CONTEXT_IN_DEBUG_MODE,
|
|
403
403
|
kbOpts: {
|
|
404
404
|
kbExpr: EditorContextKeys.editorTextFocus,
|
|
@@ -415,13 +415,13 @@ class ShowDebugHoverAction extends EditorAction {
|
|
|
415
415
|
return editor.getContribution(EDITOR_CONTRIBUTION_ID)?.showHover(position, true);
|
|
416
416
|
}
|
|
417
417
|
}
|
|
418
|
-
const NO_TARGETS_MESSAGE = ( localize(
|
|
418
|
+
const NO_TARGETS_MESSAGE = ( localize(8318, "Step targets are not available here"));
|
|
419
419
|
class StepIntoTargetsAction extends EditorAction {
|
|
420
420
|
static {
|
|
421
421
|
this.ID = "editor.debug.action.stepIntoTargets";
|
|
422
422
|
}
|
|
423
423
|
static {
|
|
424
|
-
this.LABEL = ( localize(
|
|
424
|
+
this.LABEL = ( localize(8319, "Step Into Target"));
|
|
425
425
|
}
|
|
426
426
|
constructor() {
|
|
427
427
|
super({
|
|
@@ -535,7 +535,7 @@ class GoToNextBreakpointAction extends GoToBreakpointAction {
|
|
|
535
535
|
constructor() {
|
|
536
536
|
super(true, {
|
|
537
537
|
id: "editor.debug.action.goToNextBreakpoint",
|
|
538
|
-
label: ( localize2(
|
|
538
|
+
label: ( localize2(8320, "Debug: Go to Next Breakpoint")),
|
|
539
539
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE
|
|
540
540
|
});
|
|
541
541
|
}
|
|
@@ -544,7 +544,7 @@ class GoToPreviousBreakpointAction extends GoToBreakpointAction {
|
|
|
544
544
|
constructor() {
|
|
545
545
|
super(false, {
|
|
546
546
|
id: "editor.debug.action.goToPreviousBreakpoint",
|
|
547
|
-
label: ( localize2(
|
|
547
|
+
label: ( localize2(8321, "Debug: Go to Previous Breakpoint")),
|
|
548
548
|
precondition: CONTEXT_DEBUGGERS_AVAILABLE
|
|
549
549
|
});
|
|
550
550
|
}
|
|
@@ -553,7 +553,7 @@ class CloseExceptionWidgetAction extends EditorAction {
|
|
|
553
553
|
constructor() {
|
|
554
554
|
super({
|
|
555
555
|
id: "editor.debug.action.closeExceptionWidget",
|
|
556
|
-
label: ( localize2(
|
|
556
|
+
label: ( localize2(8322, "Close Exception Widget")),
|
|
557
557
|
precondition: CONTEXT_EXCEPTION_WIDGET_VISIBLE,
|
|
558
558
|
kbOpts: {
|
|
559
559
|
primary: KeyCode.Escape,
|
|
@@ -16,7 +16,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
16
16
|
constructor(debugService, contextService, commandService, notificationService) {
|
|
17
17
|
super(DEBUG_QUICK_ACCESS_PREFIX, {
|
|
18
18
|
noResultsPick: {
|
|
19
|
-
label: ( localize(
|
|
19
|
+
label: ( localize(8385, "No matching launch configurations"))
|
|
20
20
|
}
|
|
21
21
|
});
|
|
22
22
|
this.debugService = debugService;
|
|
@@ -47,7 +47,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
47
47
|
},
|
|
48
48
|
buttons: [{
|
|
49
49
|
iconClass: ThemeIcon.asClassName(debugConfigure),
|
|
50
|
-
tooltip: ( localize(
|
|
50
|
+
tooltip: ( localize(8386, "Configure Launch Configuration"))
|
|
51
51
|
}],
|
|
52
52
|
trigger: () => {
|
|
53
53
|
config.launch.openConfigFile({
|
|
@@ -69,7 +69,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
69
69
|
if (selectedConfiguration.name === config.name && selectedConfiguration.launch === config.launch) {
|
|
70
70
|
const separator = {
|
|
71
71
|
type: "separator",
|
|
72
|
-
label: ( localize(
|
|
72
|
+
label: ( localize(8387, "Most Recent"))
|
|
73
73
|
};
|
|
74
74
|
picks.unshift(separator, pick);
|
|
75
75
|
continue;
|
|
@@ -87,7 +87,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
87
87
|
if (dynamicProviders.length > 0) {
|
|
88
88
|
picks.push({
|
|
89
89
|
type: "separator",
|
|
90
|
-
label: ( localize(
|
|
90
|
+
label: ( localize(8388, "contributed"))
|
|
91
91
|
});
|
|
92
92
|
}
|
|
93
93
|
configManager.getRecentDynamicConfigurations().forEach((
|
|
@@ -105,7 +105,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
105
105
|
},
|
|
106
106
|
buttons: [{
|
|
107
107
|
iconClass: ThemeIcon.asClassName(debugRemoveConfig),
|
|
108
|
-
tooltip: ( localize(
|
|
108
|
+
tooltip: ( localize(8389, "Remove Launch Configuration"))
|
|
109
109
|
}],
|
|
110
110
|
trigger: () => {
|
|
111
111
|
configManager.removeRecentDynamicConfigurations(name, type);
|
|
@@ -134,7 +134,7 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
134
134
|
dynamicProviders.forEach(provider => {
|
|
135
135
|
picks.push({
|
|
136
136
|
label: `$(folder) ${provider.label}...`,
|
|
137
|
-
ariaLabel: ( localize(
|
|
137
|
+
ariaLabel: ( localize(8390, "{0} contributed configurations", provider.label)),
|
|
138
138
|
accept: async () => {
|
|
139
139
|
const pick = await provider.pick();
|
|
140
140
|
if (pick) {
|
|
@@ -152,11 +152,11 @@ let StartDebugQuickAccessProvider = class StartDebugQuickAccessProvider extends
|
|
|
152
152
|
if (visibleLaunches.length > 0) {
|
|
153
153
|
picks.push({
|
|
154
154
|
type: "separator",
|
|
155
|
-
label: ( localize(
|
|
155
|
+
label: ( localize(8391, "configure"))
|
|
156
156
|
});
|
|
157
157
|
}
|
|
158
158
|
for (const launch of visibleLaunches) {
|
|
159
|
-
const label = this.contextService.getWorkbenchState() === WorkbenchState.WORKSPACE ? ( localize(
|
|
159
|
+
const label = this.contextService.getWorkbenchState() === WorkbenchState.WORKSPACE ? ( localize(8392, "Add Config ({0})...", launch.name)) : ( localize(8393, "Add Configuration..."));
|
|
160
160
|
picks.push({
|
|
161
161
|
label,
|
|
162
162
|
description: this.contextService.getWorkbenchState() === WorkbenchState.WORKSPACE ? launch.name : "",
|