@codingame/monaco-vscode-keybindings-service-override 33.0.9 → 34.0.1
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 +165 -151
- package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +24 -24
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +8 -4
|
@@ -20,194 +20,202 @@ 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(16547, "The Command Palette")),
|
|
24
24
|
supportsSubmenus: false
|
|
25
25
|
}, {
|
|
26
26
|
key: "touchBar",
|
|
27
27
|
id: MenuId.TouchBarContext,
|
|
28
|
-
description: ( localize(
|
|
28
|
+
description: ( localize(16548, "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(16549, "The editor title menu"))
|
|
34
34
|
}, {
|
|
35
35
|
key: "modalEditor/editorTitle",
|
|
36
36
|
id: MenuId.ModalEditorEditorTitle,
|
|
37
|
-
description: ( localize(
|
|
37
|
+
description: ( localize(16550, "The editor title menu in the modal editor"))
|
|
38
38
|
}, {
|
|
39
39
|
key: "editor/title/run",
|
|
40
40
|
id: MenuId.EditorTitleRun,
|
|
41
|
-
description: ( localize(
|
|
41
|
+
description: ( localize(16551, "Run submenu inside the editor title menu"))
|
|
42
42
|
}, {
|
|
43
43
|
key: "editor/context",
|
|
44
44
|
id: MenuId.EditorContext,
|
|
45
|
-
description: ( localize(
|
|
45
|
+
description: ( localize(16552, "The editor context menu"))
|
|
46
46
|
}, {
|
|
47
47
|
key: "editor/context/copy",
|
|
48
48
|
id: MenuId.EditorContextCopy,
|
|
49
|
-
description: ( localize(
|
|
49
|
+
description: ( localize(16553, "'Copy as' submenu in the editor context menu"))
|
|
50
50
|
}, {
|
|
51
51
|
key: "editor/context/share",
|
|
52
52
|
id: MenuId.EditorContextShare,
|
|
53
|
-
description: ( localize(
|
|
53
|
+
description: ( localize(16554, "'Share' submenu in the editor context menu")),
|
|
54
54
|
proposed: "contribShareMenu"
|
|
55
55
|
}, {
|
|
56
56
|
key: "explorer/context",
|
|
57
57
|
id: MenuId.ExplorerContext,
|
|
58
|
-
description: ( localize(
|
|
58
|
+
description: ( localize(16555, "The file explorer context menu"))
|
|
59
59
|
}, {
|
|
60
60
|
key: "explorer/context/share",
|
|
61
61
|
id: MenuId.ExplorerContextShare,
|
|
62
|
-
description: ( localize(
|
|
62
|
+
description: ( localize(16556, "'Share' submenu in the file explorer context menu")),
|
|
63
63
|
proposed: "contribShareMenu"
|
|
64
64
|
}, {
|
|
65
65
|
key: "editor/title/context",
|
|
66
66
|
id: MenuId.EditorTitleContext,
|
|
67
|
-
description: ( localize(
|
|
67
|
+
description: ( localize(16557, "The editor tabs context menu"))
|
|
68
68
|
}, {
|
|
69
69
|
key: "editor/title/context/share",
|
|
70
70
|
id: MenuId.EditorTitleContextShare,
|
|
71
|
-
description: ( localize(
|
|
71
|
+
description: ( localize(16558, "'Share' submenu inside the editor title context menu")),
|
|
72
72
|
proposed: "contribShareMenu"
|
|
73
73
|
}, {
|
|
74
74
|
key: "debug/callstack/context",
|
|
75
75
|
id: MenuId.DebugCallStackContext,
|
|
76
|
-
description: ( localize(
|
|
76
|
+
description: ( localize(16559, "The debug callstack view context menu"))
|
|
77
77
|
}, {
|
|
78
78
|
key: "debug/variables/context",
|
|
79
79
|
id: MenuId.DebugVariablesContext,
|
|
80
|
-
description: ( localize(
|
|
80
|
+
description: ( localize(16560, "The debug variables view context menu"))
|
|
81
81
|
}, {
|
|
82
82
|
key: "debug/watch/context",
|
|
83
83
|
id: MenuId.DebugWatchContext,
|
|
84
|
-
description: ( localize(
|
|
84
|
+
description: ( localize(16561, "The debug watch view context menu"))
|
|
85
85
|
}, {
|
|
86
86
|
key: "debug/toolBar",
|
|
87
87
|
id: MenuId.DebugToolBar,
|
|
88
|
-
description: ( localize(
|
|
88
|
+
description: ( localize(16562, "The debug toolbar menu"))
|
|
89
89
|
}, {
|
|
90
90
|
key: "debug/createConfiguration",
|
|
91
91
|
id: MenuId.DebugCreateConfiguration,
|
|
92
92
|
proposed: "contribDebugCreateConfiguration",
|
|
93
|
-
description: ( localize(
|
|
93
|
+
description: ( localize(16563, "The debug create configuration menu"))
|
|
94
94
|
}, {
|
|
95
95
|
key: "notebook/variables/context",
|
|
96
96
|
id: MenuId.NotebookVariablesContext,
|
|
97
|
-
description: ( localize(
|
|
97
|
+
description: ( localize(16564, "The notebook variables view context menu"))
|
|
98
98
|
}, {
|
|
99
99
|
key: "menuBar/home",
|
|
100
100
|
id: MenuId.MenubarHomeMenu,
|
|
101
|
-
description: ( localize(
|
|
101
|
+
description: ( localize(16565, "The home indicator context menu (web only)")),
|
|
102
102
|
proposed: "contribMenuBarHome",
|
|
103
103
|
supportsSubmenus: false
|
|
104
104
|
}, {
|
|
105
105
|
key: "menuBar/edit/copy",
|
|
106
106
|
id: MenuId.MenubarCopy,
|
|
107
|
-
description: ( localize(
|
|
107
|
+
description: ( localize(16566, "'Copy as' submenu in the top level Edit menu"))
|
|
108
|
+
}, {
|
|
109
|
+
key: "chat/input/status",
|
|
110
|
+
id: MenuId.ChatInputStatus,
|
|
111
|
+
description: ( localize(
|
|
112
|
+
16567,
|
|
113
|
+
"The status indicator area at the rightmost end of the toolbar shown beneath the chat input"
|
|
114
|
+
)),
|
|
115
|
+
supportsSubmenus: false
|
|
108
116
|
}, {
|
|
109
117
|
key: "scm/title",
|
|
110
118
|
id: MenuId.SCMTitle,
|
|
111
|
-
description: ( localize(
|
|
119
|
+
description: ( localize(16568, "The Source Control title menu"))
|
|
112
120
|
}, {
|
|
113
121
|
key: "scm/sourceControl",
|
|
114
122
|
id: MenuId.SCMSourceControl,
|
|
115
|
-
description: ( localize(
|
|
123
|
+
description: ( localize(16569, "The Source Control menu"))
|
|
116
124
|
}, {
|
|
117
125
|
key: "scm/repositories/title",
|
|
118
126
|
id: MenuId.SCMSourceControlTitle,
|
|
119
|
-
description: ( localize(
|
|
127
|
+
description: ( localize(16570, "The Source Control Repositories title menu")),
|
|
120
128
|
proposed: "contribSourceControlTitleMenu"
|
|
121
129
|
}, {
|
|
122
130
|
key: "scm/repository",
|
|
123
131
|
id: MenuId.SCMSourceControlInline,
|
|
124
|
-
description: ( localize(
|
|
132
|
+
description: ( localize(16571, "The Source Control repository menu"))
|
|
125
133
|
}, {
|
|
126
134
|
key: "scm/resourceState/context",
|
|
127
135
|
id: MenuId.SCMResourceContext,
|
|
128
|
-
description: ( localize(
|
|
136
|
+
description: ( localize(16572, "The Source Control resource state context menu"))
|
|
129
137
|
}, {
|
|
130
138
|
key: "scm/resourceFolder/context",
|
|
131
139
|
id: MenuId.SCMResourceFolderContext,
|
|
132
|
-
description: ( localize(
|
|
140
|
+
description: ( localize(16573, "The Source Control resource folder context menu"))
|
|
133
141
|
}, {
|
|
134
142
|
key: "scm/resourceGroup/context",
|
|
135
143
|
id: MenuId.SCMResourceGroupContext,
|
|
136
|
-
description: ( localize(
|
|
144
|
+
description: ( localize(16574, "The Source Control resource group context menu"))
|
|
137
145
|
}, {
|
|
138
146
|
key: "scm/change/title",
|
|
139
147
|
id: MenuId.SCMChangeContext,
|
|
140
|
-
description: ( localize(
|
|
148
|
+
description: ( localize(16575, "The Source Control inline change menu"))
|
|
141
149
|
}, {
|
|
142
150
|
key: "scm/inputBox",
|
|
143
151
|
id: MenuId.SCMInputBox,
|
|
144
|
-
description: ( localize(
|
|
152
|
+
description: ( localize(16576, "The Source Control input box menu")),
|
|
145
153
|
proposed: "contribSourceControlInputBoxMenu"
|
|
146
154
|
}, {
|
|
147
155
|
key: "scm/history/title",
|
|
148
156
|
id: MenuId.SCMHistoryTitle,
|
|
149
|
-
description: ( localize(
|
|
157
|
+
description: ( localize(16577, "The Source Control History title menu")),
|
|
150
158
|
proposed: "contribSourceControlHistoryTitleMenu"
|
|
151
159
|
}, {
|
|
152
160
|
key: "scm/historyItem/context",
|
|
153
161
|
id: MenuId.SCMHistoryItemContext,
|
|
154
|
-
description: ( localize(
|
|
162
|
+
description: ( localize(16578, "The Source Control history item context menu")),
|
|
155
163
|
proposed: "contribSourceControlHistoryItemMenu"
|
|
156
164
|
}, {
|
|
157
165
|
key: "scm/historyItemRef/context",
|
|
158
166
|
id: MenuId.SCMHistoryItemRefContext,
|
|
159
|
-
description: ( localize(
|
|
167
|
+
description: ( localize(16579, "The Source Control history item reference context menu")),
|
|
160
168
|
proposed: "contribSourceControlHistoryItemMenu"
|
|
161
169
|
}, {
|
|
162
170
|
key: "scm/artifactGroup/context",
|
|
163
171
|
id: MenuId.SCMArtifactGroupContext,
|
|
164
|
-
description: ( localize(
|
|
172
|
+
description: ( localize(16580, "The Source Control artifact group context menu")),
|
|
165
173
|
proposed: "contribSourceControlArtifactGroupMenu"
|
|
166
174
|
}, {
|
|
167
175
|
key: "scm/artifact/context",
|
|
168
176
|
id: MenuId.SCMArtifactContext,
|
|
169
|
-
description: ( localize(
|
|
177
|
+
description: ( localize(16581, "The Source Control artifact context menu")),
|
|
170
178
|
proposed: "contribSourceControlArtifactMenu"
|
|
171
179
|
}, {
|
|
172
180
|
key: "statusBar/remoteIndicator",
|
|
173
181
|
id: MenuId.StatusBarRemoteIndicatorMenu,
|
|
174
|
-
description: ( localize(
|
|
182
|
+
description: ( localize(16582, "The remote indicator menu in the status bar")),
|
|
175
183
|
supportsSubmenus: false
|
|
176
184
|
}, {
|
|
177
185
|
key: "terminal/context",
|
|
178
186
|
id: MenuId.TerminalInstanceContext,
|
|
179
|
-
description: ( localize(
|
|
187
|
+
description: ( localize(16583, "The terminal context menu"))
|
|
180
188
|
}, {
|
|
181
189
|
key: "terminal/title/context",
|
|
182
190
|
id: MenuId.TerminalTabContext,
|
|
183
|
-
description: ( localize(
|
|
191
|
+
description: ( localize(16584, "The terminal tabs context menu"))
|
|
184
192
|
}, {
|
|
185
193
|
key: "view/title",
|
|
186
194
|
id: MenuId.ViewTitle,
|
|
187
|
-
description: ( localize(
|
|
195
|
+
description: ( localize(16585, "The contributed view title menu"))
|
|
188
196
|
}, {
|
|
189
197
|
key: "viewContainer/title",
|
|
190
198
|
id: MenuId.ViewContainerTitle,
|
|
191
|
-
description: ( localize(
|
|
199
|
+
description: ( localize(16586, "The contributed view container title menu")),
|
|
192
200
|
proposed: "contribViewContainerTitle"
|
|
193
201
|
}, {
|
|
194
202
|
key: "view/item/context",
|
|
195
203
|
id: MenuId.ViewItemContext,
|
|
196
|
-
description: ( localize(
|
|
204
|
+
description: ( localize(16587, "The contributed view item context menu"))
|
|
197
205
|
}, {
|
|
198
206
|
key: "comments/comment/editorActions",
|
|
199
207
|
id: MenuId.CommentEditorActions,
|
|
200
|
-
description: ( localize(
|
|
208
|
+
description: ( localize(16588, "The contributed comment editor actions")),
|
|
201
209
|
proposed: "contribCommentEditorActionsMenu"
|
|
202
210
|
}, {
|
|
203
211
|
key: "comments/commentThread/title",
|
|
204
212
|
id: MenuId.CommentThreadTitle,
|
|
205
|
-
description: ( localize(
|
|
213
|
+
description: ( localize(16589, "The contributed comment thread title menu"))
|
|
206
214
|
}, {
|
|
207
215
|
key: "comments/commentThread/context",
|
|
208
216
|
id: MenuId.CommentThreadActions,
|
|
209
217
|
description: ( localize(
|
|
210
|
-
|
|
218
|
+
16590,
|
|
211
219
|
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
212
220
|
)),
|
|
213
221
|
supportsSubmenus: false
|
|
@@ -215,7 +223,7 @@ const apiMenus = [{
|
|
|
215
223
|
key: "comments/commentThread/additionalActions",
|
|
216
224
|
id: MenuId.CommentThreadAdditionalActions,
|
|
217
225
|
description: ( localize(
|
|
218
|
-
|
|
226
|
+
16590,
|
|
219
227
|
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
220
228
|
)),
|
|
221
229
|
supportsSubmenus: true,
|
|
@@ -224,19 +232,19 @@ const apiMenus = [{
|
|
|
224
232
|
key: "comments/commentThread/title/context",
|
|
225
233
|
id: MenuId.CommentThreadTitleContext,
|
|
226
234
|
description: ( localize(
|
|
227
|
-
|
|
235
|
+
16591,
|
|
228
236
|
"The contributed comment thread title's peek context menu, rendered as a right click menu on the comment thread's peek title."
|
|
229
237
|
)),
|
|
230
238
|
proposed: "contribCommentPeekContext"
|
|
231
239
|
}, {
|
|
232
240
|
key: "comments/comment/title",
|
|
233
241
|
id: MenuId.CommentTitle,
|
|
234
|
-
description: ( localize(
|
|
242
|
+
description: ( localize(16592, "The contributed comment title menu"))
|
|
235
243
|
}, {
|
|
236
244
|
key: "comments/comment/context",
|
|
237
245
|
id: MenuId.CommentActions,
|
|
238
246
|
description: ( localize(
|
|
239
|
-
|
|
247
|
+
16593,
|
|
240
248
|
"The contributed comment context menu, rendered as buttons below the comment editor"
|
|
241
249
|
)),
|
|
242
250
|
supportsSubmenus: false
|
|
@@ -244,204 +252,210 @@ const apiMenus = [{
|
|
|
244
252
|
key: "comments/commentThread/comment/context",
|
|
245
253
|
id: MenuId.CommentThreadCommentContext,
|
|
246
254
|
description: ( localize(
|
|
247
|
-
|
|
255
|
+
16594,
|
|
248
256
|
"The contributed comment context menu, rendered as a right click menu on the an individual comment in the comment thread's peek view."
|
|
249
257
|
)),
|
|
250
258
|
proposed: "contribCommentPeekContext"
|
|
251
259
|
}, {
|
|
252
260
|
key: "commentsView/commentThread/context",
|
|
253
261
|
id: MenuId.CommentsViewThreadActions,
|
|
254
|
-
description: ( localize(
|
|
262
|
+
description: ( localize(16595, "The contributed comment thread context menu in the comments view")),
|
|
255
263
|
proposed: "contribCommentsViewThreadMenus"
|
|
256
264
|
}, {
|
|
257
265
|
key: "notebook/toolbar",
|
|
258
266
|
id: MenuId.NotebookToolbar,
|
|
259
|
-
description: ( localize(
|
|
267
|
+
description: ( localize(16596, "The contributed notebook toolbar menu"))
|
|
260
268
|
}, {
|
|
261
269
|
key: "notebook/kernelSource",
|
|
262
270
|
id: MenuId.NotebookKernelSource,
|
|
263
|
-
description: ( localize(
|
|
271
|
+
description: ( localize(16597, "The contributed notebook kernel sources menu")),
|
|
264
272
|
proposed: "notebookKernelSource"
|
|
265
273
|
}, {
|
|
266
274
|
key: "notebook/cell/title",
|
|
267
275
|
id: MenuId.NotebookCellTitle,
|
|
268
|
-
description: ( localize(
|
|
276
|
+
description: ( localize(16598, "The contributed notebook cell title menu"))
|
|
269
277
|
}, {
|
|
270
278
|
key: "notebook/cell/execute",
|
|
271
279
|
id: MenuId.NotebookCellExecute,
|
|
272
|
-
description: ( localize(
|
|
280
|
+
description: ( localize(16599, "The contributed notebook cell execution menu"))
|
|
273
281
|
}, {
|
|
274
282
|
key: "interactive/toolbar",
|
|
275
283
|
id: MenuId.InteractiveToolbar,
|
|
276
|
-
description: ( localize(
|
|
284
|
+
description: ( localize(16600, "The contributed interactive toolbar menu"))
|
|
277
285
|
}, {
|
|
278
286
|
key: "interactive/cell/title",
|
|
279
287
|
id: MenuId.InteractiveCellTitle,
|
|
280
|
-
description: ( localize(
|
|
288
|
+
description: ( localize(16601, "The contributed interactive cell title menu"))
|
|
281
289
|
}, {
|
|
282
290
|
key: "issue/reporter",
|
|
283
291
|
id: MenuId.IssueReporter,
|
|
284
|
-
description: ( localize(
|
|
292
|
+
description: ( localize(16602, "The contributed issue reporter menu"))
|
|
285
293
|
}, {
|
|
286
294
|
key: "testing/item/context",
|
|
287
295
|
id: MenuId.TestItem,
|
|
288
|
-
description: ( localize(
|
|
296
|
+
description: ( localize(16603, "The contributed test item menu"))
|
|
289
297
|
}, {
|
|
290
298
|
key: "testing/item/gutter",
|
|
291
299
|
id: MenuId.TestItemGutter,
|
|
292
|
-
description: ( localize(
|
|
300
|
+
description: ( localize(16604, "The menu for a gutter decoration for a test item"))
|
|
293
301
|
}, {
|
|
294
302
|
key: "testing/profiles/context",
|
|
295
303
|
id: MenuId.TestProfilesContext,
|
|
296
|
-
description: ( localize(
|
|
304
|
+
description: ( localize(16605, "The menu for configuring testing profiles."))
|
|
297
305
|
}, {
|
|
298
306
|
key: "testing/item/result",
|
|
299
307
|
id: MenuId.TestPeekElement,
|
|
300
|
-
description: ( localize(
|
|
308
|
+
description: ( localize(16606, "The menu for an item in the Test Results view or peek."))
|
|
301
309
|
}, {
|
|
302
310
|
key: "testing/message/context",
|
|
303
311
|
id: MenuId.TestMessageContext,
|
|
304
312
|
description: ( localize(
|
|
305
|
-
|
|
313
|
+
16607,
|
|
306
314
|
"A prominent button overlaying editor content where the message is displayed"
|
|
307
315
|
))
|
|
308
316
|
}, {
|
|
309
317
|
key: "testing/message/content",
|
|
310
318
|
id: MenuId.TestMessageContent,
|
|
311
|
-
description: ( localize(
|
|
319
|
+
description: ( localize(16608, "Context menu for the message in the results tree"))
|
|
312
320
|
}, {
|
|
313
321
|
key: "extension/context",
|
|
314
322
|
id: MenuId.ExtensionContext,
|
|
315
|
-
description: ( localize(
|
|
323
|
+
description: ( localize(16609, "The extension context menu"))
|
|
316
324
|
}, {
|
|
317
325
|
key: "timeline/title",
|
|
318
326
|
id: MenuId.TimelineTitle,
|
|
319
|
-
description: ( localize(
|
|
327
|
+
description: ( localize(16610, "The Timeline view title menu"))
|
|
320
328
|
}, {
|
|
321
329
|
key: "timeline/item/context",
|
|
322
330
|
id: MenuId.TimelineItemContext,
|
|
323
|
-
description: ( localize(
|
|
331
|
+
description: ( localize(16611, "The Timeline view item context menu"))
|
|
324
332
|
}, {
|
|
325
333
|
key: "ports/item/context",
|
|
326
334
|
id: MenuId.TunnelContext,
|
|
327
|
-
description: ( localize(
|
|
335
|
+
description: ( localize(16612, "The Ports view item context menu"))
|
|
328
336
|
}, {
|
|
329
337
|
key: "ports/item/origin/inline",
|
|
330
338
|
id: MenuId.TunnelOriginInline,
|
|
331
|
-
description: ( localize(
|
|
339
|
+
description: ( localize(16613, "The Ports view item origin inline menu"))
|
|
332
340
|
}, {
|
|
333
341
|
key: "ports/item/port/inline",
|
|
334
342
|
id: MenuId.TunnelPortInline,
|
|
335
|
-
description: ( localize(
|
|
343
|
+
description: ( localize(16614, "The Ports view item port inline menu"))
|
|
336
344
|
}, {
|
|
337
345
|
key: "file/newFile",
|
|
338
346
|
id: MenuId.NewFile,
|
|
339
347
|
description: ( localize(
|
|
340
|
-
|
|
348
|
+
16615,
|
|
341
349
|
"The 'New File...' quick pick, shown on welcome page and File menu."
|
|
342
350
|
)),
|
|
343
351
|
supportsSubmenus: false
|
|
344
352
|
}, {
|
|
345
353
|
key: "webview/context",
|
|
346
354
|
id: MenuId.WebviewContext,
|
|
347
|
-
description: ( localize(
|
|
355
|
+
description: ( localize(16616, "The webview context menu"))
|
|
348
356
|
}, {
|
|
349
357
|
key: "file/share",
|
|
350
358
|
id: MenuId.MenubarShare,
|
|
351
|
-
description: ( localize(
|
|
359
|
+
description: ( localize(16617, "Share submenu shown in the top level File menu.")),
|
|
352
360
|
proposed: "contribShareMenu"
|
|
353
361
|
}, {
|
|
354
362
|
key: "editor/inlineCompletions/actions",
|
|
355
363
|
id: MenuId.InlineCompletionsActions,
|
|
356
|
-
description: ( localize(
|
|
364
|
+
description: ( localize(16618, "The actions shown when hovering on an inline completion")),
|
|
357
365
|
supportsSubmenus: false,
|
|
358
366
|
proposed: "inlineCompletionsAdditions"
|
|
359
367
|
}, {
|
|
360
368
|
key: "editor/content",
|
|
361
369
|
id: MenuId.EditorContent,
|
|
362
|
-
description: ( localize(
|
|
370
|
+
description: ( localize(16619, "The prominent button in an editor, overlays its content")),
|
|
363
371
|
proposed: "contribEditorContentMenu"
|
|
364
372
|
}, {
|
|
365
373
|
key: "editor/lineNumber/context",
|
|
366
374
|
id: MenuId.EditorLineNumberContext,
|
|
367
|
-
description: ( localize(
|
|
375
|
+
description: ( localize(16620, "The contributed editor line number context menu"))
|
|
368
376
|
}, {
|
|
369
377
|
key: "mergeEditor/result/title",
|
|
370
378
|
id: MenuId.MergeInputResultToolbar,
|
|
371
|
-
description: ( localize(
|
|
379
|
+
description: ( localize(16621, "The result toolbar of the merge editor")),
|
|
372
380
|
proposed: "contribMergeEditorMenus"
|
|
373
381
|
}, {
|
|
374
382
|
key: "multiDiffEditor/content",
|
|
375
383
|
id: MenuId.MultiDiffEditorContent,
|
|
376
|
-
description: ( localize(
|
|
384
|
+
description: ( localize(16622, "A prominent button overlaying the multi diff editor")),
|
|
377
385
|
proposed: "contribEditorContentMenu"
|
|
378
386
|
}, {
|
|
379
387
|
key: "multiDiffEditor/resource/title",
|
|
380
388
|
id: MenuId.MultiDiffEditorFileToolbar,
|
|
381
|
-
description: ( localize(
|
|
389
|
+
description: ( localize(16623, "The resource toolbar in the multi diff editor")),
|
|
382
390
|
proposed: "contribMultiDiffEditorMenus"
|
|
383
391
|
}, {
|
|
384
392
|
key: "diffEditor/gutter/hunk",
|
|
385
393
|
id: MenuId.DiffEditorHunkToolbar,
|
|
386
|
-
description: ( localize(
|
|
394
|
+
description: ( localize(16624, "The gutter toolbar in the diff editor")),
|
|
387
395
|
proposed: "contribDiffEditorGutterToolBarMenus"
|
|
388
396
|
}, {
|
|
389
397
|
key: "diffEditor/gutter/selection",
|
|
390
398
|
id: MenuId.DiffEditorSelectionToolbar,
|
|
391
|
-
description: ( localize(
|
|
399
|
+
description: ( localize(16624, "The gutter toolbar in the diff editor")),
|
|
392
400
|
proposed: "contribDiffEditorGutterToolBarMenus"
|
|
393
401
|
}, {
|
|
394
402
|
key: "searchPanel/aiResults/commands",
|
|
395
403
|
id: MenuId.SearchActionMenu,
|
|
396
404
|
description: ( localize(
|
|
397
|
-
|
|
405
|
+
16625,
|
|
398
406
|
"The commands that will contribute to the menu rendered as buttons next to the AI search title"
|
|
399
407
|
))
|
|
400
408
|
}, {
|
|
401
409
|
key: "editor/context/chat",
|
|
402
410
|
id: MenuId.ChatTextEditorMenu,
|
|
403
|
-
description: ( localize(
|
|
411
|
+
description: ( localize(16626, "The Chat submenu in the text editor context menu.")),
|
|
404
412
|
supportsSubmenus: false,
|
|
405
413
|
proposed: "chatParticipantPrivate"
|
|
406
414
|
}, {
|
|
407
415
|
key: "chat/input/editing/sessionToolbar",
|
|
408
416
|
id: MenuId.ChatEditingSessionChangesToolbar,
|
|
409
|
-
description: ( localize(
|
|
417
|
+
description: ( localize(16627, "The Chat Editing widget toolbar menu for session changes.")),
|
|
410
418
|
proposed: "chatSessionsProvider"
|
|
411
419
|
}, {
|
|
412
420
|
key: "chat/input/editing/sessionTitleToolbar",
|
|
413
421
|
id: MenuId.ChatEditingSessionTitleToolbar,
|
|
414
|
-
description: ( localize(
|
|
422
|
+
description: ( localize(16628, "The Chat Editing widget toolbar menu for session title.")),
|
|
415
423
|
proposed: "chatSessionsProvider"
|
|
416
424
|
}, {
|
|
417
425
|
key: "chat/chatSessions",
|
|
418
426
|
id: MenuId.AgentSessionsContext,
|
|
419
|
-
description: ( localize(
|
|
427
|
+
description: ( localize(16629, "The Chat Sessions menu.")),
|
|
428
|
+
supportsSubmenus: false,
|
|
429
|
+
proposed: "chatSessionsProvider"
|
|
430
|
+
}, {
|
|
431
|
+
key: "chatSessions/item/context",
|
|
432
|
+
id: MenuId.SessionItemContextMenu,
|
|
433
|
+
description: ( localize(16630, "The context menu for items in the Sessions window's session list.")),
|
|
420
434
|
supportsSubmenus: false,
|
|
421
435
|
proposed: "chatSessionsProvider"
|
|
422
436
|
}, {
|
|
423
437
|
key: "chatSessions/newSession",
|
|
424
438
|
id: MenuId.AgentSessionsCreateSubMenu,
|
|
425
|
-
description: ( localize(
|
|
439
|
+
description: ( localize(16631, "Menu for new chat sessions.")),
|
|
426
440
|
supportsSubmenus: false,
|
|
427
441
|
proposed: "chatSessionsProvider"
|
|
428
442
|
}, {
|
|
429
443
|
key: "chat/multiDiff/context",
|
|
430
444
|
id: MenuId.ChatMultiDiffContext,
|
|
431
|
-
description: ( localize(
|
|
445
|
+
description: ( localize(16632, "The Chat Multi-Diff context menu.")),
|
|
432
446
|
supportsSubmenus: false,
|
|
433
447
|
proposed: "chatSessionsProvider"
|
|
434
448
|
}, {
|
|
435
449
|
key: "chat/customizations/create",
|
|
436
450
|
id: MenuId.for("AICustomizationManagementCreate"),
|
|
437
|
-
description: ( localize(
|
|
451
|
+
description: ( localize(16633, "The create button in the Chat Customizations management editor.")),
|
|
438
452
|
supportsSubmenus: false,
|
|
439
453
|
proposed: "chatSessionCustomizationProvider"
|
|
440
454
|
}, {
|
|
441
455
|
key: "chat/customizations/item",
|
|
442
456
|
id: MenuId.for("AICustomizationManagementEditorItem"),
|
|
443
457
|
description: ( localize(
|
|
444
|
-
|
|
458
|
+
16634,
|
|
445
459
|
"The item context menu in the Chat Customizations management editor, including inline actions."
|
|
446
460
|
)),
|
|
447
461
|
supportsSubmenus: false,
|
|
@@ -449,36 +463,36 @@ const apiMenus = [{
|
|
|
449
463
|
}, {
|
|
450
464
|
key: "chat/editor/inlineGutter",
|
|
451
465
|
id: MenuId.ChatEditorInlineMenu,
|
|
452
|
-
description: ( localize(
|
|
466
|
+
description: ( localize(16635, "The inline gutter menu in the chat editor.")),
|
|
453
467
|
supportsSubmenus: false,
|
|
454
468
|
proposed: "contribChatEditorInlineGutterMenu"
|
|
455
469
|
}, {
|
|
456
470
|
key: "chat/contextUsage/actions",
|
|
457
471
|
id: MenuId.ChatContextUsageActions,
|
|
458
|
-
description: ( localize(
|
|
472
|
+
description: ( localize(16636, "Actions in the chat context usage details popup.")),
|
|
459
473
|
proposed: "chatParticipantAdditions"
|
|
460
474
|
}, {
|
|
461
475
|
key: "chat/newSession",
|
|
462
476
|
id: MenuId.ChatNewMenu,
|
|
463
|
-
description: ( localize(
|
|
477
|
+
description: ( localize(16637, "The Chat new session menu.")),
|
|
464
478
|
proposed: "chatSessionsProvider"
|
|
465
479
|
}, {
|
|
466
480
|
key: "agents/changes/actions",
|
|
467
481
|
id: MenuId.AgentsChangesToolbar,
|
|
468
|
-
description: ( localize(
|
|
482
|
+
description: ( localize(16638, "The Changes view toolbar of the agents window.")),
|
|
469
483
|
proposed: "chatSessionsProvider"
|
|
470
484
|
}, {
|
|
471
485
|
key: "agents/changes/actions/primary",
|
|
472
486
|
id: MenuId.AgentsChangesPrimaryActionSubMenu,
|
|
473
487
|
description: ( localize(
|
|
474
|
-
|
|
488
|
+
16639,
|
|
475
489
|
"The Changes view toolbar primary action submenu in the agents window."
|
|
476
490
|
)),
|
|
477
491
|
proposed: "chatSessionsProvider"
|
|
478
492
|
}, {
|
|
479
493
|
key: "agents/change/inline",
|
|
480
494
|
id: MenuId.AgentsChangeInlineToolbar,
|
|
481
|
-
description: ( localize(
|
|
495
|
+
description: ( localize(16640, "The Changes view inline menu in the agents window.")),
|
|
482
496
|
proposed: "chatSessionsProvider"
|
|
483
497
|
}];
|
|
484
498
|
var schema;
|
|
@@ -490,23 +504,23 @@ var schema;
|
|
|
490
504
|
function isValidMenuItem(item, collector) {
|
|
491
505
|
if (typeof item.command !== "string") {
|
|
492
506
|
collector.error(( localize(
|
|
493
|
-
|
|
507
|
+
16641,
|
|
494
508
|
"property `{0}` is mandatory and must be of type `string`",
|
|
495
509
|
"command"
|
|
496
510
|
)));
|
|
497
511
|
return false;
|
|
498
512
|
}
|
|
499
513
|
if (item.alt && typeof item.alt !== "string") {
|
|
500
|
-
collector.error(( localize(
|
|
514
|
+
collector.error(( localize(16642, "property `{0}` can be omitted or must be of type `string`", "alt")));
|
|
501
515
|
return false;
|
|
502
516
|
}
|
|
503
517
|
if (item.when && typeof item.when !== "string") {
|
|
504
|
-
collector.error(( localize(
|
|
518
|
+
collector.error(( localize(16642, "property `{0}` can be omitted or must be of type `string`", "when")));
|
|
505
519
|
return false;
|
|
506
520
|
}
|
|
507
521
|
if (item.group && typeof item.group !== "string") {
|
|
508
522
|
collector.error(( localize(
|
|
509
|
-
|
|
523
|
+
16642,
|
|
510
524
|
"property `{0}` can be omitted or must be of type `string`",
|
|
511
525
|
"group"
|
|
512
526
|
)));
|
|
@@ -518,19 +532,19 @@ var schema;
|
|
|
518
532
|
function isValidSubmenuItem(item, collector) {
|
|
519
533
|
if (typeof item.submenu !== "string") {
|
|
520
534
|
collector.error(( localize(
|
|
521
|
-
|
|
535
|
+
16641,
|
|
522
536
|
"property `{0}` is mandatory and must be of type `string`",
|
|
523
537
|
"submenu"
|
|
524
538
|
)));
|
|
525
539
|
return false;
|
|
526
540
|
}
|
|
527
541
|
if (item.when && typeof item.when !== "string") {
|
|
528
|
-
collector.error(( localize(
|
|
542
|
+
collector.error(( localize(16642, "property `{0}` can be omitted or must be of type `string`", "when")));
|
|
529
543
|
return false;
|
|
530
544
|
}
|
|
531
545
|
if (item.group && typeof item.group !== "string") {
|
|
532
546
|
collector.error(( localize(
|
|
533
|
-
|
|
547
|
+
16642,
|
|
534
548
|
"property `{0}` can be omitted or must be of type `string`",
|
|
535
549
|
"group"
|
|
536
550
|
)));
|
|
@@ -541,7 +555,7 @@ var schema;
|
|
|
541
555
|
schema.isValidSubmenuItem = isValidSubmenuItem;
|
|
542
556
|
function isValidItems(items, collector) {
|
|
543
557
|
if (!Array.isArray(items)) {
|
|
544
|
-
collector.error(( localize(
|
|
558
|
+
collector.error(( localize(16643, "submenu items must be an array")));
|
|
545
559
|
return false;
|
|
546
560
|
}
|
|
547
561
|
for (const item of items) {
|
|
@@ -560,15 +574,15 @@ var schema;
|
|
|
560
574
|
schema.isValidItems = isValidItems;
|
|
561
575
|
function isValidSubmenu(submenu, collector) {
|
|
562
576
|
if (typeof submenu !== "object") {
|
|
563
|
-
collector.error(( localize(
|
|
577
|
+
collector.error(( localize(16644, "submenu items must be an object")));
|
|
564
578
|
return false;
|
|
565
579
|
}
|
|
566
580
|
if (typeof submenu.id !== "string") {
|
|
567
|
-
collector.error(( localize(
|
|
581
|
+
collector.error(( localize(16641, "property `{0}` is mandatory and must be of type `string`", "id")));
|
|
568
582
|
return false;
|
|
569
583
|
}
|
|
570
584
|
if (typeof submenu.label !== "string") {
|
|
571
|
-
collector.error(( localize(
|
|
585
|
+
collector.error(( localize(16641, "property `{0}` is mandatory and must be of type `string`", "label")));
|
|
572
586
|
return false;
|
|
573
587
|
}
|
|
574
588
|
return true;
|
|
@@ -580,24 +594,24 @@ var schema;
|
|
|
580
594
|
properties: {
|
|
581
595
|
command: {
|
|
582
596
|
description: ( localize(
|
|
583
|
-
|
|
597
|
+
16645,
|
|
584
598
|
"Identifier of the command to execute. The command must be declared in the 'commands'-section"
|
|
585
599
|
)),
|
|
586
600
|
type: "string"
|
|
587
601
|
},
|
|
588
602
|
alt: {
|
|
589
603
|
description: ( localize(
|
|
590
|
-
|
|
604
|
+
16646,
|
|
591
605
|
"Identifier of an alternative command to execute. The command must be declared in the 'commands'-section"
|
|
592
606
|
)),
|
|
593
607
|
type: "string"
|
|
594
608
|
},
|
|
595
609
|
when: {
|
|
596
|
-
description: ( localize(
|
|
610
|
+
description: ( localize(16647, "Condition which must be true to show this item")),
|
|
597
611
|
type: "string"
|
|
598
612
|
},
|
|
599
613
|
group: {
|
|
600
|
-
description: ( localize(
|
|
614
|
+
description: ( localize(16648, "Group into which this item belongs")),
|
|
601
615
|
type: "string"
|
|
602
616
|
}
|
|
603
617
|
}
|
|
@@ -607,15 +621,15 @@ var schema;
|
|
|
607
621
|
required: ["submenu"],
|
|
608
622
|
properties: {
|
|
609
623
|
submenu: {
|
|
610
|
-
description: ( localize(
|
|
624
|
+
description: ( localize(16649, "Identifier of the submenu to display in this item.")),
|
|
611
625
|
type: "string"
|
|
612
626
|
},
|
|
613
627
|
when: {
|
|
614
|
-
description: ( localize(
|
|
628
|
+
description: ( localize(16647, "Condition which must be true to show this item")),
|
|
615
629
|
type: "string"
|
|
616
630
|
},
|
|
617
631
|
group: {
|
|
618
|
-
description: ( localize(
|
|
632
|
+
description: ( localize(16648, "Group into which this item belongs")),
|
|
619
633
|
type: "string"
|
|
620
634
|
}
|
|
621
635
|
}
|
|
@@ -625,16 +639,16 @@ var schema;
|
|
|
625
639
|
required: ["id", "label"],
|
|
626
640
|
properties: {
|
|
627
641
|
id: {
|
|
628
|
-
description: ( localize(
|
|
642
|
+
description: ( localize(16650, "Identifier of the menu to display as a submenu.")),
|
|
629
643
|
type: "string"
|
|
630
644
|
},
|
|
631
645
|
label: {
|
|
632
|
-
description: ( localize(
|
|
646
|
+
description: ( localize(16651, "The label of the menu item which leads to this submenu.")),
|
|
633
647
|
type: "string"
|
|
634
648
|
},
|
|
635
649
|
icon: {
|
|
636
650
|
description: ( localize(
|
|
637
|
-
|
|
651
|
+
16652,
|
|
638
652
|
"(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)\""
|
|
639
653
|
)),
|
|
640
654
|
anyOf: [{
|
|
@@ -643,11 +657,11 @@ var schema;
|
|
|
643
657
|
type: "object",
|
|
644
658
|
properties: {
|
|
645
659
|
light: {
|
|
646
|
-
description: ( localize(
|
|
660
|
+
description: ( localize(16653, "Icon path when a light theme is used")),
|
|
647
661
|
type: "string"
|
|
648
662
|
},
|
|
649
663
|
dark: {
|
|
650
|
-
description: ( localize(
|
|
664
|
+
description: ( localize(16654, "Icon path when a dark theme is used")),
|
|
651
665
|
type: "string"
|
|
652
666
|
}
|
|
653
667
|
}
|
|
@@ -656,11 +670,11 @@ var schema;
|
|
|
656
670
|
}
|
|
657
671
|
};
|
|
658
672
|
schema.menusContribution = {
|
|
659
|
-
description: ( localize(
|
|
673
|
+
description: ( localize(16655, "Contributes menu items to the editor")),
|
|
660
674
|
type: "object",
|
|
661
675
|
properties: index(apiMenus, menu => menu.key, menu => ({
|
|
662
676
|
markdownDescription: menu.proposed ? ( localize(
|
|
663
|
-
|
|
677
|
+
16656,
|
|
664
678
|
"Proposed API, requires `enabledApiProposal: [\"{0}\"]` - {1}",
|
|
665
679
|
menu.proposed,
|
|
666
680
|
menu.description
|
|
@@ -679,18 +693,18 @@ var schema;
|
|
|
679
693
|
}
|
|
680
694
|
};
|
|
681
695
|
schema.submenusContribution = {
|
|
682
|
-
description: ( localize(
|
|
696
|
+
description: ( localize(16657, "Contributes submenu items to the editor")),
|
|
683
697
|
type: "array",
|
|
684
698
|
items: submenu
|
|
685
699
|
};
|
|
686
700
|
function isValidCommand(command, collector) {
|
|
687
701
|
if (!command) {
|
|
688
|
-
collector.error(( localize(
|
|
702
|
+
collector.error(( localize(16658, "expected non-empty value.")));
|
|
689
703
|
return false;
|
|
690
704
|
}
|
|
691
705
|
if (isFalsyOrWhitespace(command.command)) {
|
|
692
706
|
collector.error(( localize(
|
|
693
|
-
|
|
707
|
+
16641,
|
|
694
708
|
"property `{0}` is mandatory and must be of type `string`",
|
|
695
709
|
"command"
|
|
696
710
|
)));
|
|
@@ -704,7 +718,7 @@ var schema;
|
|
|
704
718
|
}
|
|
705
719
|
if (command.enablement && typeof command.enablement !== "string") {
|
|
706
720
|
collector.error(( localize(
|
|
707
|
-
|
|
721
|
+
16642,
|
|
708
722
|
"property `{0}` can be omitted or must be of type `string`",
|
|
709
723
|
"precondition"
|
|
710
724
|
)));
|
|
@@ -729,7 +743,7 @@ var schema;
|
|
|
729
743
|
return true;
|
|
730
744
|
}
|
|
731
745
|
collector.error(( localize(
|
|
732
|
-
|
|
746
|
+
16659,
|
|
733
747
|
"property `icon` can be omitted or must be either a string or a literal like `{dark, light}`"
|
|
734
748
|
)));
|
|
735
749
|
return false;
|
|
@@ -737,21 +751,21 @@ var schema;
|
|
|
737
751
|
function isValidLocalizedString(localized, collector, propertyName) {
|
|
738
752
|
if (typeof localized === "undefined") {
|
|
739
753
|
collector.error(( localize(
|
|
740
|
-
|
|
754
|
+
16660,
|
|
741
755
|
"property `{0}` is mandatory and must be of type `string` or `object`",
|
|
742
756
|
propertyName
|
|
743
757
|
)));
|
|
744
758
|
return false;
|
|
745
759
|
} else if (typeof localized === "string" && isFalsyOrWhitespace(localized)) {
|
|
746
760
|
collector.error(( localize(
|
|
747
|
-
|
|
761
|
+
16641,
|
|
748
762
|
"property `{0}` is mandatory and must be of type `string`",
|
|
749
763
|
propertyName
|
|
750
764
|
)));
|
|
751
765
|
return false;
|
|
752
766
|
} else if (typeof localized !== "string" && (isFalsyOrWhitespace(localized.original) || isFalsyOrWhitespace(localized.value))) {
|
|
753
767
|
collector.error(( localize(
|
|
754
|
-
|
|
768
|
+
16661,
|
|
755
769
|
"properties `{0}` and `{1}` are mandatory and must be of type `string`",
|
|
756
770
|
`${propertyName}.value`,
|
|
757
771
|
`${propertyName}.original`
|
|
@@ -765,37 +779,37 @@ var schema;
|
|
|
765
779
|
required: ["command", "title"],
|
|
766
780
|
properties: {
|
|
767
781
|
command: {
|
|
768
|
-
description: ( localize(
|
|
782
|
+
description: ( localize(16662, "Identifier of the command to execute")),
|
|
769
783
|
type: "string"
|
|
770
784
|
},
|
|
771
785
|
title: {
|
|
772
|
-
description: ( localize(
|
|
786
|
+
description: ( localize(16663, "Title by which the command is represented in the UI")),
|
|
773
787
|
type: "string"
|
|
774
788
|
},
|
|
775
789
|
shortTitle: {
|
|
776
790
|
markdownDescription: ( localize(
|
|
777
|
-
|
|
791
|
+
16664,
|
|
778
792
|
"(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."
|
|
779
793
|
)),
|
|
780
794
|
type: "string"
|
|
781
795
|
},
|
|
782
796
|
category: {
|
|
783
797
|
description: ( localize(
|
|
784
|
-
|
|
798
|
+
16665,
|
|
785
799
|
"(Optional) Category string by which the command is grouped in the UI"
|
|
786
800
|
)),
|
|
787
801
|
type: "string"
|
|
788
802
|
},
|
|
789
803
|
enablement: {
|
|
790
804
|
description: ( localize(
|
|
791
|
-
|
|
805
|
+
16666,
|
|
792
806
|
"(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."
|
|
793
807
|
)),
|
|
794
808
|
type: "string"
|
|
795
809
|
},
|
|
796
810
|
icon: {
|
|
797
811
|
description: ( localize(
|
|
798
|
-
|
|
812
|
+
16667,
|
|
799
813
|
"(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)\""
|
|
800
814
|
)),
|
|
801
815
|
anyOf: [{
|
|
@@ -804,11 +818,11 @@ var schema;
|
|
|
804
818
|
type: "object",
|
|
805
819
|
properties: {
|
|
806
820
|
light: {
|
|
807
|
-
description: ( localize(
|
|
821
|
+
description: ( localize(16668, "Icon path when a light theme is used")),
|
|
808
822
|
type: "string"
|
|
809
823
|
},
|
|
810
824
|
dark: {
|
|
811
|
-
description: ( localize(
|
|
825
|
+
description: ( localize(16669, "Icon path when a dark theme is used")),
|
|
812
826
|
type: "string"
|
|
813
827
|
}
|
|
814
828
|
}
|
|
@@ -817,7 +831,7 @@ var schema;
|
|
|
817
831
|
}
|
|
818
832
|
};
|
|
819
833
|
schema.commandsContribution = {
|
|
820
|
-
description: ( localize(
|
|
834
|
+
description: ( localize(16670, "Contributes commands to the command palette.")),
|
|
821
835
|
oneOf: [commandType, {
|
|
822
836
|
type: "array",
|
|
823
837
|
items: commandType
|
|
@@ -867,14 +881,14 @@ commandsExtensionPoint.setHandler(extensions => {
|
|
|
867
881
|
if (existingCmd) {
|
|
868
882
|
if (existingCmd.source) {
|
|
869
883
|
extension.collector.info(( localize(
|
|
870
|
-
|
|
884
|
+
16671,
|
|
871
885
|
"Command `{0}` already registered by {1} ({2})",
|
|
872
886
|
userFriendlyCommand.command,
|
|
873
887
|
existingCmd.source.title,
|
|
874
888
|
existingCmd.source.id
|
|
875
889
|
)));
|
|
876
890
|
} else {
|
|
877
|
-
extension.collector.info(( localize(
|
|
891
|
+
extension.collector.info(( localize(16672, "Command `{0}` already registered", userFriendlyCommand.command)));
|
|
878
892
|
}
|
|
879
893
|
}
|
|
880
894
|
_commandRegistrations.add(MenuRegistry.addCommand({
|
|
@@ -922,19 +936,19 @@ submenusExtensionPoint.setHandler(extensions => {
|
|
|
922
936
|
continue;
|
|
923
937
|
}
|
|
924
938
|
if (!submenuInfo.id) {
|
|
925
|
-
collector.warn(( localize(
|
|
939
|
+
collector.warn(( localize(16673, "`{0}` is not a valid submenu identifier", submenuInfo.id)));
|
|
926
940
|
continue;
|
|
927
941
|
}
|
|
928
942
|
if (( _submenus.has(submenuInfo.id))) {
|
|
929
943
|
collector.info(( localize(
|
|
930
|
-
|
|
944
|
+
16674,
|
|
931
945
|
"The `{0}` submenu was already previously registered.",
|
|
932
946
|
submenuInfo.id
|
|
933
947
|
)));
|
|
934
948
|
continue;
|
|
935
949
|
}
|
|
936
950
|
if (!submenuInfo.label) {
|
|
937
|
-
collector.warn(( localize(
|
|
951
|
+
collector.warn(( localize(16675, "`{0}` is not a valid submenu label", submenuInfo.label)));
|
|
938
952
|
continue;
|
|
939
953
|
}
|
|
940
954
|
let absoluteIcon;
|
|
@@ -995,7 +1009,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
995
1009
|
}
|
|
996
1010
|
if (menu.proposed && !isProposedApiEnabled(extension.description)) {
|
|
997
1011
|
collector.error(( localize(
|
|
998
|
-
|
|
1012
|
+
16676,
|
|
999
1013
|
"{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}",
|
|
1000
1014
|
entry[0],
|
|
1001
1015
|
menu.proposed,
|
|
@@ -1010,7 +1024,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1010
1024
|
const alt = menuItem.alt && MenuRegistry.getCommand(menuItem.alt) || undefined;
|
|
1011
1025
|
if (!command) {
|
|
1012
1026
|
collector.error(( localize(
|
|
1013
|
-
|
|
1027
|
+
16677,
|
|
1014
1028
|
"Menu item references a command `{0}` which is not defined in the 'commands' section.",
|
|
1015
1029
|
menuItem.command
|
|
1016
1030
|
)));
|
|
@@ -1018,13 +1032,13 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1018
1032
|
}
|
|
1019
1033
|
if (menuItem.alt && !alt) {
|
|
1020
1034
|
collector.warn(( localize(
|
|
1021
|
-
|
|
1035
|
+
16678,
|
|
1022
1036
|
"Menu item references an alt-command `{0}` which is not defined in the 'commands' section.",
|
|
1023
1037
|
menuItem.alt
|
|
1024
1038
|
)));
|
|
1025
1039
|
}
|
|
1026
1040
|
if (menuItem.command === menuItem.alt) {
|
|
1027
|
-
collector.info(( localize(
|
|
1041
|
+
collector.info(( localize(16679, "Menu item references the same command as default and alt-command")));
|
|
1028
1042
|
}
|
|
1029
1043
|
item = {
|
|
1030
1044
|
command,
|
|
@@ -1036,7 +1050,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1036
1050
|
} else {
|
|
1037
1051
|
if (menu.supportsSubmenus === false) {
|
|
1038
1052
|
collector.error(( localize(
|
|
1039
|
-
|
|
1053
|
+
16680,
|
|
1040
1054
|
"Menu item references a submenu for a menu which doesn't have submenu support."
|
|
1041
1055
|
)));
|
|
1042
1056
|
continue;
|
|
@@ -1044,7 +1058,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1044
1058
|
const submenu = _submenus.get(menuItem.submenu);
|
|
1045
1059
|
if (!submenu) {
|
|
1046
1060
|
collector.error(( localize(
|
|
1047
|
-
|
|
1061
|
+
16681,
|
|
1048
1062
|
"Menu item references a submenu `{0}` which is not defined in the 'submenus' section.",
|
|
1049
1063
|
menuItem.submenu
|
|
1050
1064
|
)));
|
|
@@ -1057,7 +1071,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1057
1071
|
}
|
|
1058
1072
|
if (( submenuRegistrations.has(submenu.id.id))) {
|
|
1059
1073
|
collector.warn(( localize(
|
|
1060
|
-
|
|
1074
|
+
16682,
|
|
1061
1075
|
"The `{0}` submenu was already contributed to the `{1}` menu.",
|
|
1062
1076
|
menuItem.submenu,
|
|
1063
1077
|
entry[0]
|
|
@@ -1085,7 +1099,7 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
1085
1099
|
}
|
|
1086
1100
|
if (menu.id === MenuId.ViewContainerTitle && !menuItem.when?.includes("viewContainer == workbench.view.debug")) {
|
|
1087
1101
|
collector.error(( localize(
|
|
1088
|
-
|
|
1102
|
+
16683,
|
|
1089
1103
|
"The {0} menu contribution must check {1} in its {2} clause.",
|
|
1090
1104
|
"`viewContainer/title`",
|
|
1091
1105
|
"`viewContainer == workbench.view.debug`",
|
|
@@ -1187,7 +1201,7 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
|
|
|
1187
1201
|
dispose: () => {}
|
|
1188
1202
|
};
|
|
1189
1203
|
}
|
|
1190
|
-
const headers = [( localize(
|
|
1204
|
+
const headers = [( localize(16684, "ID")), ( localize(16685, "Title")), ( localize(16686, "Keyboard Shortcuts")), ( localize(16687, "Menu Contexts"))];
|
|
1191
1205
|
const rows = ( commands.sort((a, b) => a.id.localeCompare(b.id)).map(command => {
|
|
1192
1206
|
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(" ")}`)];
|
|
1193
1207
|
}));
|
|
@@ -1218,7 +1232,7 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
|
|
|
1218
1232
|
CommandsTableRenderer = ( __decorate([( __param(0, IKeybindingService))], CommandsTableRenderer));
|
|
1219
1233
|
( Registry.as(Extensions.ExtensionFeaturesRegistry)).registerExtensionFeature({
|
|
1220
1234
|
id: "commands",
|
|
1221
|
-
label: ( localize(
|
|
1235
|
+
label: ( localize(16688, "Commands")),
|
|
1222
1236
|
access: {
|
|
1223
1237
|
canToggle: false
|
|
1224
1238
|
},
|