@codingame/monaco-vscode-keybindings-service-override 10.1.4 → 11.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 CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-keybindings-service-override",
3
- "version": "10.1.4",
3
+ "version": "11.0.1",
4
4
  "keywords": [],
5
5
  "author": {
6
6
  "name": "CodinGame",
@@ -26,7 +26,7 @@
26
26
  }
27
27
  },
28
28
  "dependencies": {
29
- "vscode": "npm:@codingame/monaco-vscode-api@10.1.4",
30
- "@codingame/monaco-vscode-files-service-override": "10.1.4"
29
+ "vscode": "npm:@codingame/monaco-vscode-api@11.0.1",
30
+ "@codingame/monaco-vscode-files-service-override": "11.0.1"
31
31
  }
32
32
  }
@@ -14,7 +14,7 @@ const keyboardConfiguration = {
14
14
  'id': 'keyboard',
15
15
  'order': 15,
16
16
  'type': 'object',
17
- 'title': ( localize(8782, "Keyboard")),
17
+ 'title': ( localize(8871, "Keyboard")),
18
18
  'properties': {
19
19
  'keyboard.dispatch': {
20
20
  scope: 1 ,
@@ -22,7 +22,7 @@ const keyboardConfiguration = {
22
22
  enum: ['code', 'keyCode'],
23
23
  default: 'code',
24
24
  markdownDescription: ( localize(
25
- 8783,
25
+ 8872,
26
26
  "Controls the dispatching logic for key presses to use either `code` (recommended) or `keyCode`."
27
27
  )),
28
28
  included: OS === 2 || OS === 3
@@ -31,7 +31,7 @@ const keyboardConfiguration = {
31
31
  scope: 1 ,
32
32
  type: 'boolean',
33
33
  default: false,
34
- markdownDescription: ( localize(8784, "Controls if the AltGraph+ modifier should be treated as Ctrl+Alt+.")),
34
+ markdownDescription: ( localize(8873, "Controls if the AltGraph+ modifier should be treated as Ctrl+Alt+.")),
35
35
  included: OS === 1
36
36
  }
37
37
  }
@@ -9,10 +9,10 @@ class RunCommands extends Action2 {
9
9
  constructor() {
10
10
  super({
11
11
  id: 'runCommands',
12
- title: ( localize2(3563, "Run Commands")),
12
+ title: ( localize2(3562, "Run Commands")),
13
13
  f1: false,
14
14
  metadata: {
15
- description: ( localize(3564, "Run several commands")),
15
+ description: ( localize(3563, "Run several commands")),
16
16
  args: [
17
17
  {
18
18
  name: 'args',
@@ -22,7 +22,7 @@ class RunCommands extends Action2 {
22
22
  properties: {
23
23
  commands: {
24
24
  type: 'array',
25
- description: ( localize(3565, "Commands to run")),
25
+ description: ( localize(3564, "Commands to run")),
26
26
  items: {
27
27
  anyOf: [
28
28
  {
@@ -62,14 +62,14 @@ class RunCommands extends Action2 {
62
62
  const notificationService = accessor.get(INotificationService);
63
63
  if (!this._isCommandArgs(args)) {
64
64
  notificationService.error(( localize(
65
- 3566,
65
+ 3565,
66
66
  "'runCommands' has received an argument with incorrect type. Please, review the argument passed to the command."
67
67
  )));
68
68
  return;
69
69
  }
70
70
  if (args.commands.length === 0) {
71
71
  notificationService.warn(( localize(
72
- 3567,
72
+ 3566,
73
73
  "'runCommands' has not received commands to run. Did you forget to pass commands in the 'runCommands' argument?"
74
74
  )));
75
75
  return;
@@ -9,7 +9,7 @@ class ToggleKeybindingsLogAction extends Action2 {
9
9
  constructor() {
10
10
  super({
11
11
  id: 'workbench.action.toggleKeybindingsLog',
12
- title: ( localize2(3559, "Toggle Keyboard Shortcuts Troubleshooting")),
12
+ title: ( localize2(3558, "Toggle Keyboard Shortcuts Troubleshooting")),
13
13
  category: Categories.Developer,
14
14
  f1: true
15
15
  });
@@ -23,7 +23,7 @@ import { DEFINE_KEYBINDING_EDITOR_CONTRIB_ID } from 'vscode/vscode/vs/workbench/
23
23
 
24
24
  var KeybindingEditorDecorationsRenderer_1;
25
25
  const NLS_KB_LAYOUT_ERROR_MESSAGE = ( localize(
26
- 3560,
26
+ 3559,
27
27
  "You won't be able to produce this key combination under your current keyboard layout."
28
28
  ));
29
29
  let DefineKeybindingEditorContribution = class DefineKeybindingEditorContribution extends Disposable {
@@ -181,14 +181,14 @@ let KeybindingEditorDecorationsRenderer = KeybindingEditorDecorationsRenderer_1
181
181
  else {
182
182
  if (usLabel && uiLabel !== usLabel) {
183
183
  msg = ( (new MarkdownString(( localize(
184
- 3561,
184
+ 3560,
185
185
  "**{0}** for your current keyboard layout (**{1}** for US standard).",
186
186
  uiLabel,
187
187
  usLabel
188
188
  )))));
189
189
  }
190
190
  else {
191
- msg = ( (new MarkdownString(( localize(3562, "**{0}** for your current keyboard layout.", uiLabel)))));
191
+ msg = ( (new MarkdownString(( localize(3561, "**{0}** for your current keyboard layout.", uiLabel)))));
192
192
  }
193
193
  className = 'keybindingInfo';
194
194
  overviewRulerColor = themeColorFromId(overviewRulerInfo);
@@ -20,203 +20,203 @@ const apiMenus = [
20
20
  {
21
21
  key: 'commandPalette',
22
22
  id: MenuId.CommandPalette,
23
- description: ( localize(8663, "The Command Palette")),
23
+ description: ( localize(8753, "The Command Palette")),
24
24
  supportsSubmenus: false
25
25
  },
26
26
  {
27
27
  key: 'touchBar',
28
28
  id: MenuId.TouchBarContext,
29
- description: ( localize(8664, "The touch bar (macOS only)")),
29
+ description: ( localize(8754, "The touch bar (macOS only)")),
30
30
  supportsSubmenus: false
31
31
  },
32
32
  {
33
33
  key: 'editor/title',
34
34
  id: MenuId.EditorTitle,
35
- description: ( localize(8665, "The editor title menu"))
35
+ description: ( localize(8755, "The editor title menu"))
36
36
  },
37
37
  {
38
38
  key: 'editor/title/run',
39
39
  id: MenuId.EditorTitleRun,
40
- description: ( localize(8666, "Run submenu inside the editor title menu"))
40
+ description: ( localize(8756, "Run submenu inside the editor title menu"))
41
41
  },
42
42
  {
43
43
  key: 'editor/context',
44
44
  id: MenuId.EditorContext,
45
- description: ( localize(8667, "The editor context menu"))
45
+ description: ( localize(8757, "The editor context menu"))
46
46
  },
47
47
  {
48
48
  key: 'editor/context/copy',
49
49
  id: MenuId.EditorContextCopy,
50
- description: ( localize(8668, "'Copy as' submenu in the editor context menu"))
50
+ description: ( localize(8758, "'Copy as' submenu in the editor context menu"))
51
51
  },
52
52
  {
53
53
  key: 'editor/context/share',
54
54
  id: MenuId.EditorContextShare,
55
- description: ( localize(8669, "'Share' submenu in the editor context menu")),
55
+ description: ( localize(8759, "'Share' submenu in the editor context menu")),
56
56
  proposed: 'contribShareMenu'
57
57
  },
58
58
  {
59
59
  key: 'explorer/context',
60
60
  id: MenuId.ExplorerContext,
61
- description: ( localize(8670, "The file explorer context menu"))
61
+ description: ( localize(8760, "The file explorer context menu"))
62
62
  },
63
63
  {
64
64
  key: 'explorer/context/share',
65
65
  id: MenuId.ExplorerContextShare,
66
- description: ( localize(8671, "'Share' submenu in the file explorer context menu")),
66
+ description: ( localize(8761, "'Share' submenu in the file explorer context menu")),
67
67
  proposed: 'contribShareMenu'
68
68
  },
69
69
  {
70
70
  key: 'editor/title/context',
71
71
  id: MenuId.EditorTitleContext,
72
- description: ( localize(8672, "The editor tabs context menu"))
72
+ description: ( localize(8762, "The editor tabs context menu"))
73
73
  },
74
74
  {
75
75
  key: 'editor/title/context/share',
76
76
  id: MenuId.EditorTitleContextShare,
77
- description: ( localize(8673, "'Share' submenu inside the editor title context menu")),
77
+ description: ( localize(8763, "'Share' submenu inside the editor title context menu")),
78
78
  proposed: 'contribShareMenu'
79
79
  },
80
80
  {
81
81
  key: 'debug/callstack/context',
82
82
  id: MenuId.DebugCallStackContext,
83
- description: ( localize(8674, "The debug callstack view context menu"))
83
+ description: ( localize(8764, "The debug callstack view context menu"))
84
84
  },
85
85
  {
86
86
  key: 'debug/variables/context',
87
87
  id: MenuId.DebugVariablesContext,
88
- description: ( localize(8675, "The debug variables view context menu"))
88
+ description: ( localize(8765, "The debug variables view context menu"))
89
89
  },
90
90
  {
91
91
  key: 'debug/toolBar',
92
92
  id: MenuId.DebugToolBar,
93
- description: ( localize(8676, "The debug toolbar menu"))
93
+ description: ( localize(8766, "The debug toolbar menu"))
94
94
  },
95
95
  {
96
96
  key: 'debug/createConfiguration',
97
97
  id: MenuId.DebugCreateConfiguration,
98
98
  proposed: 'contribDebugCreateConfiguration',
99
- description: ( localize(8677, "The debug create configuration menu"))
99
+ description: ( localize(8767, "The debug create configuration menu"))
100
100
  },
101
101
  {
102
102
  key: 'notebook/variables/context',
103
103
  id: MenuId.NotebookVariablesContext,
104
- description: ( localize(8678, "The notebook variables view context menu"))
104
+ description: ( localize(8768, "The notebook variables view context menu"))
105
105
  },
106
106
  {
107
107
  key: 'menuBar/home',
108
108
  id: MenuId.MenubarHomeMenu,
109
- description: ( localize(8679, "The home indicator context menu (web only)")),
109
+ description: ( localize(8769, "The home indicator context menu (web only)")),
110
110
  proposed: 'contribMenuBarHome',
111
111
  supportsSubmenus: false
112
112
  },
113
113
  {
114
114
  key: 'menuBar/edit/copy',
115
115
  id: MenuId.MenubarCopy,
116
- description: ( localize(8680, "'Copy as' submenu in the top level Edit menu"))
116
+ description: ( localize(8770, "'Copy as' submenu in the top level Edit menu"))
117
117
  },
118
118
  {
119
119
  key: 'scm/title',
120
120
  id: MenuId.SCMTitle,
121
- description: ( localize(8681, "The Source Control title menu"))
121
+ description: ( localize(8771, "The Source Control title menu"))
122
122
  },
123
123
  {
124
124
  key: 'scm/sourceControl',
125
125
  id: MenuId.SCMSourceControl,
126
- description: ( localize(8682, "The Source Control menu"))
126
+ description: ( localize(8772, "The Source Control menu"))
127
127
  },
128
128
  {
129
129
  key: 'scm/sourceControl/title',
130
130
  id: MenuId.SCMSourceControlTitle,
131
- description: ( localize(8683, "The Source Control title menu")),
131
+ description: ( localize(8773, "The Source Control title menu")),
132
132
  proposed: 'contribSourceControlTitleMenu'
133
133
  },
134
134
  {
135
135
  key: 'scm/resourceState/context',
136
136
  id: MenuId.SCMResourceContext,
137
- description: ( localize(8684, "The Source Control resource state context menu"))
137
+ description: ( localize(8774, "The Source Control resource state context menu"))
138
138
  },
139
139
  {
140
140
  key: 'scm/resourceFolder/context',
141
141
  id: MenuId.SCMResourceFolderContext,
142
- description: ( localize(8685, "The Source Control resource folder context menu"))
142
+ description: ( localize(8775, "The Source Control resource folder context menu"))
143
143
  },
144
144
  {
145
145
  key: 'scm/resourceGroup/context',
146
146
  id: MenuId.SCMResourceGroupContext,
147
- description: ( localize(8686, "The Source Control resource group context menu"))
147
+ description: ( localize(8776, "The Source Control resource group context menu"))
148
148
  },
149
149
  {
150
150
  key: 'scm/change/title',
151
151
  id: MenuId.SCMChangeContext,
152
- description: ( localize(8687, "The Source Control inline change menu"))
152
+ description: ( localize(8777, "The Source Control inline change menu"))
153
153
  },
154
154
  {
155
155
  key: 'scm/inputBox',
156
156
  id: MenuId.SCMInputBox,
157
- description: ( localize(8688, "The Source Control input box menu")),
157
+ description: ( localize(8778, "The Source Control input box menu")),
158
158
  proposed: 'contribSourceControlInputBoxMenu'
159
159
  },
160
160
  {
161
161
  key: 'scm/history/title',
162
162
  id: MenuId.SCMHistoryTitle,
163
- description: ( localize(8689, "The Source Control History title menu")),
163
+ description: ( localize(8779, "The Source Control History title menu")),
164
164
  proposed: 'contribSourceControlHistoryTitleMenu'
165
165
  },
166
166
  {
167
167
  key: 'scm/historyItem/context',
168
168
  id: MenuId.SCMChangesContext,
169
- description: ( localize(8690, "The Source Control history item context menu")),
169
+ description: ( localize(8780, "The Source Control history item context menu")),
170
170
  proposed: 'contribSourceControlHistoryItemMenu'
171
171
  },
172
172
  {
173
173
  key: 'statusBar/remoteIndicator',
174
174
  id: MenuId.StatusBarRemoteIndicatorMenu,
175
- description: ( localize(8691, "The remote indicator menu in the status bar")),
175
+ description: ( localize(8781, "The remote indicator menu in the status bar")),
176
176
  supportsSubmenus: false
177
177
  },
178
178
  {
179
179
  key: 'terminal/context',
180
180
  id: MenuId.TerminalInstanceContext,
181
- description: ( localize(8692, "The terminal context menu"))
181
+ description: ( localize(8782, "The terminal context menu"))
182
182
  },
183
183
  {
184
184
  key: 'terminal/title/context',
185
185
  id: MenuId.TerminalTabContext,
186
- description: ( localize(8693, "The terminal tabs context menu"))
186
+ description: ( localize(8783, "The terminal tabs context menu"))
187
187
  },
188
188
  {
189
189
  key: 'view/title',
190
190
  id: MenuId.ViewTitle,
191
- description: ( localize(8694, "The contributed view title menu"))
191
+ description: ( localize(8784, "The contributed view title menu"))
192
192
  },
193
193
  {
194
194
  key: 'viewContainer/title',
195
195
  id: MenuId.ViewContainerTitle,
196
- description: ( localize(8695, "The contributed view container title menu")),
196
+ description: ( localize(8785, "The contributed view container title menu")),
197
197
  proposed: 'contribViewContainerTitle'
198
198
  },
199
199
  {
200
200
  key: 'view/item/context',
201
201
  id: MenuId.ViewItemContext,
202
- description: ( localize(8696, "The contributed view item context menu"))
202
+ description: ( localize(8786, "The contributed view item context menu"))
203
203
  },
204
204
  {
205
205
  key: 'comments/comment/editorActions',
206
206
  id: MenuId.CommentEditorActions,
207
- description: ( localize(8697, "The contributed comment editor actions")),
207
+ description: ( localize(8787, "The contributed comment editor actions")),
208
208
  proposed: 'contribCommentEditorActionsMenu'
209
209
  },
210
210
  {
211
211
  key: 'comments/commentThread/title',
212
212
  id: MenuId.CommentThreadTitle,
213
- description: ( localize(8698, "The contributed comment thread title menu"))
213
+ description: ( localize(8788, "The contributed comment thread title menu"))
214
214
  },
215
215
  {
216
216
  key: 'comments/commentThread/context',
217
217
  id: MenuId.CommentThreadActions,
218
218
  description: ( localize(
219
- 8699,
219
+ 8789,
220
220
  "The contributed comment thread context menu, rendered as buttons below the comment editor"
221
221
  )),
222
222
  supportsSubmenus: false
@@ -225,7 +225,7 @@ const apiMenus = [
225
225
  key: 'comments/commentThread/additionalActions',
226
226
  id: MenuId.CommentThreadAdditionalActions,
227
227
  description: ( localize(
228
- 8699,
228
+ 8789,
229
229
  "The contributed comment thread context menu, rendered as buttons below the comment editor"
230
230
  )),
231
231
  supportsSubmenus: true,
@@ -235,7 +235,7 @@ const apiMenus = [
235
235
  key: 'comments/commentThread/title/context',
236
236
  id: MenuId.CommentThreadTitleContext,
237
237
  description: ( localize(
238
- 8700,
238
+ 8790,
239
239
  "The contributed comment thread title's peek context menu, rendered as a right click menu on the comment thread's peek title."
240
240
  )),
241
241
  proposed: 'contribCommentPeekContext'
@@ -243,13 +243,13 @@ const apiMenus = [
243
243
  {
244
244
  key: 'comments/comment/title',
245
245
  id: MenuId.CommentTitle,
246
- description: ( localize(8701, "The contributed comment title menu"))
246
+ description: ( localize(8791, "The contributed comment title menu"))
247
247
  },
248
248
  {
249
249
  key: 'comments/comment/context',
250
250
  id: MenuId.CommentActions,
251
251
  description: ( localize(
252
- 8702,
252
+ 8792,
253
253
  "The contributed comment context menu, rendered as buttons below the comment editor"
254
254
  )),
255
255
  supportsSubmenus: false
@@ -258,7 +258,7 @@ const apiMenus = [
258
258
  key: 'comments/commentThread/comment/context',
259
259
  id: MenuId.CommentThreadCommentContext,
260
260
  description: ( localize(
261
- 8703,
261
+ 8793,
262
262
  "The contributed comment context menu, rendered as a right click menu on the an individual comment in the comment thread's peek view."
263
263
  )),
264
264
  proposed: 'contribCommentPeekContext'
@@ -266,173 +266,166 @@ const apiMenus = [
266
266
  {
267
267
  key: 'commentsView/commentThread/context',
268
268
  id: MenuId.CommentsViewThreadActions,
269
- description: ( localize(8704, "The contributed comment thread context menu in the comments view")),
269
+ description: ( localize(8794, "The contributed comment thread context menu in the comments view")),
270
270
  proposed: 'contribCommentsViewThreadMenus'
271
271
  },
272
272
  {
273
273
  key: 'notebook/toolbar',
274
274
  id: MenuId.NotebookToolbar,
275
- description: ( localize(8705, "The contributed notebook toolbar menu"))
275
+ description: ( localize(8795, "The contributed notebook toolbar menu"))
276
276
  },
277
277
  {
278
278
  key: 'notebook/kernelSource',
279
279
  id: MenuId.NotebookKernelSource,
280
- description: ( localize(8706, "The contributed notebook kernel sources menu")),
280
+ description: ( localize(8796, "The contributed notebook kernel sources menu")),
281
281
  proposed: 'notebookKernelSource'
282
282
  },
283
283
  {
284
284
  key: 'notebook/cell/title',
285
285
  id: MenuId.NotebookCellTitle,
286
- description: ( localize(8707, "The contributed notebook cell title menu"))
286
+ description: ( localize(8797, "The contributed notebook cell title menu"))
287
287
  },
288
288
  {
289
289
  key: 'notebook/cell/execute',
290
290
  id: MenuId.NotebookCellExecute,
291
- description: ( localize(8708, "The contributed notebook cell execution menu"))
291
+ description: ( localize(8798, "The contributed notebook cell execution menu"))
292
292
  },
293
293
  {
294
294
  key: 'interactive/toolbar',
295
295
  id: MenuId.InteractiveToolbar,
296
- description: ( localize(8709, "The contributed interactive toolbar menu")),
296
+ description: ( localize(8799, "The contributed interactive toolbar menu")),
297
297
  },
298
298
  {
299
299
  key: 'interactive/cell/title',
300
300
  id: MenuId.InteractiveCellTitle,
301
- description: ( localize(8710, "The contributed interactive cell title menu")),
301
+ description: ( localize(8800, "The contributed interactive cell title menu")),
302
302
  },
303
303
  {
304
304
  key: 'issue/reporter',
305
305
  id: MenuId.IssueReporter,
306
- description: ( localize(8711, "The contributed issue reporter menu")),
306
+ description: ( localize(8801, "The contributed issue reporter menu")),
307
307
  proposed: 'contribIssueReporter'
308
308
  },
309
309
  {
310
310
  key: 'testing/item/context',
311
311
  id: MenuId.TestItem,
312
- description: ( localize(8712, "The contributed test item menu")),
312
+ description: ( localize(8802, "The contributed test item menu")),
313
313
  },
314
314
  {
315
315
  key: 'testing/item/gutter',
316
316
  id: MenuId.TestItemGutter,
317
- description: ( localize(8713, "The menu for a gutter decoration for a test item")),
317
+ description: ( localize(8803, "The menu for a gutter decoration for a test item")),
318
318
  },
319
319
  {
320
320
  key: 'testing/profiles/context',
321
321
  id: MenuId.TestProfilesContext,
322
- description: ( localize(8714, "The menu for configuring testing profiles.")),
322
+ description: ( localize(8804, "The menu for configuring testing profiles.")),
323
323
  },
324
324
  {
325
325
  key: 'testing/item/result',
326
326
  id: MenuId.TestPeekElement,
327
- description: ( localize(8715, "The menu for an item in the Test Results view or peek.")),
327
+ description: ( localize(8805, "The menu for an item in the Test Results view or peek.")),
328
328
  },
329
329
  {
330
330
  key: 'testing/message/context',
331
331
  id: MenuId.TestMessageContext,
332
332
  description: ( localize(
333
- 8716,
333
+ 8806,
334
334
  "A prominent button overlaying editor content where the message is displayed"
335
335
  )),
336
336
  },
337
337
  {
338
338
  key: 'testing/message/content',
339
339
  id: MenuId.TestMessageContent,
340
- description: ( localize(8717, "Context menu for the message in the results tree")),
340
+ description: ( localize(8807, "Context menu for the message in the results tree")),
341
341
  },
342
342
  {
343
343
  key: 'extension/context',
344
344
  id: MenuId.ExtensionContext,
345
- description: ( localize(8718, "The extension context menu"))
345
+ description: ( localize(8808, "The extension context menu"))
346
346
  },
347
347
  {
348
348
  key: 'timeline/title',
349
349
  id: MenuId.TimelineTitle,
350
- description: ( localize(8719, "The Timeline view title menu"))
350
+ description: ( localize(8809, "The Timeline view title menu"))
351
351
  },
352
352
  {
353
353
  key: 'timeline/item/context',
354
354
  id: MenuId.TimelineItemContext,
355
- description: ( localize(8720, "The Timeline view item context menu"))
355
+ description: ( localize(8810, "The Timeline view item context menu"))
356
356
  },
357
357
  {
358
358
  key: 'ports/item/context',
359
359
  id: MenuId.TunnelContext,
360
- description: ( localize(8721, "The Ports view item context menu"))
360
+ description: ( localize(8811, "The Ports view item context menu"))
361
361
  },
362
362
  {
363
363
  key: 'ports/item/origin/inline',
364
364
  id: MenuId.TunnelOriginInline,
365
- description: ( localize(8722, "The Ports view item origin inline menu"))
365
+ description: ( localize(8812, "The Ports view item origin inline menu"))
366
366
  },
367
367
  {
368
368
  key: 'ports/item/port/inline',
369
369
  id: MenuId.TunnelPortInline,
370
- description: ( localize(8723, "The Ports view item port inline menu"))
370
+ description: ( localize(8813, "The Ports view item port inline menu"))
371
371
  },
372
372
  {
373
373
  key: 'file/newFile',
374
374
  id: MenuId.NewFile,
375
- description: ( localize(8724, "The 'New File...' quick pick, shown on welcome page and File menu.")),
375
+ description: ( localize(8814, "The 'New File...' quick pick, shown on welcome page and File menu.")),
376
376
  supportsSubmenus: false,
377
377
  },
378
378
  {
379
379
  key: 'webview/context',
380
380
  id: MenuId.WebviewContext,
381
- description: ( localize(8725, "The webview context menu"))
381
+ description: ( localize(8815, "The webview context menu"))
382
382
  },
383
383
  {
384
384
  key: 'file/share',
385
385
  id: MenuId.MenubarShare,
386
- description: ( localize(8726, "Share submenu shown in the top level File menu.")),
386
+ description: ( localize(8816, "Share submenu shown in the top level File menu.")),
387
387
  proposed: 'contribShareMenu'
388
388
  },
389
389
  {
390
390
  key: 'editor/inlineCompletions/actions',
391
391
  id: MenuId.InlineCompletionsActions,
392
- description: ( localize(8727, "The actions shown when hovering on an inline completion")),
392
+ description: ( localize(8817, "The actions shown when hovering on an inline completion")),
393
393
  supportsSubmenus: false,
394
394
  proposed: 'inlineCompletionsAdditions'
395
395
  },
396
- {
397
- key: 'editor/inlineEdit/actions',
398
- id: MenuId.InlineEditActions,
399
- description: ( localize(8728, "The actions shown when hovering on an inline edit")),
400
- supportsSubmenus: false,
401
- proposed: 'inlineEdit'
402
- },
403
396
  {
404
397
  key: 'editor/content',
405
398
  id: MenuId.EditorContent,
406
- description: ( localize(8729, "The prominent button in an editor, overlays its content")),
399
+ description: ( localize(8818, "The prominent button in an editor, overlays its content")),
407
400
  proposed: 'contribEditorContentMenu'
408
401
  },
409
402
  {
410
403
  key: 'editor/lineNumber/context',
411
404
  id: MenuId.EditorLineNumberContext,
412
- description: ( localize(8730, "The contributed editor line number context menu"))
405
+ description: ( localize(8819, "The contributed editor line number context menu"))
413
406
  },
414
407
  {
415
408
  key: 'mergeEditor/result/title',
416
409
  id: MenuId.MergeInputResultToolbar,
417
- description: ( localize(8731, "The result toolbar of the merge editor")),
410
+ description: ( localize(8820, "The result toolbar of the merge editor")),
418
411
  proposed: 'contribMergeEditorMenus'
419
412
  },
420
413
  {
421
414
  key: 'multiDiffEditor/resource/title',
422
415
  id: MenuId.MultiDiffEditorFileToolbar,
423
- description: ( localize(8732, "The resource toolbar in the multi diff editor")),
416
+ description: ( localize(8821, "The resource toolbar in the multi diff editor")),
424
417
  proposed: 'contribMultiDiffEditorMenus'
425
418
  },
426
419
  {
427
420
  key: 'diffEditor/gutter/hunk',
428
421
  id: MenuId.DiffEditorHunkToolbar,
429
- description: ( localize(8733, "The gutter toolbar in the diff editor")),
422
+ description: ( localize(8822, "The gutter toolbar in the diff editor")),
430
423
  proposed: 'contribDiffEditorGutterToolBarMenus'
431
424
  },
432
425
  {
433
426
  key: 'diffEditor/gutter/selection',
434
427
  id: MenuId.DiffEditorSelectionToolbar,
435
- description: ( localize(8733, "The gutter toolbar in the diff editor")),
428
+ description: ( localize(8822, "The gutter toolbar in the diff editor")),
436
429
  proposed: 'contribDiffEditorGutterToolBarMenus'
437
430
  }
438
431
  ];
@@ -445,22 +438,22 @@ var schema;
445
438
  function isValidMenuItem(item, collector) {
446
439
  if (typeof item.command !== 'string') {
447
440
  collector.error(( localize(
448
- 8734,
441
+ 8823,
449
442
  "property `{0}` is mandatory and must be of type `string`",
450
443
  'command'
451
444
  )));
452
445
  return false;
453
446
  }
454
447
  if (item.alt && typeof item.alt !== 'string') {
455
- collector.error(( localize(8735, "property `{0}` can be omitted or must be of type `string`", 'alt')));
448
+ collector.error(( localize(8824, "property `{0}` can be omitted or must be of type `string`", 'alt')));
456
449
  return false;
457
450
  }
458
451
  if (item.when && typeof item.when !== 'string') {
459
- collector.error(( localize(8735, "property `{0}` can be omitted or must be of type `string`", 'when')));
452
+ collector.error(( localize(8824, "property `{0}` can be omitted or must be of type `string`", 'when')));
460
453
  return false;
461
454
  }
462
455
  if (item.group && typeof item.group !== 'string') {
463
- collector.error(( localize(8735, "property `{0}` can be omitted or must be of type `string`", 'group')));
456
+ collector.error(( localize(8824, "property `{0}` can be omitted or must be of type `string`", 'group')));
464
457
  return false;
465
458
  }
466
459
  return true;
@@ -469,18 +462,18 @@ var schema;
469
462
  function isValidSubmenuItem(item, collector) {
470
463
  if (typeof item.submenu !== 'string') {
471
464
  collector.error(( localize(
472
- 8734,
465
+ 8823,
473
466
  "property `{0}` is mandatory and must be of type `string`",
474
467
  'submenu'
475
468
  )));
476
469
  return false;
477
470
  }
478
471
  if (item.when && typeof item.when !== 'string') {
479
- collector.error(( localize(8735, "property `{0}` can be omitted or must be of type `string`", 'when')));
472
+ collector.error(( localize(8824, "property `{0}` can be omitted or must be of type `string`", 'when')));
480
473
  return false;
481
474
  }
482
475
  if (item.group && typeof item.group !== 'string') {
483
- collector.error(( localize(8735, "property `{0}` can be omitted or must be of type `string`", 'group')));
476
+ collector.error(( localize(8824, "property `{0}` can be omitted or must be of type `string`", 'group')));
484
477
  return false;
485
478
  }
486
479
  return true;
@@ -488,7 +481,7 @@ var schema;
488
481
  schema.isValidSubmenuItem = isValidSubmenuItem;
489
482
  function isValidItems(items, collector) {
490
483
  if (!Array.isArray(items)) {
491
- collector.error(( localize(8736, "submenu items must be an array")));
484
+ collector.error(( localize(8825, "submenu items must be an array")));
492
485
  return false;
493
486
  }
494
487
  for (const item of items) {
@@ -508,15 +501,15 @@ var schema;
508
501
  schema.isValidItems = isValidItems;
509
502
  function isValidSubmenu(submenu, collector) {
510
503
  if (typeof submenu !== 'object') {
511
- collector.error(( localize(8737, "submenu items must be an object")));
504
+ collector.error(( localize(8826, "submenu items must be an object")));
512
505
  return false;
513
506
  }
514
507
  if (typeof submenu.id !== 'string') {
515
- collector.error(( localize(8734, "property `{0}` is mandatory and must be of type `string`", 'id')));
508
+ collector.error(( localize(8823, "property `{0}` is mandatory and must be of type `string`", 'id')));
516
509
  return false;
517
510
  }
518
511
  if (typeof submenu.label !== 'string') {
519
- collector.error(( localize(8734, "property `{0}` is mandatory and must be of type `string`", 'label')));
512
+ collector.error(( localize(8823, "property `{0}` is mandatory and must be of type `string`", 'label')));
520
513
  return false;
521
514
  }
522
515
  return true;
@@ -528,24 +521,24 @@ var schema;
528
521
  properties: {
529
522
  command: {
530
523
  description: ( localize(
531
- 8738,
524
+ 8827,
532
525
  'Identifier of the command to execute. The command must be declared in the \'commands\'-section'
533
526
  )),
534
527
  type: 'string'
535
528
  },
536
529
  alt: {
537
530
  description: ( localize(
538
- 8739,
531
+ 8828,
539
532
  'Identifier of an alternative command to execute. The command must be declared in the \'commands\'-section'
540
533
  )),
541
534
  type: 'string'
542
535
  },
543
536
  when: {
544
- description: ( localize(8740, 'Condition which must be true to show this item')),
537
+ description: ( localize(8829, 'Condition which must be true to show this item')),
545
538
  type: 'string'
546
539
  },
547
540
  group: {
548
- description: ( localize(8741, 'Group into which this item belongs')),
541
+ description: ( localize(8830, 'Group into which this item belongs')),
549
542
  type: 'string'
550
543
  }
551
544
  }
@@ -555,15 +548,15 @@ var schema;
555
548
  required: ['submenu'],
556
549
  properties: {
557
550
  submenu: {
558
- description: ( localize(8742, 'Identifier of the submenu to display in this item.')),
551
+ description: ( localize(8831, 'Identifier of the submenu to display in this item.')),
559
552
  type: 'string'
560
553
  },
561
554
  when: {
562
- description: ( localize(8740, 'Condition which must be true to show this item')),
555
+ description: ( localize(8829, 'Condition which must be true to show this item')),
563
556
  type: 'string'
564
557
  },
565
558
  group: {
566
- description: ( localize(8741, 'Group into which this item belongs')),
559
+ description: ( localize(8830, 'Group into which this item belongs')),
567
560
  type: 'string'
568
561
  }
569
562
  }
@@ -573,16 +566,16 @@ var schema;
573
566
  required: ['id', 'label'],
574
567
  properties: {
575
568
  id: {
576
- description: ( localize(8743, 'Identifier of the menu to display as a submenu.')),
569
+ description: ( localize(8832, 'Identifier of the menu to display as a submenu.')),
577
570
  type: 'string'
578
571
  },
579
572
  label: {
580
- description: ( localize(8744, 'The label of the menu item which leads to this submenu.')),
573
+ description: ( localize(8833, 'The label of the menu item which leads to this submenu.')),
581
574
  type: 'string'
582
575
  },
583
576
  icon: {
584
577
  description: ( localize(
585
- 8745,
578
+ 8834,
586
579
  '(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)`'
587
580
  )),
588
581
  anyOf: [{
@@ -592,11 +585,11 @@ var schema;
592
585
  type: 'object',
593
586
  properties: {
594
587
  light: {
595
- description: ( localize(8746, 'Icon path when a light theme is used')),
588
+ description: ( localize(8835, 'Icon path when a light theme is used')),
596
589
  type: 'string'
597
590
  },
598
591
  dark: {
599
- description: ( localize(8747, 'Icon path when a dark theme is used')),
592
+ description: ( localize(8836, 'Icon path when a dark theme is used')),
600
593
  type: 'string'
601
594
  }
602
595
  }
@@ -605,11 +598,11 @@ var schema;
605
598
  }
606
599
  };
607
600
  schema.menusContribution = {
608
- description: ( localize(8748, "Contributes menu items to the editor")),
601
+ description: ( localize(8837, "Contributes menu items to the editor")),
609
602
  type: 'object',
610
603
  properties: index(apiMenus, menu => menu.key, menu => ({
611
604
  markdownDescription: menu.proposed ? ( localize(
612
- 8749,
605
+ 8838,
613
606
  "Proposed API, requires `enabledApiProposal: [\"{0}\"]` - {1}",
614
607
  menu.proposed,
615
608
  menu.description
@@ -624,18 +617,18 @@ var schema;
624
617
  }
625
618
  };
626
619
  schema.submenusContribution = {
627
- description: ( localize(8750, "Contributes submenu items to the editor")),
620
+ description: ( localize(8839, "Contributes submenu items to the editor")),
628
621
  type: 'array',
629
622
  items: submenu
630
623
  };
631
624
  function isValidCommand(command, collector) {
632
625
  if (!command) {
633
- collector.error(( localize(8751, "expected non-empty value.")));
626
+ collector.error(( localize(8840, "expected non-empty value.")));
634
627
  return false;
635
628
  }
636
629
  if (isFalsyOrWhitespace(command.command)) {
637
630
  collector.error(( localize(
638
- 8734,
631
+ 8823,
639
632
  "property `{0}` is mandatory and must be of type `string`",
640
633
  'command'
641
634
  )));
@@ -649,7 +642,7 @@ var schema;
649
642
  }
650
643
  if (command.enablement && typeof command.enablement !== 'string') {
651
644
  collector.error(( localize(
652
- 8735,
645
+ 8824,
653
646
  "property `{0}` can be omitted or must be of type `string`",
654
647
  'precondition'
655
648
  )));
@@ -675,7 +668,7 @@ var schema;
675
668
  return true;
676
669
  }
677
670
  collector.error(( localize(
678
- 8752,
671
+ 8841,
679
672
  "property `icon` can be omitted or must be either a string or a literal like `{dark, light}`"
680
673
  )));
681
674
  return false;
@@ -683,7 +676,7 @@ var schema;
683
676
  function isValidLocalizedString(localized, collector, propertyName) {
684
677
  if (typeof localized === 'undefined') {
685
678
  collector.error(( localize(
686
- 8753,
679
+ 8842,
687
680
  "property `{0}` is mandatory and must be of type `string` or `object`",
688
681
  propertyName
689
682
  )));
@@ -691,7 +684,7 @@ var schema;
691
684
  }
692
685
  else if (typeof localized === 'string' && isFalsyOrWhitespace(localized)) {
693
686
  collector.error(( localize(
694
- 8734,
687
+ 8823,
695
688
  "property `{0}` is mandatory and must be of type `string`",
696
689
  propertyName
697
690
  )));
@@ -699,7 +692,7 @@ var schema;
699
692
  }
700
693
  else if (typeof localized !== 'string' && (isFalsyOrWhitespace(localized.original) || isFalsyOrWhitespace(localized.value))) {
701
694
  collector.error(( localize(
702
- 8754,
695
+ 8843,
703
696
  "properties `{0}` and `{1}` are mandatory and must be of type `string`",
704
697
  `${propertyName}.value`,
705
698
  `${propertyName}.original`
@@ -713,37 +706,37 @@ var schema;
713
706
  required: ['command', 'title'],
714
707
  properties: {
715
708
  command: {
716
- description: ( localize(8755, 'Identifier of the command to execute')),
709
+ description: ( localize(8844, 'Identifier of the command to execute')),
717
710
  type: 'string'
718
711
  },
719
712
  title: {
720
- description: ( localize(8756, 'Title by which the command is represented in the UI')),
713
+ description: ( localize(8845, 'Title by which the command is represented in the UI')),
721
714
  type: 'string'
722
715
  },
723
716
  shortTitle: {
724
717
  markdownDescription: ( localize(
725
- 8757,
718
+ 8846,
726
719
  '(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.'
727
720
  )),
728
721
  type: 'string'
729
722
  },
730
723
  category: {
731
724
  description: ( localize(
732
- 8758,
725
+ 8847,
733
726
  '(Optional) Category string by which the command is grouped in the UI'
734
727
  )),
735
728
  type: 'string'
736
729
  },
737
730
  enablement: {
738
731
  description: ( localize(
739
- 8759,
732
+ 8848,
740
733
  '(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.'
741
734
  )),
742
735
  type: 'string'
743
736
  },
744
737
  icon: {
745
738
  description: ( localize(
746
- 8760,
739
+ 8849,
747
740
  '(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)`'
748
741
  )),
749
742
  anyOf: [{
@@ -753,11 +746,11 @@ var schema;
753
746
  type: 'object',
754
747
  properties: {
755
748
  light: {
756
- description: ( localize(8761, 'Icon path when a light theme is used')),
749
+ description: ( localize(8850, 'Icon path when a light theme is used')),
757
750
  type: 'string'
758
751
  },
759
752
  dark: {
760
- description: ( localize(8762, 'Icon path when a dark theme is used')),
753
+ description: ( localize(8851, 'Icon path when a dark theme is used')),
761
754
  type: 'string'
762
755
  }
763
756
  }
@@ -766,7 +759,7 @@ var schema;
766
759
  }
767
760
  };
768
761
  schema.commandsContribution = {
769
- description: ( localize(8763, "Contributes commands to the command palette.")),
762
+ description: ( localize(8852, "Contributes commands to the command palette.")),
770
763
  oneOf: [
771
764
  commandType,
772
765
  {
@@ -810,7 +803,7 @@ commandsExtensionPoint.setHandler(extensions => {
810
803
  if (existingCmd) {
811
804
  if (existingCmd.source) {
812
805
  extension.collector.info(( localize(
813
- 8764,
806
+ 8853,
814
807
  "Command `{0}` already registered by {1} ({2})",
815
808
  userFriendlyCommand.command,
816
809
  existingCmd.source.title,
@@ -818,7 +811,7 @@ commandsExtensionPoint.setHandler(extensions => {
818
811
  )));
819
812
  }
820
813
  else {
821
- extension.collector.info(( localize(8765, "Command `{0}` already registered", userFriendlyCommand.command)));
814
+ extension.collector.info(( localize(8854, "Command `{0}` already registered", userFriendlyCommand.command)));
822
815
  }
823
816
  }
824
817
  _commandRegistrations.add(MenuRegistry.addCommand({
@@ -859,19 +852,19 @@ submenusExtensionPoint.setHandler(extensions => {
859
852
  continue;
860
853
  }
861
854
  if (!submenuInfo.id) {
862
- collector.warn(( localize(8766, "`{0}` is not a valid submenu identifier", submenuInfo.id)));
855
+ collector.warn(( localize(8855, "`{0}` is not a valid submenu identifier", submenuInfo.id)));
863
856
  continue;
864
857
  }
865
858
  if (( (_submenus.has(submenuInfo.id)))) {
866
859
  collector.info(( localize(
867
- 8767,
860
+ 8856,
868
861
  "The `{0}` submenu was already previously registered.",
869
862
  submenuInfo.id
870
863
  )));
871
864
  continue;
872
865
  }
873
866
  if (!submenuInfo.label) {
874
- collector.warn(( localize(8768, "`{0}` is not a valid submenu label", submenuInfo.label)));
867
+ collector.warn(( localize(8857, "`{0}` is not a valid submenu label", submenuInfo.label)));
875
868
  continue;
876
869
  }
877
870
  let absoluteIcon;
@@ -928,7 +921,7 @@ menusExtensionPoint.setHandler(extensions => {
928
921
  }
929
922
  if (menu.proposed && !isProposedApiEnabled(extension.description, menu.proposed)) {
930
923
  collector.error(( localize(
931
- 8769,
924
+ 8858,
932
925
  "{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}",
933
926
  entry[0],
934
927
  menu.proposed,
@@ -943,7 +936,7 @@ menusExtensionPoint.setHandler(extensions => {
943
936
  const alt = menuItem.alt && MenuRegistry.getCommand(menuItem.alt) || undefined;
944
937
  if (!command) {
945
938
  collector.error(( localize(
946
- 8770,
939
+ 8859,
947
940
  "Menu item references a command `{0}` which is not defined in the 'commands' section.",
948
941
  menuItem.command
949
942
  )));
@@ -951,20 +944,20 @@ menusExtensionPoint.setHandler(extensions => {
951
944
  }
952
945
  if (menuItem.alt && !alt) {
953
946
  collector.warn(( localize(
954
- 8771,
947
+ 8860,
955
948
  "Menu item references an alt-command `{0}` which is not defined in the 'commands' section.",
956
949
  menuItem.alt
957
950
  )));
958
951
  }
959
952
  if (menuItem.command === menuItem.alt) {
960
- collector.info(( localize(8772, "Menu item references the same command as default and alt-command")));
953
+ collector.info(( localize(8861, "Menu item references the same command as default and alt-command")));
961
954
  }
962
955
  item = { command, alt, group: undefined, order: undefined, when: undefined };
963
956
  }
964
957
  else {
965
958
  if (menu.supportsSubmenus === false) {
966
959
  collector.error(( localize(
967
- 8773,
960
+ 8862,
968
961
  "Menu item references a submenu for a menu which doesn't have submenu support."
969
962
  )));
970
963
  continue;
@@ -972,7 +965,7 @@ menusExtensionPoint.setHandler(extensions => {
972
965
  const submenu = _submenus.get(menuItem.submenu);
973
966
  if (!submenu) {
974
967
  collector.error(( localize(
975
- 8774,
968
+ 8863,
976
969
  "Menu item references a submenu `{0}` which is not defined in the 'submenus' section.",
977
970
  menuItem.submenu
978
971
  )));
@@ -985,7 +978,7 @@ menusExtensionPoint.setHandler(extensions => {
985
978
  }
986
979
  if (( (submenuRegistrations.has(submenu.id.id)))) {
987
980
  collector.warn(( localize(
988
- 8775,
981
+ 8864,
989
982
  "The `{0}` submenu was already contributed to the `{1}` menu.",
990
983
  menuItem.submenu,
991
984
  entry[0]
@@ -1007,7 +1000,7 @@ menusExtensionPoint.setHandler(extensions => {
1007
1000
  }
1008
1001
  if (menu.id === MenuId.ViewContainerTitle && !menuItem.when?.includes('viewContainer == workbench.view.debug')) {
1009
1002
  collector.error(( localize(
1010
- 8776,
1003
+ 8865,
1011
1004
  "The {0} menu contribution must check {1} in its {2} clause.",
1012
1005
  '`viewContainer/title`',
1013
1006
  '`viewContainer == workbench.view.debug`',
@@ -1040,12 +1033,24 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
1040
1033
  }))));
1041
1034
  const byId = index(commands, c => c.id);
1042
1035
  const menus = manifest.contributes?.menus || {};
1036
+ const implicitlyOnCommandPalette = index(commands, c => c.id);
1037
+ for (const command of menus['commandPalette']) {
1038
+ delete implicitlyOnCommandPalette[command.command];
1039
+ }
1040
+ for (const command in implicitlyOnCommandPalette) {
1041
+ menus['commandPalette'].push({ command });
1042
+ }
1043
1043
  for (const context in menus) {
1044
1044
  for (const menu of menus[context]) {
1045
+ if (menu.when === 'false') {
1046
+ continue;
1047
+ }
1045
1048
  if (menu.command) {
1046
1049
  let command = byId[menu.command];
1047
1050
  if (command) {
1048
- command.menus.push(context);
1051
+ if (!command.menus.includes(context)) {
1052
+ command.menus.push(context);
1053
+ }
1049
1054
  }
1050
1055
  else {
1051
1056
  command = { id: menu.command, title: '', keybindings: [], menus: [context] };
@@ -1075,10 +1080,10 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
1075
1080
  return { data: { headers: [], rows: [] }, dispose: () => { } };
1076
1081
  }
1077
1082
  const headers = [
1078
- ( localize(8777, "ID")),
1079
- ( localize(8778, "Title")),
1080
- ( localize(8779, "Keyboard Shortcuts")),
1081
- ( localize(8780, "Menu Contexts"))
1083
+ ( localize(8866, "ID")),
1084
+ ( localize(8867, "Title")),
1085
+ ( localize(8868, "Keyboard Shortcuts")),
1086
+ ( localize(8869, "Menu Contexts"))
1082
1087
  ];
1083
1088
  const rows = ( (commands.sort((a, b) => a.id.localeCompare(b.id))
1084
1089
  .map(command => {
@@ -1086,7 +1091,7 @@ let CommandsTableRenderer = class CommandsTableRenderer extends Disposable {
1086
1091
  ( (new MarkdownString())).appendMarkdown(`\`${command.id}\``),
1087
1092
  typeof command.title === 'string' ? command.title : command.title.value,
1088
1093
  command.keybindings,
1089
- ( (new MarkdownString())).appendMarkdown(`${( (command.menus.map(menu => `\`${menu}\``))).join(' ')}`),
1094
+ ( (new MarkdownString())).appendMarkdown(`${( (command.menus.sort((a, b) => a.localeCompare(b)).map(menu => `\`${menu}\``))).join(' ')}`),
1090
1095
  ];
1091
1096
  })));
1092
1097
  return {
@@ -1118,7 +1123,7 @@ CommandsTableRenderer = ( (__decorate([
1118
1123
  ], CommandsTableRenderer)));
1119
1124
  ( (Registry.as(Extensions.ExtensionFeaturesRegistry))).registerExtensionFeature({
1120
1125
  id: 'commands',
1121
- label: ( localize(8781, "Commands")),
1126
+ label: ( localize(8870, "Commands")),
1122
1127
  access: {
1123
1128
  canToggle: false,
1124
1129
  },
@@ -46,35 +46,35 @@ import { IUserDataProfileService } from 'vscode/vscode/vs/workbench/services/use
46
46
  var WorkbenchKeybindingService_1;
47
47
  function isValidContributedKeyBinding(keyBinding, rejects) {
48
48
  if (!keyBinding) {
49
- rejects.push(( localize(3537, "expected non-empty value.")));
49
+ rejects.push(( localize(3536, "expected non-empty value.")));
50
50
  return false;
51
51
  }
52
52
  if (typeof keyBinding.command !== 'string') {
53
53
  rejects.push(( localize(
54
- 3538,
54
+ 3537,
55
55
  "property `{0}` is mandatory and must be of type `string`",
56
56
  'command'
57
57
  )));
58
58
  return false;
59
59
  }
60
60
  if (keyBinding.key && typeof keyBinding.key !== 'string') {
61
- rejects.push(( localize(3539, "property `{0}` can be omitted or must be of type `string`", 'key')));
61
+ rejects.push(( localize(3538, "property `{0}` can be omitted or must be of type `string`", 'key')));
62
62
  return false;
63
63
  }
64
64
  if (keyBinding.when && typeof keyBinding.when !== 'string') {
65
- rejects.push(( localize(3539, "property `{0}` can be omitted or must be of type `string`", 'when')));
65
+ rejects.push(( localize(3538, "property `{0}` can be omitted or must be of type `string`", 'when')));
66
66
  return false;
67
67
  }
68
68
  if (keyBinding.mac && typeof keyBinding.mac !== 'string') {
69
- rejects.push(( localize(3539, "property `{0}` can be omitted or must be of type `string`", 'mac')));
69
+ rejects.push(( localize(3538, "property `{0}` can be omitted or must be of type `string`", 'mac')));
70
70
  return false;
71
71
  }
72
72
  if (keyBinding.linux && typeof keyBinding.linux !== 'string') {
73
- rejects.push(( localize(3539, "property `{0}` can be omitted or must be of type `string`", 'linux')));
73
+ rejects.push(( localize(3538, "property `{0}` can be omitted or must be of type `string`", 'linux')));
74
74
  return false;
75
75
  }
76
76
  if (keyBinding.win && typeof keyBinding.win !== 'string') {
77
- rejects.push(( localize(3539, "property `{0}` can be omitted or must be of type `string`", 'win')));
77
+ rejects.push(( localize(3538, "property `{0}` can be omitted or must be of type `string`", 'win')));
78
78
  return false;
79
79
  }
80
80
  return true;
@@ -84,33 +84,33 @@ const keybindingType = {
84
84
  default: { command: '', key: '' },
85
85
  properties: {
86
86
  command: {
87
- description: ( localize(3540, 'Identifier of the command to run when keybinding is triggered.')),
87
+ description: ( localize(3539, 'Identifier of the command to run when keybinding is triggered.')),
88
88
  type: 'string'
89
89
  },
90
90
  args: {
91
- description: ( localize(3541, "Arguments to pass to the command to execute."))
91
+ description: ( localize(3540, "Arguments to pass to the command to execute."))
92
92
  },
93
93
  key: {
94
94
  description: ( localize(
95
- 3542,
95
+ 3541,
96
96
  'Key or key sequence (separate keys with plus-sign and sequences with space, e.g. Ctrl+O and Ctrl+L L for a chord).'
97
97
  )),
98
98
  type: 'string'
99
99
  },
100
100
  mac: {
101
- description: ( localize(3543, 'Mac specific key or key sequence.')),
101
+ description: ( localize(3542, 'Mac specific key or key sequence.')),
102
102
  type: 'string'
103
103
  },
104
104
  linux: {
105
- description: ( localize(3544, 'Linux specific key or key sequence.')),
105
+ description: ( localize(3543, 'Linux specific key or key sequence.')),
106
106
  type: 'string'
107
107
  },
108
108
  win: {
109
- description: ( localize(3545, 'Windows specific key or key sequence.')),
109
+ description: ( localize(3544, 'Windows specific key or key sequence.')),
110
110
  type: 'string'
111
111
  },
112
112
  when: {
113
- description: ( localize(3546, 'Condition when the key is active.')),
113
+ description: ( localize(3545, 'Condition when the key is active.')),
114
114
  type: 'string'
115
115
  },
116
116
  }
@@ -119,7 +119,7 @@ const keybindingsExtPoint = ExtensionsRegistry.registerExtensionPoint({
119
119
  extensionPoint: 'keybindings',
120
120
  deps: [commandsExtensionPoint],
121
121
  jsonSchema: {
122
- description: ( localize(3547, "Contributes keybindings.")),
122
+ description: ( localize(3546, "Contributes keybindings.")),
123
123
  oneOf: [
124
124
  keybindingType,
125
125
  {
@@ -502,7 +502,7 @@ let WorkbenchKeybindingService = WorkbenchKeybindingService_1 = class WorkbenchK
502
502
  }
503
503
  if (rejects.length > 0) {
504
504
  collector.error(( localize(
505
- 3548,
505
+ 3547,
506
506
  "Invalid `contributes.{0}`: {1}",
507
507
  keybindingsExtPoint.name,
508
508
  rejects.join('\n')
@@ -592,7 +592,7 @@ let WorkbenchKeybindingService = WorkbenchKeybindingService_1 = class WorkbenchK
592
592
  static _getAllCommandsAsComment(boundCommands) {
593
593
  const unboundCommands = getAllUnboundCommands(boundCommands);
594
594
  const pretty = unboundCommands.sort().join('\n// - ');
595
- return '// ' + ( localize(3549, "Here are other available commands: ")) + '\n// - ' + pretty;
595
+ return '// ' + ( localize(3548, "Here are other available commands: ")) + '\n// - ' + pretty;
596
596
  }
597
597
  mightProducePrintableCharacter(event) {
598
598
  if (event.ctrlKey || event.metaKey || event.altKey) {
@@ -717,7 +717,7 @@ class KeybindingsJsonSchema {
717
717
  this.schema = {
718
718
  id: KeybindingsJsonSchema.schemaId,
719
719
  type: 'array',
720
- title: ( localize(3550, "Keybindings configuration")),
720
+ title: ( localize(3549, "Keybindings configuration")),
721
721
  allowTrailingCommas: true,
722
722
  allowComments: true,
723
723
  definitions: {
@@ -741,7 +741,7 @@ class KeybindingsJsonSchema {
741
741
  'type': 'string',
742
742
  'enum': this.commandsEnum,
743
743
  'enumDescriptions': this.commandsEnumDescriptions,
744
- 'description': ( localize(3551, "Name of the command to execute")),
744
+ 'description': ( localize(3550, "Name of the command to execute")),
745
745
  },
746
746
  'commandType': {
747
747
  'anyOf': [
@@ -752,7 +752,7 @@ class KeybindingsJsonSchema {
752
752
  'type': 'string',
753
753
  'enum': this.removalCommandsEnum,
754
754
  'enumDescriptions': this.commandsEnumDescriptions,
755
- 'description': ( localize(3552, "Name of the command to remove keyboard shortcut for")),
755
+ 'description': ( localize(3551, "Name of the command to remove keyboard shortcut for")),
756
756
  },
757
757
  {
758
758
  'type': 'string'
@@ -770,7 +770,7 @@ class KeybindingsJsonSchema {
770
770
  'properties': {
771
771
  'key': {
772
772
  'type': 'string',
773
- 'description': ( localize(3553, "Key or key sequence (separated by space)")),
773
+ 'description': ( localize(3552, "Key or key sequence (separated by space)")),
774
774
  },
775
775
  'command': {
776
776
  'anyOf': [
@@ -783,7 +783,7 @@ class KeybindingsJsonSchema {
783
783
  'type': 'array'
784
784
  },
785
785
  'errorMessage': ( localize(
786
- 3554,
786
+ 3553,
787
787
  "Incorrect type. Expected \"{0}\". The field 'command' does not support running multiple commands. Use command 'runCommands' to pass it multiple commands to run.",
788
788
  'string'
789
789
  ))
@@ -799,10 +799,10 @@ class KeybindingsJsonSchema {
799
799
  },
800
800
  'when': {
801
801
  'type': 'string',
802
- 'description': ( localize(3555, "Condition when the key is active."))
802
+ 'description': ( localize(3554, "Condition when the key is active."))
803
803
  },
804
804
  'args': {
805
- 'description': ( localize(3556, "Arguments to pass to the command to execute."))
805
+ 'description': ( localize(3555, "Arguments to pass to the command to execute."))
806
806
  }
807
807
  },
808
808
  '$ref': '#/definitions/commandsSchemas'
@@ -830,7 +830,7 @@ class KeybindingsJsonSchema {
830
830
  const allCommands = CommandsRegistry.getCommands();
831
831
  for (const [commandId, command] of allCommands) {
832
832
  const commandMetadata = command.metadata;
833
- addKnownCommand(commandId, commandMetadata?.description);
833
+ addKnownCommand(commandId, commandMetadata?.description ?? MenuRegistry.getCommand(commandId)?.title);
834
834
  if (!commandMetadata || !commandMetadata.args || commandMetadata.args.length !== 1 || !commandMetadata.args[0].schema) {
835
835
  continue;
836
836
  }
@@ -491,12 +491,12 @@ const keyboardConfiguration = {
491
491
  'id': 'keyboard',
492
492
  'order': 15,
493
493
  'type': 'object',
494
- 'title': ( localize(3557, "Keyboard")),
494
+ 'title': ( localize(3556, "Keyboard")),
495
495
  'properties': {
496
496
  'keyboard.layout': {
497
497
  'type': 'string',
498
498
  'default': 'autodetect',
499
- 'description': ( localize(3558, "Control the keyboard layout used in web."))
499
+ 'description': ( localize(3557, "Control the keyboard layout used in web."))
500
500
  }
501
501
  }
502
502
  };