@codingame/monaco-vscode-debug-service-override 1.83.4 → 1.83.6
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/baseDebugView.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +193 -86
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +44 -10
- package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +254 -60
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +10 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/callStackView.js +98 -28
- package/vscode/src/vs/workbench/contrib/debug/browser/debug.contribution.js +429 -185
- package/vscode/src/vs/workbench/contrib/debug/browser/debugActionViewItems.js +25 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/debugAdapterManager.js +62 -11
- package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +130 -32
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConfigurationManager.js +20 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/debugConsoleQuickAccess.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorActions.js +105 -21
- package/vscode/src/vs/workbench/contrib/debug/browser/debugEditorContribution.js +10 -2
- package/vscode/src/vs/workbench/contrib/debug/browser/debugHover.js +18 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugQuickAccess.js +39 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/debugService.js +100 -24
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSession.js +58 -26
- package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +17 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugStatus.js +12 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/debugTaskRunner.js +80 -17
- package/vscode/src/vs/workbench/contrib/debug/browser/debugToolBar.js +15 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/debugViewlet.js +8 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/disassemblyView.js +36 -8
- package/vscode/src/vs/workbench/contrib/debug/browser/exceptionWidget.js +24 -13
- package/vscode/src/vs/workbench/contrib/debug/browser/linkDetector.js +33 -3
- package/vscode/src/vs/workbench/contrib/debug/browser/loadedScriptsView.js +34 -6
- package/vscode/src/vs/workbench/contrib/debug/browser/rawDebugSession.js +26 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/repl.js +48 -14
- package/vscode/src/vs/workbench/contrib/debug/browser/replViewer.js +31 -5
- package/vscode/src/vs/workbench/contrib/debug/browser/statusbarColorProvider.js +20 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/variablesView.js +40 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/watchExpressionsView.js +49 -9
- package/vscode/src/vs/workbench/contrib/debug/browser/welcomeView.js +5 -60
- package/vscode/src/vs/workbench/contrib/debug/common/debugContentProvider.js +18 -5
- package/vscode/src/vs/workbench/contrib/debug/common/debugLifecycle.js +15 -3
- package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +32 -22
- package/vscode/src/vs/workbench/contrib/debug/common/debugSchemas.js +205 -41
- package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debugger.js +51 -10
- package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +5 -1
- package/vscode/src/vs/workbench/services/configurationResolver/browser/baseConfigurationResolverService.js +18 -7
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverSchema.js +80 -16
- package/vscode/src/vs/workbench/services/configurationResolver/common/configurationResolverUtils.js +5 -1
|
@@ -3,30 +3,26 @@ import { IThemeService } from 'monaco-editor/esm/vs/platform/theme/common/themeS
|
|
|
3
3
|
import { IKeybindingService } from 'monaco-editor/esm/vs/platform/keybinding/common/keybinding.js';
|
|
4
4
|
import { IContextMenuService } from 'monaco-editor/esm/vs/platform/contextview/browser/contextView.js';
|
|
5
5
|
import { IConfigurationService } from 'monaco-editor/esm/vs/platform/configuration/common/configuration.js';
|
|
6
|
-
import { RawContextKey,
|
|
6
|
+
import { RawContextKey, IContextKeyService } from 'monaco-editor/esm/vs/platform/contextkey/common/contextkey.js';
|
|
7
7
|
import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
8
|
-
import {
|
|
8
|
+
import { IDebugService } from 'vscode/vscode/vs/workbench/contrib/debug/common/debug';
|
|
9
9
|
import { IEditorService } from 'vscode/vscode/vs/workbench/services/editor/common/editorService';
|
|
10
10
|
import { ViewPane } from 'vscode/vscode/vs/workbench/browser/parts/views/viewPane';
|
|
11
11
|
import { IInstantiationService } from 'monaco-editor/esm/vs/platform/instantiation/common/instantiation.js';
|
|
12
|
-
import {
|
|
13
|
-
import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
|
|
12
|
+
import { IViewDescriptorService } from 'vscode/vscode/vs/workbench/common/views';
|
|
14
13
|
import { IOpenerService } from 'monaco-editor/esm/vs/platform/opener/common/opener.js';
|
|
15
|
-
import { WorkbenchStateContext } from 'vscode/vscode/vs/workbench/common/contextkeys';
|
|
16
|
-
import { OpenFileFolderAction, OpenFileAction, OpenFolderAction } from 'vscode/vscode/vs/workbench/browser/actions/workspaceActions';
|
|
17
|
-
import { isMacintosh, isWeb } from 'monaco-editor/esm/vs/base/common/platform.js';
|
|
18
14
|
import { isCodeEditor } from 'monaco-editor/esm/vs/editor/browser/editorBrowser.js';
|
|
19
15
|
import { IStorageService } from 'monaco-editor/esm/vs/platform/storage/common/storage.js';
|
|
20
16
|
import { ITelemetryService } from 'monaco-editor/esm/vs/platform/telemetry/common/telemetry.js';
|
|
21
17
|
import { DisposableStore } from 'monaco-editor/esm/vs/base/common/lifecycle.js';
|
|
22
|
-
import { DEBUG_START_COMMAND_ID
|
|
18
|
+
import { DEBUG_START_COMMAND_ID } from './debugCommands.js';
|
|
23
19
|
|
|
24
20
|
const debugStartLanguageKey = 'debugStartLanguage';
|
|
25
21
|
const CONTEXT_DEBUG_START_LANGUAGE = ( new RawContextKey(debugStartLanguageKey, undefined));
|
|
26
22
|
const CONTEXT_DEBUGGER_INTERESTED_IN_ACTIVE_EDITOR = ( new RawContextKey('debuggerInterestedInActiveEditor', false));
|
|
27
23
|
let WelcomeView = class WelcomeView extends ViewPane {
|
|
28
24
|
static { this.ID = 'workbench.debug.welcome'; }
|
|
29
|
-
static { this.LABEL = localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', 'run', "Run"); }
|
|
25
|
+
static { this.LABEL = ( localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', 'run', "Run")); }
|
|
30
26
|
constructor(options, themeService, keybindingService, contextMenuService, configurationService, contextKeyService, debugService, editorService, instantiationService, viewDescriptorService, openerService, storageSevice, telemetryService) {
|
|
31
27
|
super(options, keybindingService, contextMenuService, configurationService, contextKeyService, viewDescriptorService, instantiationService, openerService, themeService, telemetryService);
|
|
32
28
|
this.debugService = debugService;
|
|
@@ -87,57 +83,6 @@ WelcomeView = ( __decorate([
|
|
|
87
83
|
( __param(11, IStorageService)),
|
|
88
84
|
( __param(12, ITelemetryService))
|
|
89
85
|
], WelcomeView));
|
|
90
|
-
const viewsRegistry = ( Registry.as(Extensions.ViewsRegistry));
|
|
91
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
92
|
-
content: localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', {
|
|
93
|
-
key: 'openAFileWhichCanBeDebugged',
|
|
94
|
-
comment: [
|
|
95
|
-
'Please do not translate the word "command", it is part of our internal syntax which must not change',
|
|
96
|
-
'{Locked="](command:{0})"}'
|
|
97
|
-
]
|
|
98
|
-
}, "[Open a file](command:{0}) which can be debugged or run.", (isMacintosh && !isWeb) ? OpenFileFolderAction.ID : OpenFileAction.ID),
|
|
99
|
-
when: ( ContextKeyExpr.and(CONTEXT_DEBUGGERS_AVAILABLE, ( CONTEXT_DEBUGGER_INTERESTED_IN_ACTIVE_EDITOR.toNegated()))),
|
|
100
|
-
group: ViewContentGroups.Open,
|
|
101
|
-
}));
|
|
102
86
|
let debugKeybindingLabel = '';
|
|
103
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
104
|
-
content: `[${localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', 'runAndDebugAction', "Run and Debug")}${debugKeybindingLabel}](command:${DEBUG_START_COMMAND_ID})`,
|
|
105
|
-
when: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
106
|
-
group: ViewContentGroups.Debug,
|
|
107
|
-
order: 1
|
|
108
|
-
}));
|
|
109
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
110
|
-
content: `[${localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', 'detectThenRunAndDebug', "Show all automatic debug configurations")}](command:${SELECT_AND_START_ID}).`,
|
|
111
|
-
when: CONTEXT_DEBUGGERS_AVAILABLE,
|
|
112
|
-
group: ViewContentGroups.Debug,
|
|
113
|
-
order: 10
|
|
114
|
-
}));
|
|
115
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
116
|
-
content: localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', {
|
|
117
|
-
key: 'customizeRunAndDebug',
|
|
118
|
-
comment: [
|
|
119
|
-
'Please do not translate the word "command", it is part of our internal syntax which must not change',
|
|
120
|
-
'{Locked="](command:{0})"}'
|
|
121
|
-
]
|
|
122
|
-
}, "To customize Run and Debug [create a launch.json file](command:{0}).", DEBUG_CONFIGURE_COMMAND_ID),
|
|
123
|
-
when: ( ContextKeyExpr.and(CONTEXT_DEBUGGERS_AVAILABLE, ( WorkbenchStateContext.notEqualsTo('empty')))),
|
|
124
|
-
group: ViewContentGroups.Debug
|
|
125
|
-
}));
|
|
126
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
127
|
-
content: localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', {
|
|
128
|
-
key: 'customizeRunAndDebugOpenFolder',
|
|
129
|
-
comment: [
|
|
130
|
-
'Please do not translate the word "commmand", it is part of our internal syntax which must not change',
|
|
131
|
-
'{Locked="](command:{0})"}'
|
|
132
|
-
]
|
|
133
|
-
}, "To customize Run and Debug, [open a folder](command:{0}) and create a launch.json file.", (isMacintosh && !isWeb) ? OpenFileFolderAction.ID : OpenFolderAction.ID),
|
|
134
|
-
when: ( ContextKeyExpr.and(CONTEXT_DEBUGGERS_AVAILABLE, ( WorkbenchStateContext.isEqualTo('empty')))),
|
|
135
|
-
group: ViewContentGroups.Debug
|
|
136
|
-
}));
|
|
137
|
-
( viewsRegistry.registerViewWelcomeContent(WelcomeView.ID, {
|
|
138
|
-
content: localizeWithPath('vs/workbench/contrib/debug/browser/welcomeView', 'allDebuggersDisabled', "All debug extensions are disabled. Enable a debug extension or install a new one from the Marketplace."),
|
|
139
|
-
when: ( CONTEXT_DEBUG_EXTENSION_AVAILABLE.toNegated()),
|
|
140
|
-
group: ViewContentGroups.Debug
|
|
141
|
-
}));
|
|
142
87
|
|
|
143
88
|
export { WelcomeView };
|
|
@@ -48,16 +48,29 @@ let DebugContentProvider = class DebugContentProvider {
|
|
|
48
48
|
session = this.debugService.getViewModel().focusedSession;
|
|
49
49
|
}
|
|
50
50
|
if (!session) {
|
|
51
|
-
return Promise.reject(( new ErrorNoTelemetry(
|
|
52
|
-
|
|
53
|
-
|
|
51
|
+
return Promise.reject(( new ErrorNoTelemetry(( localizeWithPath(
|
|
52
|
+
'vs/workbench/contrib/debug/common/debugContentProvider',
|
|
53
|
+
'unable',
|
|
54
|
+
"Unable to resolve the resource without a debug session"
|
|
55
|
+
)))));
|
|
54
56
|
}
|
|
55
57
|
const createErrModel = (errMsg) => {
|
|
56
58
|
this.debugService.sourceIsNotAvailable(resource);
|
|
57
59
|
const languageSelection = this.languageService.createById(PLAINTEXT_LANGUAGE_ID);
|
|
58
60
|
const message = errMsg
|
|
59
|
-
? localizeWithPath(
|
|
60
|
-
|
|
61
|
+
? ( localizeWithPath(
|
|
62
|
+
'vs/workbench/contrib/debug/common/debugContentProvider',
|
|
63
|
+
'canNotResolveSourceWithError',
|
|
64
|
+
"Could not load source '{0}': {1}.",
|
|
65
|
+
resource.path,
|
|
66
|
+
errMsg
|
|
67
|
+
))
|
|
68
|
+
: ( localizeWithPath(
|
|
69
|
+
'vs/workbench/contrib/debug/common/debugContentProvider',
|
|
70
|
+
'canNotResolveSource',
|
|
71
|
+
"Could not load source '{0}'.",
|
|
72
|
+
resource.path
|
|
73
|
+
));
|
|
61
74
|
return this.modelService.createModel(message, languageSelection, resource);
|
|
62
75
|
};
|
|
63
76
|
return session.loadSource(resource).then(response => {
|
|
@@ -27,15 +27,27 @@ let DebugLifecycle = class DebugLifecycle {
|
|
|
27
27
|
async showWindowCloseConfirmation(numSessions) {
|
|
28
28
|
let message;
|
|
29
29
|
if (numSessions === 1) {
|
|
30
|
-
message = nls.localizeWithPath(
|
|
30
|
+
message = ( nls.localizeWithPath(
|
|
31
|
+
'vs/workbench/contrib/debug/common/debugLifecycle',
|
|
32
|
+
'debug.debugSessionCloseConfirmationSingular',
|
|
33
|
+
"There is an active debug session, are you sure you want to stop it?"
|
|
34
|
+
));
|
|
31
35
|
}
|
|
32
36
|
else {
|
|
33
|
-
message = nls.localizeWithPath(
|
|
37
|
+
message = ( nls.localizeWithPath(
|
|
38
|
+
'vs/workbench/contrib/debug/common/debugLifecycle',
|
|
39
|
+
'debug.debugSessionCloseConfirmationPlural',
|
|
40
|
+
"There are active debug sessions, are you sure you want to stop them?"
|
|
41
|
+
));
|
|
34
42
|
}
|
|
35
43
|
const res = await this.dialogService.confirm({
|
|
36
44
|
message,
|
|
37
45
|
type: 'warning',
|
|
38
|
-
primaryButton: nls.localizeWithPath(
|
|
46
|
+
primaryButton: ( nls.localizeWithPath(
|
|
47
|
+
'vs/workbench/contrib/debug/common/debugLifecycle',
|
|
48
|
+
{ key: 'debug.stop', comment: ['&& denotes a mnemonic'] },
|
|
49
|
+
"&&Stop Debugging"
|
|
50
|
+
))
|
|
39
51
|
});
|
|
40
52
|
return !res.confirmed;
|
|
41
53
|
}
|
|
@@ -153,22 +153,11 @@ class ExpressionContainer {
|
|
|
153
153
|
idDuplicationIndex
|
|
154
154
|
));
|
|
155
155
|
}
|
|
156
|
-
return ( new Variable(
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
'',
|
|
162
|
-
undefined,
|
|
163
|
-
nls.localizeWithPath('vs/workbench/contrib/debug/common/debugModel', 'invalidVariableAttributes', "Invalid variable attributes"),
|
|
164
|
-
0,
|
|
165
|
-
0,
|
|
166
|
-
undefined,
|
|
167
|
-
{ kind: 'virtual' },
|
|
168
|
-
undefined,
|
|
169
|
-
undefined,
|
|
170
|
-
false
|
|
171
|
-
));
|
|
156
|
+
return ( new Variable(this.session, this.threadId, this, 0, '', undefined, ( nls.localizeWithPath(
|
|
157
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
158
|
+
'invalidVariableAttributes',
|
|
159
|
+
"Invalid variable attributes"
|
|
160
|
+
)), 0, 0, undefined, { kind: 'virtual' }, undefined, undefined, false));
|
|
172
161
|
}));
|
|
173
162
|
if (this.session.autoExpandLazyVariables) {
|
|
174
163
|
await Promise.all(( vars.map(v => v.presentationHint?.lazy && v.evaluateLazy())));
|
|
@@ -208,7 +197,11 @@ class ExpressionContainer {
|
|
|
208
197
|
}
|
|
209
198
|
async evaluateExpression(expression, session, stackFrame, context, keepLazyVars = false) {
|
|
210
199
|
if (!session || (!stackFrame && context !== 'repl')) {
|
|
211
|
-
this.value = context === 'repl' ? nls.localizeWithPath(
|
|
200
|
+
this.value = context === 'repl' ? ( nls.localizeWithPath(
|
|
201
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
202
|
+
'startDebugFirst',
|
|
203
|
+
"Please start a debug session to evaluate expressions"
|
|
204
|
+
)) : Expression.DEFAULT_VALUE;
|
|
212
205
|
this.reference = 0;
|
|
213
206
|
return false;
|
|
214
207
|
}
|
|
@@ -247,7 +240,11 @@ function handleSetResponse(expression, response) {
|
|
|
247
240
|
}
|
|
248
241
|
}
|
|
249
242
|
class Expression extends ExpressionContainer {
|
|
250
|
-
static { this.DEFAULT_VALUE = nls.localizeWithPath(
|
|
243
|
+
static { this.DEFAULT_VALUE = ( nls.localizeWithPath(
|
|
244
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
245
|
+
'notAvailable',
|
|
246
|
+
"not available"
|
|
247
|
+
)); }
|
|
251
248
|
constructor(name, id = generateUuid()) {
|
|
252
249
|
super(undefined, undefined, 0, id);
|
|
253
250
|
this.name = name;
|
|
@@ -465,9 +462,18 @@ class Thread {
|
|
|
465
462
|
get stateLabel() {
|
|
466
463
|
if (this.stoppedDetails) {
|
|
467
464
|
return this.stoppedDetails.description ||
|
|
468
|
-
(this.stoppedDetails.reason ?
|
|
469
|
-
|
|
470
|
-
|
|
465
|
+
(this.stoppedDetails.reason ? ( nls.localizeWithPath(
|
|
466
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
467
|
+
{ key: 'pausedOn', comment: ['indicates reason for program being paused'] },
|
|
468
|
+
"Paused on {0}",
|
|
469
|
+
this.stoppedDetails.reason
|
|
470
|
+
)) : ( nls.localizeWithPath('vs/workbench/contrib/debug/common/debugModel', 'paused', "Paused")));
|
|
471
|
+
}
|
|
472
|
+
return ( nls.localizeWithPath(
|
|
473
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
474
|
+
{ key: 'running', comment: ['indicates state'] },
|
|
475
|
+
"Running"
|
|
476
|
+
));
|
|
471
477
|
}
|
|
472
478
|
async fetchCallStack(levels = 20) {
|
|
473
479
|
if (this.stopped) {
|
|
@@ -739,7 +745,11 @@ class Breakpoint extends BaseBreakpoint {
|
|
|
739
745
|
}
|
|
740
746
|
get message() {
|
|
741
747
|
if (this.textFileService.isDirty(this.uri)) {
|
|
742
|
-
return nls.localizeWithPath(
|
|
748
|
+
return ( nls.localizeWithPath(
|
|
749
|
+
'vs/workbench/contrib/debug/common/debugModel',
|
|
750
|
+
'breakpointDirtydHover',
|
|
751
|
+
"Unverified breakpoint. File is modified, please restart debug session."
|
|
752
|
+
));
|
|
743
753
|
}
|
|
744
754
|
return super.message;
|
|
745
755
|
}
|