@codingame/monaco-vscode-keybindings-service-override 28.4.1 → 29.1.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 +3 -3
- package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +3 -3
- package/vscode/src/vs/workbench/contrib/commands/common/commands.contribution.js +5 -5
- package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/preferences/browser/keybindingsEditorContribution.js +3 -3
- package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +150 -146
- package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +24 -24
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +2 -2
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.darwin.d.ts +2 -1
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.darwin.js +5 -2
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.linux.d.ts +2 -1
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.linux.js +5 -2
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.win.d.ts +2 -1
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayouts/en.win.js +5 -2
|
@@ -20,190 +20,194 @@ import { IKeybindingService } from '@codingame/monaco-vscode-api/vscode/vs/platf
|
|
|
20
20
|
const apiMenus = [{
|
|
21
21
|
key: "commandPalette",
|
|
22
22
|
id: MenuId.CommandPalette,
|
|
23
|
-
description: ( localize(
|
|
23
|
+
description: ( localize(15576, "The Command Palette")),
|
|
24
24
|
supportsSubmenus: false
|
|
25
25
|
}, {
|
|
26
26
|
key: "touchBar",
|
|
27
27
|
id: MenuId.TouchBarContext,
|
|
28
|
-
description: ( localize(
|
|
28
|
+
description: ( localize(15577, "The touch bar (macOS only)")),
|
|
29
29
|
supportsSubmenus: false
|
|
30
30
|
}, {
|
|
31
31
|
key: "editor/title",
|
|
32
32
|
id: MenuId.EditorTitle,
|
|
33
|
-
description: ( localize(
|
|
33
|
+
description: ( localize(15578, "The editor title menu"))
|
|
34
|
+
}, {
|
|
35
|
+
key: "modalEditor/editorTitle",
|
|
36
|
+
id: MenuId.ModalEditorEditorTitle,
|
|
37
|
+
description: ( localize(15579, "The editor title menu in the modal editor"))
|
|
34
38
|
}, {
|
|
35
39
|
key: "editor/title/run",
|
|
36
40
|
id: MenuId.EditorTitleRun,
|
|
37
|
-
description: ( localize(
|
|
41
|
+
description: ( localize(15580, "Run submenu inside the editor title menu"))
|
|
38
42
|
}, {
|
|
39
43
|
key: "editor/context",
|
|
40
44
|
id: MenuId.EditorContext,
|
|
41
|
-
description: ( localize(
|
|
45
|
+
description: ( localize(15581, "The editor context menu"))
|
|
42
46
|
}, {
|
|
43
47
|
key: "editor/context/copy",
|
|
44
48
|
id: MenuId.EditorContextCopy,
|
|
45
|
-
description: ( localize(
|
|
49
|
+
description: ( localize(15582, "'Copy as' submenu in the editor context menu"))
|
|
46
50
|
}, {
|
|
47
51
|
key: "editor/context/share",
|
|
48
52
|
id: MenuId.EditorContextShare,
|
|
49
|
-
description: ( localize(
|
|
53
|
+
description: ( localize(15583, "'Share' submenu in the editor context menu")),
|
|
50
54
|
proposed: "contribShareMenu"
|
|
51
55
|
}, {
|
|
52
56
|
key: "explorer/context",
|
|
53
57
|
id: MenuId.ExplorerContext,
|
|
54
|
-
description: ( localize(
|
|
58
|
+
description: ( localize(15584, "The file explorer context menu"))
|
|
55
59
|
}, {
|
|
56
60
|
key: "explorer/context/share",
|
|
57
61
|
id: MenuId.ExplorerContextShare,
|
|
58
|
-
description: ( localize(
|
|
62
|
+
description: ( localize(15585, "'Share' submenu in the file explorer context menu")),
|
|
59
63
|
proposed: "contribShareMenu"
|
|
60
64
|
}, {
|
|
61
65
|
key: "editor/title/context",
|
|
62
66
|
id: MenuId.EditorTitleContext,
|
|
63
|
-
description: ( localize(
|
|
67
|
+
description: ( localize(15586, "The editor tabs context menu"))
|
|
64
68
|
}, {
|
|
65
69
|
key: "editor/title/context/share",
|
|
66
70
|
id: MenuId.EditorTitleContextShare,
|
|
67
|
-
description: ( localize(
|
|
71
|
+
description: ( localize(15587, "'Share' submenu inside the editor title context menu")),
|
|
68
72
|
proposed: "contribShareMenu"
|
|
69
73
|
}, {
|
|
70
74
|
key: "debug/callstack/context",
|
|
71
75
|
id: MenuId.DebugCallStackContext,
|
|
72
|
-
description: ( localize(
|
|
76
|
+
description: ( localize(15588, "The debug callstack view context menu"))
|
|
73
77
|
}, {
|
|
74
78
|
key: "debug/variables/context",
|
|
75
79
|
id: MenuId.DebugVariablesContext,
|
|
76
|
-
description: ( localize(
|
|
80
|
+
description: ( localize(15589, "The debug variables view context menu"))
|
|
77
81
|
}, {
|
|
78
82
|
key: "debug/watch/context",
|
|
79
83
|
id: MenuId.DebugWatchContext,
|
|
80
|
-
description: ( localize(
|
|
84
|
+
description: ( localize(15590, "The debug watch view context menu"))
|
|
81
85
|
}, {
|
|
82
86
|
key: "debug/toolBar",
|
|
83
87
|
id: MenuId.DebugToolBar,
|
|
84
|
-
description: ( localize(
|
|
88
|
+
description: ( localize(15591, "The debug toolbar menu"))
|
|
85
89
|
}, {
|
|
86
90
|
key: "debug/createConfiguration",
|
|
87
91
|
id: MenuId.DebugCreateConfiguration,
|
|
88
92
|
proposed: "contribDebugCreateConfiguration",
|
|
89
|
-
description: ( localize(
|
|
93
|
+
description: ( localize(15592, "The debug create configuration menu"))
|
|
90
94
|
}, {
|
|
91
95
|
key: "notebook/variables/context",
|
|
92
96
|
id: MenuId.NotebookVariablesContext,
|
|
93
|
-
description: ( localize(
|
|
97
|
+
description: ( localize(15593, "The notebook variables view context menu"))
|
|
94
98
|
}, {
|
|
95
99
|
key: "menuBar/home",
|
|
96
100
|
id: MenuId.MenubarHomeMenu,
|
|
97
|
-
description: ( localize(
|
|
101
|
+
description: ( localize(15594, "The home indicator context menu (web only)")),
|
|
98
102
|
proposed: "contribMenuBarHome",
|
|
99
103
|
supportsSubmenus: false
|
|
100
104
|
}, {
|
|
101
105
|
key: "menuBar/edit/copy",
|
|
102
106
|
id: MenuId.MenubarCopy,
|
|
103
|
-
description: ( localize(
|
|
107
|
+
description: ( localize(15595, "'Copy as' submenu in the top level Edit menu"))
|
|
104
108
|
}, {
|
|
105
109
|
key: "scm/title",
|
|
106
110
|
id: MenuId.SCMTitle,
|
|
107
|
-
description: ( localize(
|
|
111
|
+
description: ( localize(15596, "The Source Control title menu"))
|
|
108
112
|
}, {
|
|
109
113
|
key: "scm/sourceControl",
|
|
110
114
|
id: MenuId.SCMSourceControl,
|
|
111
|
-
description: ( localize(
|
|
115
|
+
description: ( localize(15597, "The Source Control menu"))
|
|
112
116
|
}, {
|
|
113
117
|
key: "scm/repositories/title",
|
|
114
118
|
id: MenuId.SCMSourceControlTitle,
|
|
115
|
-
description: ( localize(
|
|
119
|
+
description: ( localize(15598, "The Source Control Repositories title menu")),
|
|
116
120
|
proposed: "contribSourceControlTitleMenu"
|
|
117
121
|
}, {
|
|
118
122
|
key: "scm/repository",
|
|
119
123
|
id: MenuId.SCMSourceControlInline,
|
|
120
|
-
description: ( localize(
|
|
124
|
+
description: ( localize(15599, "The Source Control repository menu"))
|
|
121
125
|
}, {
|
|
122
126
|
key: "scm/resourceState/context",
|
|
123
127
|
id: MenuId.SCMResourceContext,
|
|
124
|
-
description: ( localize(
|
|
128
|
+
description: ( localize(15600, "The Source Control resource state context menu"))
|
|
125
129
|
}, {
|
|
126
130
|
key: "scm/resourceFolder/context",
|
|
127
131
|
id: MenuId.SCMResourceFolderContext,
|
|
128
|
-
description: ( localize(
|
|
132
|
+
description: ( localize(15601, "The Source Control resource folder context menu"))
|
|
129
133
|
}, {
|
|
130
134
|
key: "scm/resourceGroup/context",
|
|
131
135
|
id: MenuId.SCMResourceGroupContext,
|
|
132
|
-
description: ( localize(
|
|
136
|
+
description: ( localize(15602, "The Source Control resource group context menu"))
|
|
133
137
|
}, {
|
|
134
138
|
key: "scm/change/title",
|
|
135
139
|
id: MenuId.SCMChangeContext,
|
|
136
|
-
description: ( localize(
|
|
140
|
+
description: ( localize(15603, "The Source Control inline change menu"))
|
|
137
141
|
}, {
|
|
138
142
|
key: "scm/inputBox",
|
|
139
143
|
id: MenuId.SCMInputBox,
|
|
140
|
-
description: ( localize(
|
|
144
|
+
description: ( localize(15604, "The Source Control input box menu")),
|
|
141
145
|
proposed: "contribSourceControlInputBoxMenu"
|
|
142
146
|
}, {
|
|
143
147
|
key: "scm/history/title",
|
|
144
148
|
id: MenuId.SCMHistoryTitle,
|
|
145
|
-
description: ( localize(
|
|
149
|
+
description: ( localize(15605, "The Source Control History title menu")),
|
|
146
150
|
proposed: "contribSourceControlHistoryTitleMenu"
|
|
147
151
|
}, {
|
|
148
152
|
key: "scm/historyItem/context",
|
|
149
153
|
id: MenuId.SCMHistoryItemContext,
|
|
150
|
-
description: ( localize(
|
|
154
|
+
description: ( localize(15606, "The Source Control history item context menu")),
|
|
151
155
|
proposed: "contribSourceControlHistoryItemMenu"
|
|
152
156
|
}, {
|
|
153
157
|
key: "scm/historyItemRef/context",
|
|
154
158
|
id: MenuId.SCMHistoryItemRefContext,
|
|
155
|
-
description: ( localize(
|
|
159
|
+
description: ( localize(15607, "The Source Control history item reference context menu")),
|
|
156
160
|
proposed: "contribSourceControlHistoryItemMenu"
|
|
157
161
|
}, {
|
|
158
162
|
key: "scm/artifactGroup/context",
|
|
159
163
|
id: MenuId.SCMArtifactGroupContext,
|
|
160
|
-
description: ( localize(
|
|
164
|
+
description: ( localize(15608, "The Source Control artifact group context menu")),
|
|
161
165
|
proposed: "contribSourceControlArtifactGroupMenu"
|
|
162
166
|
}, {
|
|
163
167
|
key: "scm/artifact/context",
|
|
164
168
|
id: MenuId.SCMArtifactContext,
|
|
165
|
-
description: ( localize(
|
|
169
|
+
description: ( localize(15609, "The Source Control artifact context menu")),
|
|
166
170
|
proposed: "contribSourceControlArtifactMenu"
|
|
167
171
|
}, {
|
|
168
172
|
key: "statusBar/remoteIndicator",
|
|
169
173
|
id: MenuId.StatusBarRemoteIndicatorMenu,
|
|
170
|
-
description: ( localize(
|
|
174
|
+
description: ( localize(15610, "The remote indicator menu in the status bar")),
|
|
171
175
|
supportsSubmenus: false
|
|
172
176
|
}, {
|
|
173
177
|
key: "terminal/context",
|
|
174
178
|
id: MenuId.TerminalInstanceContext,
|
|
175
|
-
description: ( localize(
|
|
179
|
+
description: ( localize(15611, "The terminal context menu"))
|
|
176
180
|
}, {
|
|
177
181
|
key: "terminal/title/context",
|
|
178
182
|
id: MenuId.TerminalTabContext,
|
|
179
|
-
description: ( localize(
|
|
183
|
+
description: ( localize(15612, "The terminal tabs context menu"))
|
|
180
184
|
}, {
|
|
181
185
|
key: "view/title",
|
|
182
186
|
id: MenuId.ViewTitle,
|
|
183
|
-
description: ( localize(
|
|
187
|
+
description: ( localize(15613, "The contributed view title menu"))
|
|
184
188
|
}, {
|
|
185
189
|
key: "viewContainer/title",
|
|
186
190
|
id: MenuId.ViewContainerTitle,
|
|
187
|
-
description: ( localize(
|
|
191
|
+
description: ( localize(15614, "The contributed view container title menu")),
|
|
188
192
|
proposed: "contribViewContainerTitle"
|
|
189
193
|
}, {
|
|
190
194
|
key: "view/item/context",
|
|
191
195
|
id: MenuId.ViewItemContext,
|
|
192
|
-
description: ( localize(
|
|
196
|
+
description: ( localize(15615, "The contributed view item context menu"))
|
|
193
197
|
}, {
|
|
194
198
|
key: "comments/comment/editorActions",
|
|
195
199
|
id: MenuId.CommentEditorActions,
|
|
196
|
-
description: ( localize(
|
|
200
|
+
description: ( localize(15616, "The contributed comment editor actions")),
|
|
197
201
|
proposed: "contribCommentEditorActionsMenu"
|
|
198
202
|
}, {
|
|
199
203
|
key: "comments/commentThread/title",
|
|
200
204
|
id: MenuId.CommentThreadTitle,
|
|
201
|
-
description: ( localize(
|
|
205
|
+
description: ( localize(15617, "The contributed comment thread title menu"))
|
|
202
206
|
}, {
|
|
203
207
|
key: "comments/commentThread/context",
|
|
204
208
|
id: MenuId.CommentThreadActions,
|
|
205
209
|
description: ( localize(
|
|
206
|
-
|
|
210
|
+
15618,
|
|
207
211
|
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
208
212
|
)),
|
|
209
213
|
supportsSubmenus: false
|
|
@@ -211,7 +215,7 @@ const apiMenus = [{
|
|
|
211
215
|
key: "comments/commentThread/additionalActions",
|
|
212
216
|
id: MenuId.CommentThreadAdditionalActions,
|
|
213
217
|
description: ( localize(
|
|
214
|
-
|
|
218
|
+
15618,
|
|
215
219
|
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
216
220
|
)),
|
|
217
221
|
supportsSubmenus: true,
|
|
@@ -220,19 +224,19 @@ const apiMenus = [{
|
|
|
220
224
|
key: "comments/commentThread/title/context",
|
|
221
225
|
id: MenuId.CommentThreadTitleContext,
|
|
222
226
|
description: ( localize(
|
|
223
|
-
|
|
227
|
+
15619,
|
|
224
228
|
"The contributed comment thread title's peek context menu, rendered as a right click menu on the comment thread's peek title."
|
|
225
229
|
)),
|
|
226
230
|
proposed: "contribCommentPeekContext"
|
|
227
231
|
}, {
|
|
228
232
|
key: "comments/comment/title",
|
|
229
233
|
id: MenuId.CommentTitle,
|
|
230
|
-
description: ( localize(
|
|
234
|
+
description: ( localize(15620, "The contributed comment title menu"))
|
|
231
235
|
}, {
|
|
232
236
|
key: "comments/comment/context",
|
|
233
237
|
id: MenuId.CommentActions,
|
|
234
238
|
description: ( localize(
|
|
235
|
-
|
|
239
|
+
15621,
|
|
236
240
|
"The contributed comment context menu, rendered as buttons below the comment editor"
|
|
237
241
|
)),
|
|
238
242
|
supportsSubmenus: false
|
|
@@ -240,211 +244,211 @@ const apiMenus = [{
|
|
|
240
244
|
key: "comments/commentThread/comment/context",
|
|
241
245
|
id: MenuId.CommentThreadCommentContext,
|
|
242
246
|
description: ( localize(
|
|
243
|
-
|
|
247
|
+
15622,
|
|
244
248
|
"The contributed comment context menu, rendered as a right click menu on the an individual comment in the comment thread's peek view."
|
|
245
249
|
)),
|
|
246
250
|
proposed: "contribCommentPeekContext"
|
|
247
251
|
}, {
|
|
248
252
|
key: "commentsView/commentThread/context",
|
|
249
253
|
id: MenuId.CommentsViewThreadActions,
|
|
250
|
-
description: ( localize(
|
|
254
|
+
description: ( localize(15623, "The contributed comment thread context menu in the comments view")),
|
|
251
255
|
proposed: "contribCommentsViewThreadMenus"
|
|
252
256
|
}, {
|
|
253
257
|
key: "notebook/toolbar",
|
|
254
258
|
id: MenuId.NotebookToolbar,
|
|
255
|
-
description: ( localize(
|
|
259
|
+
description: ( localize(15624, "The contributed notebook toolbar menu"))
|
|
256
260
|
}, {
|
|
257
261
|
key: "notebook/kernelSource",
|
|
258
262
|
id: MenuId.NotebookKernelSource,
|
|
259
|
-
description: ( localize(
|
|
263
|
+
description: ( localize(15625, "The contributed notebook kernel sources menu")),
|
|
260
264
|
proposed: "notebookKernelSource"
|
|
261
265
|
}, {
|
|
262
266
|
key: "notebook/cell/title",
|
|
263
267
|
id: MenuId.NotebookCellTitle,
|
|
264
|
-
description: ( localize(
|
|
268
|
+
description: ( localize(15626, "The contributed notebook cell title menu"))
|
|
265
269
|
}, {
|
|
266
270
|
key: "notebook/cell/execute",
|
|
267
271
|
id: MenuId.NotebookCellExecute,
|
|
268
|
-
description: ( localize(
|
|
272
|
+
description: ( localize(15627, "The contributed notebook cell execution menu"))
|
|
269
273
|
}, {
|
|
270
274
|
key: "interactive/toolbar",
|
|
271
275
|
id: MenuId.InteractiveToolbar,
|
|
272
|
-
description: ( localize(
|
|
276
|
+
description: ( localize(15628, "The contributed interactive toolbar menu"))
|
|
273
277
|
}, {
|
|
274
278
|
key: "interactive/cell/title",
|
|
275
279
|
id: MenuId.InteractiveCellTitle,
|
|
276
|
-
description: ( localize(
|
|
280
|
+
description: ( localize(15629, "The contributed interactive cell title menu"))
|
|
277
281
|
}, {
|
|
278
282
|
key: "issue/reporter",
|
|
279
283
|
id: MenuId.IssueReporter,
|
|
280
|
-
description: ( localize(
|
|
284
|
+
description: ( localize(15630, "The contributed issue reporter menu"))
|
|
281
285
|
}, {
|
|
282
286
|
key: "testing/item/context",
|
|
283
287
|
id: MenuId.TestItem,
|
|
284
|
-
description: ( localize(
|
|
288
|
+
description: ( localize(15631, "The contributed test item menu"))
|
|
285
289
|
}, {
|
|
286
290
|
key: "testing/item/gutter",
|
|
287
291
|
id: MenuId.TestItemGutter,
|
|
288
|
-
description: ( localize(
|
|
292
|
+
description: ( localize(15632, "The menu for a gutter decoration for a test item"))
|
|
289
293
|
}, {
|
|
290
294
|
key: "testing/profiles/context",
|
|
291
295
|
id: MenuId.TestProfilesContext,
|
|
292
|
-
description: ( localize(
|
|
296
|
+
description: ( localize(15633, "The menu for configuring testing profiles."))
|
|
293
297
|
}, {
|
|
294
298
|
key: "testing/item/result",
|
|
295
299
|
id: MenuId.TestPeekElement,
|
|
296
|
-
description: ( localize(
|
|
300
|
+
description: ( localize(15634, "The menu for an item in the Test Results view or peek."))
|
|
297
301
|
}, {
|
|
298
302
|
key: "testing/message/context",
|
|
299
303
|
id: MenuId.TestMessageContext,
|
|
300
304
|
description: ( localize(
|
|
301
|
-
|
|
305
|
+
15635,
|
|
302
306
|
"A prominent button overlaying editor content where the message is displayed"
|
|
303
307
|
))
|
|
304
308
|
}, {
|
|
305
309
|
key: "testing/message/content",
|
|
306
310
|
id: MenuId.TestMessageContent,
|
|
307
|
-
description: ( localize(
|
|
311
|
+
description: ( localize(15636, "Context menu for the message in the results tree"))
|
|
308
312
|
}, {
|
|
309
313
|
key: "extension/context",
|
|
310
314
|
id: MenuId.ExtensionContext,
|
|
311
|
-
description: ( localize(
|
|
315
|
+
description: ( localize(15637, "The extension context menu"))
|
|
312
316
|
}, {
|
|
313
317
|
key: "timeline/title",
|
|
314
318
|
id: MenuId.TimelineTitle,
|
|
315
|
-
description: ( localize(
|
|
319
|
+
description: ( localize(15638, "The Timeline view title menu"))
|
|
316
320
|
}, {
|
|
317
321
|
key: "timeline/item/context",
|
|
318
322
|
id: MenuId.TimelineItemContext,
|
|
319
|
-
description: ( localize(
|
|
323
|
+
description: ( localize(15639, "The Timeline view item context menu"))
|
|
320
324
|
}, {
|
|
321
325
|
key: "ports/item/context",
|
|
322
326
|
id: MenuId.TunnelContext,
|
|
323
|
-
description: ( localize(
|
|
327
|
+
description: ( localize(15640, "The Ports view item context menu"))
|
|
324
328
|
}, {
|
|
325
329
|
key: "ports/item/origin/inline",
|
|
326
330
|
id: MenuId.TunnelOriginInline,
|
|
327
|
-
description: ( localize(
|
|
331
|
+
description: ( localize(15641, "The Ports view item origin inline menu"))
|
|
328
332
|
}, {
|
|
329
333
|
key: "ports/item/port/inline",
|
|
330
334
|
id: MenuId.TunnelPortInline,
|
|
331
|
-
description: ( localize(
|
|
335
|
+
description: ( localize(15642, "The Ports view item port inline menu"))
|
|
332
336
|
}, {
|
|
333
337
|
key: "file/newFile",
|
|
334
338
|
id: MenuId.NewFile,
|
|
335
339
|
description: ( localize(
|
|
336
|
-
|
|
340
|
+
15643,
|
|
337
341
|
"The 'New File...' quick pick, shown on welcome page and File menu."
|
|
338
342
|
)),
|
|
339
343
|
supportsSubmenus: false
|
|
340
344
|
}, {
|
|
341
345
|
key: "webview/context",
|
|
342
346
|
id: MenuId.WebviewContext,
|
|
343
|
-
description: ( localize(
|
|
347
|
+
description: ( localize(15644, "The webview context menu"))
|
|
344
348
|
}, {
|
|
345
349
|
key: "file/share",
|
|
346
350
|
id: MenuId.MenubarShare,
|
|
347
|
-
description: ( localize(
|
|
351
|
+
description: ( localize(15645, "Share submenu shown in the top level File menu.")),
|
|
348
352
|
proposed: "contribShareMenu"
|
|
349
353
|
}, {
|
|
350
354
|
key: "editor/inlineCompletions/actions",
|
|
351
355
|
id: MenuId.InlineCompletionsActions,
|
|
352
|
-
description: ( localize(
|
|
356
|
+
description: ( localize(15646, "The actions shown when hovering on an inline completion")),
|
|
353
357
|
supportsSubmenus: false,
|
|
354
358
|
proposed: "inlineCompletionsAdditions"
|
|
355
359
|
}, {
|
|
356
360
|
key: "editor/content",
|
|
357
361
|
id: MenuId.EditorContent,
|
|
358
|
-
description: ( localize(
|
|
362
|
+
description: ( localize(15647, "The prominent button in an editor, overlays its content")),
|
|
359
363
|
proposed: "contribEditorContentMenu"
|
|
360
364
|
}, {
|
|
361
365
|
key: "editor/lineNumber/context",
|
|
362
366
|
id: MenuId.EditorLineNumberContext,
|
|
363
|
-
description: ( localize(
|
|
367
|
+
description: ( localize(15648, "The contributed editor line number context menu"))
|
|
364
368
|
}, {
|
|
365
369
|
key: "mergeEditor/result/title",
|
|
366
370
|
id: MenuId.MergeInputResultToolbar,
|
|
367
|
-
description: ( localize(
|
|
371
|
+
description: ( localize(15649, "The result toolbar of the merge editor")),
|
|
368
372
|
proposed: "contribMergeEditorMenus"
|
|
369
373
|
}, {
|
|
370
374
|
key: "multiDiffEditor/content",
|
|
371
375
|
id: MenuId.MultiDiffEditorContent,
|
|
372
|
-
description: ( localize(
|
|
376
|
+
description: ( localize(15650, "A prominent button overlaying the multi diff editor")),
|
|
373
377
|
proposed: "contribEditorContentMenu"
|
|
374
378
|
}, {
|
|
375
379
|
key: "multiDiffEditor/resource/title",
|
|
376
380
|
id: MenuId.MultiDiffEditorFileToolbar,
|
|
377
|
-
description: ( localize(
|
|
381
|
+
description: ( localize(15651, "The resource toolbar in the multi diff editor")),
|
|
378
382
|
proposed: "contribMultiDiffEditorMenus"
|
|
379
383
|
}, {
|
|
380
384
|
key: "diffEditor/gutter/hunk",
|
|
381
385
|
id: MenuId.DiffEditorHunkToolbar,
|
|
382
|
-
description: ( localize(
|
|
386
|
+
description: ( localize(15652, "The gutter toolbar in the diff editor")),
|
|
383
387
|
proposed: "contribDiffEditorGutterToolBarMenus"
|
|
384
388
|
}, {
|
|
385
389
|
key: "diffEditor/gutter/selection",
|
|
386
390
|
id: MenuId.DiffEditorSelectionToolbar,
|
|
387
|
-
description: ( localize(
|
|
391
|
+
description: ( localize(15652, "The gutter toolbar in the diff editor")),
|
|
388
392
|
proposed: "contribDiffEditorGutterToolBarMenus"
|
|
389
393
|
}, {
|
|
390
394
|
key: "searchPanel/aiResults/commands",
|
|
391
395
|
id: MenuId.SearchActionMenu,
|
|
392
396
|
description: ( localize(
|
|
393
|
-
|
|
397
|
+
15653,
|
|
394
398
|
"The commands that will contribute to the menu rendered as buttons next to the AI search title"
|
|
395
399
|
))
|
|
396
400
|
}, {
|
|
397
401
|
key: "editor/context/chat",
|
|
398
402
|
id: MenuId.ChatTextEditorMenu,
|
|
399
|
-
description: ( localize(
|
|
403
|
+
description: ( localize(15654, "The Chat submenu in the text editor context menu.")),
|
|
400
404
|
supportsSubmenus: false,
|
|
401
405
|
proposed: "chatParticipantPrivate"
|
|
402
406
|
}, {
|
|
403
407
|
key: "chat/input/editing/sessionToolbar",
|
|
404
408
|
id: MenuId.ChatEditingSessionChangesToolbar,
|
|
405
|
-
description: ( localize(
|
|
409
|
+
description: ( localize(15655, "The Chat Editing widget toolbar menu for session changes.")),
|
|
406
410
|
proposed: "chatSessionsProvider"
|
|
407
411
|
}, {
|
|
408
412
|
key: "chat/input/editing/sessionApplyActions",
|
|
409
413
|
id: MenuId.ChatEditingSessionApplySubmenu,
|
|
410
414
|
description: ( localize(
|
|
411
|
-
|
|
415
|
+
15656,
|
|
412
416
|
"Submenu for apply actions in the Chat Editing session changes toolbar."
|
|
413
417
|
)),
|
|
414
418
|
proposed: "chatSessionsProvider"
|
|
415
419
|
}, {
|
|
416
420
|
key: "chat/chatSessions",
|
|
417
421
|
id: MenuId.AgentSessionsContext,
|
|
418
|
-
description: ( localize(
|
|
422
|
+
description: ( localize(15657, "The Chat Sessions menu.")),
|
|
419
423
|
supportsSubmenus: false,
|
|
420
424
|
proposed: "chatSessionsProvider"
|
|
421
425
|
}, {
|
|
422
426
|
key: "chatSessions/newSession",
|
|
423
427
|
id: MenuId.AgentSessionsCreateSubMenu,
|
|
424
|
-
description: ( localize(
|
|
428
|
+
description: ( localize(15658, "Menu for new chat sessions.")),
|
|
425
429
|
supportsSubmenus: false,
|
|
426
430
|
proposed: "chatSessionsProvider"
|
|
427
431
|
}, {
|
|
428
432
|
key: "chat/multiDiff/context",
|
|
429
433
|
id: MenuId.ChatMultiDiffContext,
|
|
430
|
-
description: ( localize(
|
|
434
|
+
description: ( localize(15659, "The Chat Multi-Diff context menu.")),
|
|
431
435
|
supportsSubmenus: false,
|
|
432
436
|
proposed: "chatSessionsProvider"
|
|
433
437
|
}, {
|
|
434
438
|
key: "chat/editor/inlineGutter",
|
|
435
439
|
id: MenuId.ChatEditorInlineMenu,
|
|
436
|
-
description: ( localize(
|
|
440
|
+
description: ( localize(15660, "The inline gutter menu in the chat editor.")),
|
|
437
441
|
supportsSubmenus: false,
|
|
438
442
|
proposed: "contribChatEditorInlineGutterMenu"
|
|
439
443
|
}, {
|
|
440
444
|
key: "chat/contextUsage/actions",
|
|
441
445
|
id: MenuId.ChatContextUsageActions,
|
|
442
|
-
description: ( localize(
|
|
446
|
+
description: ( localize(15661, "Actions in the chat context usage details popup.")),
|
|
443
447
|
proposed: "chatParticipantAdditions"
|
|
444
448
|
}, {
|
|
445
449
|
key: "chat/newSession",
|
|
446
450
|
id: MenuId.ChatNewMenu,
|
|
447
|
-
description: ( localize(
|
|
451
|
+
description: ( localize(15662, "The Chat new session menu.")),
|
|
448
452
|
proposed: "chatSessionsProvider"
|
|
449
453
|
}];
|
|
450
454
|
var schema;
|
|
@@ -456,23 +460,23 @@ var schema;
|
|
|
456
460
|
function isValidMenuItem(item, collector) {
|
|
457
461
|
if (typeof item.command !== "string") {
|
|
458
462
|
collector.error(( localize(
|
|
459
|
-
|
|
463
|
+
15663,
|
|
460
464
|
"property `{0}` is mandatory and must be of type `string`",
|
|
461
465
|
"command"
|
|
462
466
|
)));
|
|
463
467
|
return false;
|
|
464
468
|
}
|
|
465
469
|
if (item.alt && typeof item.alt !== "string") {
|
|
466
|
-
collector.error(( localize(
|
|
470
|
+
collector.error(( localize(15664, "property `{0}` can be omitted or must be of type `string`", "alt")));
|
|
467
471
|
return false;
|
|
468
472
|
}
|
|
469
473
|
if (item.when && typeof item.when !== "string") {
|
|
470
|
-
collector.error(( localize(
|
|
474
|
+
collector.error(( localize(15664, "property `{0}` can be omitted or must be of type `string`", "when")));
|
|
471
475
|
return false;
|
|
472
476
|
}
|
|
473
477
|
if (item.group && typeof item.group !== "string") {
|
|
474
478
|
collector.error(( localize(
|
|
475
|
-
|
|
479
|
+
15664,
|
|
476
480
|
"property `{0}` can be omitted or must be of type `string`",
|
|
477
481
|
"group"
|
|
478
482
|
)));
|
|
@@ -484,19 +488,19 @@ var schema;
|
|
|
484
488
|
function isValidSubmenuItem(item, collector) {
|
|
485
489
|
if (typeof item.submenu !== "string") {
|
|
486
490
|
collector.error(( localize(
|
|
487
|
-
|
|
491
|
+
15663,
|
|
488
492
|
"property `{0}` is mandatory and must be of type `string`",
|
|
489
493
|
"submenu"
|
|
490
494
|
)));
|
|
491
495
|
return false;
|
|
492
496
|
}
|
|
493
497
|
if (item.when && typeof item.when !== "string") {
|
|
494
|
-
collector.error(( localize(
|
|
498
|
+
collector.error(( localize(15664, "property `{0}` can be omitted or must be of type `string`", "when")));
|
|
495
499
|
return false;
|
|
496
500
|
}
|
|
497
501
|
if (item.group && typeof item.group !== "string") {
|
|
498
502
|
collector.error(( localize(
|
|
499
|
-
|
|
503
|
+
15664,
|
|
500
504
|
"property `{0}` can be omitted or must be of type `string`",
|
|
501
505
|
"group"
|
|
502
506
|
)));
|
|
@@ -507,7 +511,7 @@ var schema;
|
|
|
507
511
|
schema.isValidSubmenuItem = isValidSubmenuItem;
|
|
508
512
|
function isValidItems(items, collector) {
|
|
509
513
|
if (!Array.isArray(items)) {
|
|
510
|
-
collector.error(( localize(
|
|
514
|
+
collector.error(( localize(15665, "submenu items must be an array")));
|
|
511
515
|
return false;
|
|
512
516
|
}
|
|
513
517
|
for (const item of items) {
|
|
@@ -526,15 +530,15 @@ var schema;
|
|
|
526
530
|
schema.isValidItems = isValidItems;
|
|
527
531
|
function isValidSubmenu(submenu, collector) {
|
|
528
532
|
if (typeof submenu !== "object") {
|
|
529
|
-
collector.error(( localize(
|
|
533
|
+
collector.error(( localize(15666, "submenu items must be an object")));
|
|
530
534
|
return false;
|
|
531
535
|
}
|
|
532
536
|
if (typeof submenu.id !== "string") {
|
|
533
|
-
collector.error(( localize(
|
|
537
|
+
collector.error(( localize(15663, "property `{0}` is mandatory and must be of type `string`", "id")));
|
|
534
538
|
return false;
|
|
535
539
|
}
|
|
536
540
|
if (typeof submenu.label !== "string") {
|
|
537
|
-
collector.error(( localize(
|
|
541
|
+
collector.error(( localize(15663, "property `{0}` is mandatory and must be of type `string`", "label")));
|
|
538
542
|
return false;
|
|
539
543
|
}
|
|
540
544
|
return true;
|
|
@@ -546,24 +550,24 @@ var schema;
|
|
|
546
550
|
properties: {
|
|
547
551
|
command: {
|
|
548
552
|
description: ( localize(
|
|
549
|
-
|
|
553
|
+
15667,
|
|
550
554
|
"Identifier of the command to execute. The command must be declared in the 'commands'-section"
|
|
551
555
|
)),
|
|
552
556
|
type: "string"
|
|
553
557
|
},
|
|
554
558
|
alt: {
|
|
555
559
|
description: ( localize(
|
|
556
|
-
|
|
560
|
+
15668,
|
|
557
561
|
"Identifier of an alternative command to execute. The command must be declared in the 'commands'-section"
|
|
558
562
|
)),
|
|
559
563
|
type: "string"
|
|
560
564
|
},
|
|
561
565
|
when: {
|
|
562
|
-
description: ( localize(
|
|
566
|
+
description: ( localize(15669, "Condition which must be true to show this item")),
|
|
563
567
|
type: "string"
|
|
564
568
|
},
|
|
565
569
|
group: {
|
|
566
|
-
description: ( localize(
|
|
570
|
+
description: ( localize(15670, "Group into which this item belongs")),
|
|
567
571
|
type: "string"
|
|
568
572
|
}
|
|
569
573
|
}
|
|
@@ -573,15 +577,15 @@ var schema;
|
|
|
573
577
|
required: ["submenu"],
|
|
574
578
|
properties: {
|
|
575
579
|
submenu: {
|
|
576
|
-
description: ( localize(
|
|
580
|
+
description: ( localize(15671, "Identifier of the submenu to display in this item.")),
|
|
577
581
|
type: "string"
|
|
578
582
|
},
|
|
579
583
|
when: {
|
|
580
|
-
description: ( localize(
|
|
584
|
+
description: ( localize(15669, "Condition which must be true to show this item")),
|
|
581
585
|
type: "string"
|
|
582
586
|
},
|
|
583
587
|
group: {
|
|
584
|
-
description: ( localize(
|
|
588
|
+
description: ( localize(15670, "Group into which this item belongs")),
|
|
585
589
|
type: "string"
|
|
586
590
|
}
|
|
587
591
|
}
|
|
@@ -591,16 +595,16 @@ var schema;
|
|
|
591
595
|
required: ["id", "label"],
|
|
592
596
|
properties: {
|
|
593
597
|
id: {
|
|
594
|
-
description: ( localize(
|
|
598
|
+
description: ( localize(15672, "Identifier of the menu to display as a submenu.")),
|
|
595
599
|
type: "string"
|
|
596
600
|
},
|
|
597
601
|
label: {
|
|
598
|
-
description: ( localize(
|
|
602
|
+
description: ( localize(15673, "The label of the menu item which leads to this submenu.")),
|
|
599
603
|
type: "string"
|
|
600
604
|
},
|
|
601
605
|
icon: {
|
|
602
606
|
description: ( localize(
|
|
603
|
-
|
|
607
|
+
15674,
|
|
604
608
|
"(Optional) Icon which is used to represent the submenu in the UI. Either a file path, an object with file paths for dark and light themes, or a theme icon references, like \"\\$(zap)\""
|
|
605
609
|
)),
|
|
606
610
|
anyOf: [{
|
|
@@ -609,11 +613,11 @@ var schema;
|
|
|
609
613
|
type: "object",
|
|
610
614
|
properties: {
|
|
611
615
|
light: {
|
|
612
|
-
description: ( localize(
|
|
616
|
+
description: ( localize(15675, "Icon path when a light theme is used")),
|
|
613
617
|
type: "string"
|
|
614
618
|
},
|
|
615
619
|
dark: {
|
|
616
|
-
description: ( localize(
|
|
620
|
+
description: ( localize(15676, "Icon path when a dark theme is used")),
|
|
617
621
|
type: "string"
|
|
618
622
|
}
|
|
619
623
|
}
|
|
@@ -622,11 +626,11 @@ var schema;
|
|
|
622
626
|
}
|
|
623
627
|
};
|
|
624
628
|
schema.menusContribution = {
|
|
625
|
-
description: ( localize(
|
|
629
|
+
description: ( localize(15677, "Contributes menu items to the editor")),
|
|
626
630
|
type: "object",
|
|
627
631
|
properties: index(apiMenus, menu => menu.key, menu => ({
|
|
628
632
|
markdownDescription: menu.proposed ? ( localize(
|
|
629
|
-
|
|
633
|
+
15678,
|
|
630
634
|
"Proposed API, requires `enabledApiProposal: [\"{0}\"]` - {1}",
|
|
631
635
|
menu.proposed,
|
|
632
636
|
menu.description
|
|
@@ -645,18 +649,18 @@ var schema;
|
|
|
645
649
|
}
|
|
646
650
|
};
|
|
647
651
|
schema.submenusContribution = {
|
|
648
|
-
description: ( localize(
|
|
652
|
+
description: ( localize(15679, "Contributes submenu items to the editor")),
|
|
649
653
|
type: "array",
|
|
650
654
|
items: submenu
|
|
651
655
|
};
|
|
652
656
|
function isValidCommand(command, collector) {
|
|
653
657
|
if (!command) {
|
|
654
|
-
collector.error(( localize(
|
|
658
|
+
collector.error(( localize(15680, "expected non-empty value.")));
|
|
655
659
|
return false;
|
|
656
660
|
}
|
|
657
661
|
if (isFalsyOrWhitespace(command.command)) {
|
|
658
662
|
collector.error(( localize(
|
|
659
|
-
|
|
663
|
+
15663,
|
|
660
664
|
"property `{0}` is mandatory and must be of type `string`",
|
|
661
665
|
"command"
|
|
662
666
|
)));
|
|
@@ -670,7 +674,7 @@ var schema;
|
|
|
670
674
|
}
|
|
671
675
|
if (command.enablement && typeof command.enablement !== "string") {
|
|
672
676
|
collector.error(( localize(
|
|
673
|
-
|
|
677
|
+
15664,
|
|
674
678
|
"property `{0}` can be omitted or must be of type `string`",
|
|
675
679
|
"precondition"
|
|
676
680
|
)));
|
|
@@ -695,7 +699,7 @@ var schema;
|
|
|
695
699
|
return true;
|
|
696
700
|
}
|
|
697
701
|
collector.error(( localize(
|
|
698
|
-
|
|
702
|
+
15681,
|
|
699
703
|
"property `icon` can be omitted or must be either a string or a literal like `{dark, light}`"
|
|
700
704
|
)));
|
|
701
705
|
return false;
|
|
@@ -703,21 +707,21 @@ var schema;
|
|
|
703
707
|
function isValidLocalizedString(localized, collector, propertyName) {
|
|
704
708
|
if (typeof localized === "undefined") {
|
|
705
709
|
collector.error(( localize(
|
|
706
|
-
|
|
710
|
+
15682,
|
|
707
711
|
"property `{0}` is mandatory and must be of type `string` or `object`",
|
|
708
712
|
propertyName
|
|
709
713
|
)));
|
|
710
714
|
return false;
|
|
711
715
|
} else if (typeof localized === "string" && isFalsyOrWhitespace(localized)) {
|
|
712
716
|
collector.error(( localize(
|
|
713
|
-
|
|
717
|
+
15663,
|
|
714
718
|
"property `{0}` is mandatory and must be of type `string`",
|
|
715
719
|
propertyName
|
|
716
720
|
)));
|
|
717
721
|
return false;
|
|
718
722
|
} else if (typeof localized !== "string" && (isFalsyOrWhitespace(localized.original) || isFalsyOrWhitespace(localized.value))) {
|
|
719
723
|
collector.error(( localize(
|
|
720
|
-
|
|
724
|
+
15683,
|
|
721
725
|
"properties `{0}` and `{1}` are mandatory and must be of type `string`",
|
|
722
726
|
`${propertyName}.value`,
|
|
723
727
|
`${propertyName}.original`
|
|
@@ -731,37 +735,37 @@ var schema;
|
|
|
731
735
|
required: ["command", "title"],
|
|
732
736
|
properties: {
|
|
733
737
|
command: {
|
|
734
|
-
description: ( localize(
|
|
738
|
+
description: ( localize(15684, "Identifier of the command to execute")),
|
|
735
739
|
type: "string"
|
|
736
740
|
},
|
|
737
741
|
title: {
|
|
738
|
-
description: ( localize(
|
|
742
|
+
description: ( localize(15685, "Title by which the command is represented in the UI")),
|
|
739
743
|
type: "string"
|
|
740
744
|
},
|
|
741
745
|
shortTitle: {
|
|
742
746
|
markdownDescription: ( localize(
|
|
743
|
-
|
|
747
|
+
15686,
|
|
744
748
|
"(Optional) Short title by which the command is represented in the UI. Menus pick either `title` or `shortTitle` depending on the context in which they show commands."
|
|
745
749
|
)),
|
|
746
750
|
type: "string"
|
|
747
751
|
},
|
|
748
752
|
category: {
|
|
749
753
|
description: ( localize(
|
|
750
|
-
|
|
754
|
+
15687,
|
|
751
755
|
"(Optional) Category string by which the command is grouped in the UI"
|
|
752
756
|
)),
|
|
753
757
|
type: "string"
|
|
754
758
|
},
|
|
755
759
|
enablement: {
|
|
756
760
|
description: ( localize(
|
|
757
|
-
|
|
761
|
+
15688,
|
|
758
762
|
"(Optional) Condition which must be true to enable the command in the UI (menu and keybindings). Does not prevent executing the command by other means, like the `executeCommand`-api."
|
|
759
763
|
)),
|
|
760
764
|
type: "string"
|
|
761
765
|
},
|
|
762
766
|
icon: {
|
|
763
767
|
description: ( localize(
|
|
764
|
-
|
|
768
|
+
15689,
|
|
765
769
|
"(Optional) Icon which is used to represent the command in the UI. Either a file path, an object with file paths for dark and light themes, or a theme icon references, like \"\\$(zap)\""
|
|
766
770
|
)),
|
|
767
771
|
anyOf: [{
|
|
@@ -770,11 +774,11 @@ var schema;
|
|
|
770
774
|
type: "object",
|
|
771
775
|
properties: {
|
|
772
776
|
light: {
|
|
773
|
-
description: ( localize(
|
|
777
|
+
description: ( localize(15690, "Icon path when a light theme is used")),
|
|
774
778
|
type: "string"
|
|
775
779
|
},
|
|
776
780
|
dark: {
|
|
777
|
-
description: ( localize(
|
|
781
|
+
description: ( localize(15691, "Icon path when a dark theme is used")),
|
|
778
782
|
type: "string"
|
|
779
783
|
}
|
|
780
784
|
}
|
|
@@ -783,7 +787,7 @@ var schema;
|
|
|
783
787
|
}
|
|
784
788
|
};
|
|
785
789
|
schema.commandsContribution = {
|
|
786
|
-
description: ( localize(
|
|
790
|
+
description: ( localize(15692, "Contributes commands to the command palette.")),
|
|
787
791
|
oneOf: [commandType, {
|
|
788
792
|
type: "array",
|
|
789
793
|
items: commandType
|
|
@@ -833,14 +837,14 @@ commandsExtensionPoint.setHandler(extensions => {
|
|
|
833
837
|
if (existingCmd) {
|
|
834
838
|
if (existingCmd.source) {
|
|
835
839
|
extension.collector.info(( localize(
|
|
836
|
-
|
|
840
|
+
15693,
|
|
837
841
|
"Command `{0}` already registered by {1} ({2})",
|
|
838
842
|
userFriendlyCommand.command,
|
|
839
843
|
existingCmd.source.title,
|
|
840
844
|
existingCmd.source.id
|
|
841
845
|
)));
|
|
842
846
|
} else {
|
|
843
|
-
extension.collector.info(( localize(
|
|
847
|
+
extension.collector.info(( localize(15694, "Command `{0}` already registered", userFriendlyCommand.command)));
|
|
844
848
|
}
|
|
845
849
|
}
|
|
846
850
|
_commandRegistrations.add(MenuRegistry.addCommand({
|
|
@@ -888,19 +892,19 @@ submenusExtensionPoint.setHandler(extensions => {
|
|
|
888
892
|
continue;
|
|
889
893
|
}
|
|
890
894
|
if (!submenuInfo.id) {
|
|
891
|
-
collector.warn(( localize(
|
|
895
|
+
collector.warn(( localize(15695, "`{0}` is not a valid submenu identifier", submenuInfo.id)));
|
|
892
896
|
continue;
|
|
893
897
|
}
|
|
894
898
|
if (( _submenus.has(submenuInfo.id))) {
|
|
895
899
|
collector.info(( localize(
|
|
896
|
-
|
|
900
|
+
15696,
|
|
897
901
|
"The `{0}` submenu was already previously registered.",
|
|
898
902
|
submenuInfo.id
|
|
899
903
|
)));
|
|
900
904
|
continue;
|
|
901
905
|
}
|
|
902
906
|
if (!submenuInfo.label) {
|
|
903
|
-
collector.warn(( localize(
|
|
907
|
+
collector.warn(( localize(15697, "`{0}` is not a valid submenu label", submenuInfo.label)));
|
|
904
908
|
continue;
|
|
905
909
|
}
|
|
906
910
|
let absoluteIcon;
|
|
@@ -959,9 +963,9 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
959
963
|
if (!menu) {
|
|
960
964
|
continue;
|
|
961
965
|
}
|
|
962
|
-
if (menu.proposed && !isProposedApiEnabled(extension.description
|
|
966
|
+
if (menu.proposed && !isProposedApiEnabled(extension.description)) {
|
|
963
967
|
collector.error(( localize(
|
|
964
|
-
|
|
968
|
+
15698,
|
|
965
969
|
"{0} is a proposed menu identifier. It requires 'package.json#enabledApiProposals: [\"{1}\"]' and is only available when running out of dev or with the following command line switch: --enable-proposed-api {2}",
|
|
966
970
|
entry[0],
|
|
967
971
|
menu.proposed,
|
|
@@ -976,7 +980,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
976
980
|
const alt = menuItem.alt && MenuRegistry.getCommand(menuItem.alt) || undefined;
|
|
977
981
|
if (!command) {
|
|
978
982
|
collector.error(( localize(
|
|
979
|
-
|
|
983
|
+
15699,
|
|
980
984
|
"Menu item references a command `{0}` which is not defined in the 'commands' section.",
|
|
981
985
|
menuItem.command
|
|
982
986
|
)));
|
|
@@ -984,13 +988,13 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
984
988
|
}
|
|
985
989
|
if (menuItem.alt && !alt) {
|
|
986
990
|
collector.warn(( localize(
|
|
987
|
-
|
|
991
|
+
15700,
|
|
988
992
|
"Menu item references an alt-command `{0}` which is not defined in the 'commands' section.",
|
|
989
993
|
menuItem.alt
|
|
990
994
|
)));
|
|
991
995
|
}
|
|
992
996
|
if (menuItem.command === menuItem.alt) {
|
|
993
|
-
collector.info(( localize(
|
|
997
|
+
collector.info(( localize(15701, "Menu item references the same command as default and alt-command")));
|
|
994
998
|
}
|
|
995
999
|
item = {
|
|
996
1000
|
command,
|
|
@@ -1002,7 +1006,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1002
1006
|
} else {
|
|
1003
1007
|
if (menu.supportsSubmenus === false) {
|
|
1004
1008
|
collector.error(( localize(
|
|
1005
|
-
|
|
1009
|
+
15702,
|
|
1006
1010
|
"Menu item references a submenu for a menu which doesn't have submenu support."
|
|
1007
1011
|
)));
|
|
1008
1012
|
continue;
|
|
@@ -1010,7 +1014,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1010
1014
|
const submenu = _submenus.get(menuItem.submenu);
|
|
1011
1015
|
if (!submenu) {
|
|
1012
1016
|
collector.error(( localize(
|
|
1013
|
-
|
|
1017
|
+
15703,
|
|
1014
1018
|
"Menu item references a submenu `{0}` which is not defined in the 'submenus' section.",
|
|
1015
1019
|
menuItem.submenu
|
|
1016
1020
|
)));
|
|
@@ -1023,7 +1027,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1023
1027
|
}
|
|
1024
1028
|
if (( submenuRegistrations.has(submenu.id.id))) {
|
|
1025
1029
|
collector.warn(( localize(
|
|
1026
|
-
|
|
1030
|
+
15704,
|
|
1027
1031
|
"The `{0}` submenu was already contributed to the `{1}` menu.",
|
|
1028
1032
|
menuItem.submenu,
|
|
1029
1033
|
entry[0]
|
|
@@ -1051,7 +1055,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1051
1055
|
}
|
|
1052
1056
|
if (menu.id === MenuId.ViewContainerTitle && !menuItem.when?.includes("viewContainer == workbench.view.debug")) {
|
|
1053
1057
|
collector.error(( localize(
|
|
1054
|
-
|
|
1058
|
+
15705,
|
|
1055
1059
|
"The {0} menu contribution must check {1} in its {2} clause.",
|
|
1056
1060
|
"`viewContainer/title`",
|
|
1057
1061
|
"`viewContainer == workbench.view.debug`",
|
|
@@ -1153,7 +1157,7 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
|
|
|
1153
1157
|
dispose: () => {}
|
|
1154
1158
|
};
|
|
1155
1159
|
}
|
|
1156
|
-
const headers = [( localize(
|
|
1160
|
+
const headers = [( localize(15706, "ID")), ( localize(15707, "Title")), ( localize(15708, "Keyboard Shortcuts")), ( localize(15709, "Menu Contexts"))];
|
|
1157
1161
|
const rows = ( commands.sort((a, b) => a.id.localeCompare(b.id)).map(command => {
|
|
1158
1162
|
return [( new MarkdownString()).appendMarkdown(`\`${command.id}\``), typeof command.title === "string" ? command.title : command.title.value, command.keybindings, ( new MarkdownString()).appendMarkdown(`${( command.menus.sort((a, b) => a.localeCompare(b)).map(menu => `\`${menu}\``)).join(" ")}`)];
|
|
1159
1163
|
}));
|
|
@@ -1184,7 +1188,7 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
|
|
|
1184
1188
|
CommandsTableRenderer = ( __decorate([( __param(0, IKeybindingService))], CommandsTableRenderer));
|
|
1185
1189
|
( Registry.as(Extensions.ExtensionFeaturesRegistry)).registerExtensionFeature({
|
|
1186
1190
|
id: "commands",
|
|
1187
|
-
label: ( localize(
|
|
1191
|
+
label: ( localize(15710, "Commands")),
|
|
1188
1192
|
access: {
|
|
1189
1193
|
canToggle: false
|
|
1190
1194
|
},
|