@codingame/monaco-vscode-api 1.83.4 → 1.83.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lifecycle.js +3 -1
- package/missing-services.js +32 -28
- package/monaco-editor-treemending.patch +786 -760
- package/monaco.js +1 -0
- package/package.json +1 -1
- package/service-override/extensions.js +5 -5
- package/service-override/files.js +37 -13
- package/service-override/keybindings.js +10 -4
- package/service-override/layout.js +1 -3
- package/services.d.ts +13 -2
- package/services.js +35 -5
- package/vscode/src/vs/base/browser/broadcast.js +52 -0
- package/vscode/src/vs/base/browser/ui/menu/menubar.js +1 -1
- package/vscode/src/vs/base/browser/ui/splitview/paneview.js +6 -1
- package/vscode/src/vs/base/common/date.js +244 -54
- package/vscode/src/vs/base/common/jsonErrorMessages.js +45 -9
- package/vscode/src/vs/editor/common/services/textResourceConfiguration.d.ts +65 -0
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +33 -5
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +165 -32
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +30 -9
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +0 -3
- package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +6 -1
- package/vscode/src/vs/platform/files/browser/indexedDBFileSystemProvider.js +404 -0
- package/vscode/src/vs/platform/files/common/fileService.js +13 -2
- package/vscode/src/vs/platform/files/common/files.js +25 -5
- package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +15 -3
- package/vscode/src/vs/platform/quickinput/browser/commandsQuickAccess.js +38 -7
- package/vscode/src/vs/platform/quickinput/browser/helpQuickAccess.js +7 -1
- package/vscode/src/vs/platform/request/common/request.js +1 -1
- package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +210 -42
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +73 -13
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +5 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +11 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +5 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +70 -35
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +108 -20
- package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +17 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +5 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +5 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +5 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +7 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +14 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +12 -14
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +6 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +32 -5
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +0 -60
- package/vscode/src/vs/workbench/api/common/extHostChat.js +11 -2
- package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +6 -1
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +12 -2
- package/vscode/src/vs/workbench/api/common/extHostLogService.js +9 -1
- package/vscode/src/vs/workbench/api/common/extHostProgress.js +6 -1
- package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +11 -2
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +6 -1
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +6 -1
- package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +10 -2
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +7 -1
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +49 -9
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +397 -274
- package/vscode/src/vs/workbench/browser/actions/quickAccessActions.js +30 -6
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +85 -31
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +56 -102
- package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +5 -1
- package/vscode/src/vs/workbench/browser/editor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +55 -11
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +63 -11
- package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +7 -1
- package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +15 -3
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +205 -41
- package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +617 -139
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +578 -114
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +96 -20
- package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +30 -6
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +46 -9
- package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +30 -5
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +309 -59
- package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +5 -1
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +5 -1
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +16 -3
- package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +1 -1
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +35 -7
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +185 -33
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +90 -57
- package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +5 -1
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +16 -3
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +26 -6
- package/vscode/src/vs/workbench/browser/parts/views/viewsService.js +35 -6
- package/vscode/src/vs/workbench/browser/quickaccess.js +6 -6
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +918 -185
- package/vscode/src/vs/workbench/common/configuration.js +25 -11
- package/vscode/src/vs/workbench/common/contextkeys.js +244 -228
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +7 -1
- package/vscode/src/vs/workbench/common/editor/resourceEditorInput.d.ts +44 -0
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +7 -1
- package/vscode/src/vs/workbench/common/editor/textEditorModel.js +6 -1
- package/vscode/src/vs/workbench/common/editor/textResourceEditorInput.d.ts +23 -0
- package/vscode/src/vs/workbench/common/editor.d.ts +26 -1
- package/vscode/src/vs/workbench/common/editor.js +26 -5
- package/vscode/src/vs/workbench/common/theme.js +676 -136
- package/vscode/src/vs/workbench/common/views.js +8 -3
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +71 -14
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +21 -2
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +133 -21
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +36 -8
- package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +96 -17
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +0 -2
- package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +22 -4
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +22 -4
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +41 -8
- package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +25 -5
- package/vscode/src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.js +30 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +34 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/editorFeatures.js +44 -0
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +10 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint.js +320 -63
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +12 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +15 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +30 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +25 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +10 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +20 -4
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +10 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +10 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +25 -9
- package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +30 -6
- package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +25 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +16 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +8 -4
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +23 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +15 -9
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +18 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +142 -26
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +33 -5
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +45 -7
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +63 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +45 -9
- package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +16 -8
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +41 -21
- package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +5 -1
- package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.js +5 -1
- package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +60 -12
- package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +275 -55
- package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +7 -1
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +255 -94
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +120 -24
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +22 -4
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +21 -4
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +39 -51
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +394 -75
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +17 -6
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +190 -32
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +5 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +21 -4
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +26 -5
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +81 -14
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +26 -5
- package/vscode/src/vs/workbench/contrib/files/common/files.js +70 -26
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +11 -3
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +5 -1
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +20 -4
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +75 -111
- package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +5 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +6 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +151 -29
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +10 -2
- package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +0 -42
- package/vscode/src/vs/workbench/contrib/output/browser/output.contribution.js +115 -23
- package/vscode/src/vs/workbench/contrib/output/browser/outputView.js +17 -3
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +49 -9
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +66 -13
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +52 -10
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +10 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +110 -26
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +21 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +15 -3
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +56 -9
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +25 -5
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +16 -26
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +7 -8
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +20 -4
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +35 -7
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +106 -21
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +81 -21
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +6 -1
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +6 -2
- package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +592 -112
- package/vscode/src/vs/workbench/services/assignment/common/assignmentService.js +5 -1
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +6 -32
- package/vscode/src/vs/workbench/services/configuration/common/jsonEditingService.js +5 -1
- package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +5 -1
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +5 -1
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +15 -3
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +58 -10
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +5 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +392 -80
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +28 -5
- package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +10 -2
- package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +129 -24
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +10 -2
- package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +20 -10
- package/vscode/src/vs/workbench/services/language/common/languageService.js +122 -22
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +28 -9
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +6 -1
- package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +48 -9
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +5 -1
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModelManager.js +7 -1
- package/vscode/src/vs/workbench/services/textfile/common/textFileSaveParticipant.js +6 -1
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +81 -16
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +1 -50
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +126 -25
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +6 -5
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +6 -14
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopySaveParticipant.js +6 -1
|
@@ -12,313 +12,545 @@ const apiMenus = [
|
|
|
12
12
|
{
|
|
13
13
|
key: 'commandPalette',
|
|
14
14
|
id: MenuId.CommandPalette,
|
|
15
|
-
description: localizeWithPath(
|
|
15
|
+
description: ( localizeWithPath(
|
|
16
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
17
|
+
'menus.commandPalette',
|
|
18
|
+
"The Command Palette"
|
|
19
|
+
)),
|
|
16
20
|
supportsSubmenus: false
|
|
17
21
|
},
|
|
18
22
|
{
|
|
19
23
|
key: 'touchBar',
|
|
20
24
|
id: MenuId.TouchBarContext,
|
|
21
|
-
description:
|
|
25
|
+
description: ( localizeWithPath(
|
|
26
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
27
|
+
'menus.touchBar',
|
|
28
|
+
"The touch bar (macOS only)"
|
|
29
|
+
)),
|
|
22
30
|
supportsSubmenus: false
|
|
23
31
|
},
|
|
24
32
|
{
|
|
25
33
|
key: 'editor/title',
|
|
26
34
|
id: MenuId.EditorTitle,
|
|
27
|
-
description: localizeWithPath(
|
|
35
|
+
description: ( localizeWithPath(
|
|
36
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
37
|
+
'menus.editorTitle',
|
|
38
|
+
"The editor title menu"
|
|
39
|
+
))
|
|
28
40
|
},
|
|
29
41
|
{
|
|
30
42
|
key: 'editor/title/run',
|
|
31
43
|
id: MenuId.EditorTitleRun,
|
|
32
|
-
description: localizeWithPath(
|
|
44
|
+
description: ( localizeWithPath(
|
|
45
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
46
|
+
'menus.editorTitleRun',
|
|
47
|
+
"Run submenu inside the editor title menu"
|
|
48
|
+
))
|
|
33
49
|
},
|
|
34
50
|
{
|
|
35
51
|
key: 'editor/context',
|
|
36
52
|
id: MenuId.EditorContext,
|
|
37
|
-
description: localizeWithPath(
|
|
53
|
+
description: ( localizeWithPath(
|
|
54
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
55
|
+
'menus.editorContext',
|
|
56
|
+
"The editor context menu"
|
|
57
|
+
))
|
|
38
58
|
},
|
|
39
59
|
{
|
|
40
60
|
key: 'editor/context/copy',
|
|
41
61
|
id: MenuId.EditorContextCopy,
|
|
42
|
-
description: localizeWithPath(
|
|
62
|
+
description: ( localizeWithPath(
|
|
63
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
64
|
+
'menus.editorContextCopyAs',
|
|
65
|
+
"'Copy as' submenu in the editor context menu"
|
|
66
|
+
))
|
|
43
67
|
},
|
|
44
68
|
{
|
|
45
69
|
key: 'editor/context/share',
|
|
46
70
|
id: MenuId.EditorContextShare,
|
|
47
|
-
description: localizeWithPath(
|
|
71
|
+
description: ( localizeWithPath(
|
|
72
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
73
|
+
'menus.editorContextShare',
|
|
74
|
+
"'Share' submenu in the editor context menu"
|
|
75
|
+
)),
|
|
48
76
|
proposed: 'contribShareMenu'
|
|
49
77
|
},
|
|
50
78
|
{
|
|
51
79
|
key: 'explorer/context',
|
|
52
80
|
id: MenuId.ExplorerContext,
|
|
53
|
-
description: localizeWithPath(
|
|
81
|
+
description: ( localizeWithPath(
|
|
82
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
83
|
+
'menus.explorerContext',
|
|
84
|
+
"The file explorer context menu"
|
|
85
|
+
))
|
|
54
86
|
},
|
|
55
87
|
{
|
|
56
88
|
key: 'explorer/context/share',
|
|
57
89
|
id: MenuId.ExplorerContextShare,
|
|
58
|
-
description: localizeWithPath(
|
|
90
|
+
description: ( localizeWithPath(
|
|
91
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
92
|
+
'menus.explorerContextShare',
|
|
93
|
+
"'Share' submenu in the file explorer context menu"
|
|
94
|
+
)),
|
|
59
95
|
proposed: 'contribShareMenu'
|
|
60
96
|
},
|
|
61
97
|
{
|
|
62
98
|
key: 'editor/title/context',
|
|
63
99
|
id: MenuId.EditorTitleContext,
|
|
64
|
-
description: localizeWithPath(
|
|
100
|
+
description: ( localizeWithPath(
|
|
101
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
102
|
+
'menus.editorTabContext',
|
|
103
|
+
"The editor tabs context menu"
|
|
104
|
+
))
|
|
65
105
|
},
|
|
66
106
|
{
|
|
67
107
|
key: 'editor/title/context/share',
|
|
68
108
|
id: MenuId.EditorTitleContextShare,
|
|
69
|
-
description: localizeWithPath(
|
|
109
|
+
description: ( localizeWithPath(
|
|
110
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
111
|
+
'menus.editorTitleContextShare',
|
|
112
|
+
"'Share' submenu inside the editor title context menu"
|
|
113
|
+
)),
|
|
70
114
|
proposed: 'contribShareMenu'
|
|
71
115
|
},
|
|
72
116
|
{
|
|
73
117
|
key: 'debug/callstack/context',
|
|
74
118
|
id: MenuId.DebugCallStackContext,
|
|
75
|
-
description: localizeWithPath(
|
|
119
|
+
description: ( localizeWithPath(
|
|
120
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
121
|
+
'menus.debugCallstackContext',
|
|
122
|
+
"The debug callstack view context menu"
|
|
123
|
+
))
|
|
76
124
|
},
|
|
77
125
|
{
|
|
78
126
|
key: 'debug/variables/context',
|
|
79
127
|
id: MenuId.DebugVariablesContext,
|
|
80
|
-
description: localizeWithPath(
|
|
128
|
+
description: ( localizeWithPath(
|
|
129
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
130
|
+
'menus.debugVariablesContext',
|
|
131
|
+
"The debug variables view context menu"
|
|
132
|
+
))
|
|
81
133
|
},
|
|
82
134
|
{
|
|
83
135
|
key: 'debug/toolBar',
|
|
84
136
|
id: MenuId.DebugToolBar,
|
|
85
|
-
description: localizeWithPath(
|
|
137
|
+
description: ( localizeWithPath(
|
|
138
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
139
|
+
'menus.debugToolBar',
|
|
140
|
+
"The debug toolbar menu"
|
|
141
|
+
))
|
|
86
142
|
},
|
|
87
143
|
{
|
|
88
144
|
key: 'menuBar/home',
|
|
89
145
|
id: MenuId.MenubarHomeMenu,
|
|
90
|
-
description:
|
|
146
|
+
description: ( localizeWithPath(
|
|
147
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
148
|
+
'menus.home',
|
|
149
|
+
"The home indicator context menu (web only)"
|
|
150
|
+
)),
|
|
91
151
|
proposed: 'contribMenuBarHome',
|
|
92
152
|
supportsSubmenus: false
|
|
93
153
|
},
|
|
94
154
|
{
|
|
95
155
|
key: 'menuBar/edit/copy',
|
|
96
156
|
id: MenuId.MenubarCopy,
|
|
97
|
-
description: localizeWithPath(
|
|
157
|
+
description: ( localizeWithPath(
|
|
158
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
159
|
+
'menus.opy',
|
|
160
|
+
"'Copy as' submenu in the top level Edit menu"
|
|
161
|
+
))
|
|
98
162
|
},
|
|
99
163
|
{
|
|
100
164
|
key: 'scm/title',
|
|
101
165
|
id: MenuId.SCMTitle,
|
|
102
|
-
description: localizeWithPath(
|
|
166
|
+
description: ( localizeWithPath(
|
|
167
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
168
|
+
'menus.scmTitle',
|
|
169
|
+
"The Source Control title menu"
|
|
170
|
+
))
|
|
103
171
|
},
|
|
104
172
|
{
|
|
105
173
|
key: 'scm/sourceControl',
|
|
106
174
|
id: MenuId.SCMSourceControl,
|
|
107
|
-
description: localizeWithPath(
|
|
175
|
+
description: ( localizeWithPath(
|
|
176
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
177
|
+
'menus.scmSourceControl',
|
|
178
|
+
"The Source Control menu"
|
|
179
|
+
))
|
|
108
180
|
},
|
|
109
181
|
{
|
|
110
182
|
key: 'scm/resourceState/context',
|
|
111
183
|
id: MenuId.SCMResourceContext,
|
|
112
|
-
description: localizeWithPath(
|
|
184
|
+
description: ( localizeWithPath(
|
|
185
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
186
|
+
'menus.resourceStateContext',
|
|
187
|
+
"The Source Control resource state context menu"
|
|
188
|
+
))
|
|
113
189
|
},
|
|
114
190
|
{
|
|
115
191
|
key: 'scm/resourceFolder/context',
|
|
116
192
|
id: MenuId.SCMResourceFolderContext,
|
|
117
|
-
description: localizeWithPath(
|
|
193
|
+
description: ( localizeWithPath(
|
|
194
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
195
|
+
'menus.resourceFolderContext',
|
|
196
|
+
"The Source Control resource folder context menu"
|
|
197
|
+
))
|
|
118
198
|
},
|
|
119
199
|
{
|
|
120
200
|
key: 'scm/resourceGroup/context',
|
|
121
201
|
id: MenuId.SCMResourceGroupContext,
|
|
122
|
-
description: localizeWithPath(
|
|
202
|
+
description: ( localizeWithPath(
|
|
203
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
204
|
+
'menus.resourceGroupContext',
|
|
205
|
+
"The Source Control resource group context menu"
|
|
206
|
+
))
|
|
123
207
|
},
|
|
124
208
|
{
|
|
125
209
|
key: 'scm/change/title',
|
|
126
210
|
id: MenuId.SCMChangeContext,
|
|
127
|
-
description: localizeWithPath(
|
|
211
|
+
description: ( localizeWithPath(
|
|
212
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
213
|
+
'menus.changeTitle',
|
|
214
|
+
"The Source Control inline change menu"
|
|
215
|
+
))
|
|
128
216
|
},
|
|
129
217
|
{
|
|
130
218
|
key: 'statusBar/remoteIndicator',
|
|
131
219
|
id: MenuId.StatusBarRemoteIndicatorMenu,
|
|
132
|
-
description: localizeWithPath(
|
|
220
|
+
description: ( localizeWithPath(
|
|
221
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
222
|
+
'menus.statusBarRemoteIndicator',
|
|
223
|
+
"The remote indicator menu in the status bar"
|
|
224
|
+
)),
|
|
133
225
|
supportsSubmenus: false
|
|
134
226
|
},
|
|
135
227
|
{
|
|
136
228
|
key: 'terminal/context',
|
|
137
229
|
id: MenuId.TerminalInstanceContext,
|
|
138
|
-
description: localizeWithPath(
|
|
230
|
+
description: ( localizeWithPath(
|
|
231
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
232
|
+
'menus.terminalContext',
|
|
233
|
+
"The terminal context menu"
|
|
234
|
+
))
|
|
139
235
|
},
|
|
140
236
|
{
|
|
141
237
|
key: 'terminal/title/context',
|
|
142
238
|
id: MenuId.TerminalTabContext,
|
|
143
|
-
description: localizeWithPath(
|
|
239
|
+
description: ( localizeWithPath(
|
|
240
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
241
|
+
'menus.terminalTabContext',
|
|
242
|
+
"The terminal tabs context menu"
|
|
243
|
+
))
|
|
144
244
|
},
|
|
145
245
|
{
|
|
146
246
|
key: 'view/title',
|
|
147
247
|
id: MenuId.ViewTitle,
|
|
148
|
-
description: localizeWithPath(
|
|
248
|
+
description: ( localizeWithPath(
|
|
249
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
250
|
+
'view.viewTitle',
|
|
251
|
+
"The contributed view title menu"
|
|
252
|
+
))
|
|
149
253
|
},
|
|
150
254
|
{
|
|
151
255
|
key: 'view/item/context',
|
|
152
256
|
id: MenuId.ViewItemContext,
|
|
153
|
-
description: localizeWithPath(
|
|
257
|
+
description: ( localizeWithPath(
|
|
258
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
259
|
+
'view.itemContext',
|
|
260
|
+
"The contributed view item context menu"
|
|
261
|
+
))
|
|
154
262
|
},
|
|
155
263
|
{
|
|
156
264
|
key: 'comments/comment/editorActions',
|
|
157
265
|
id: MenuId.CommentEditorActions,
|
|
158
|
-
description: localizeWithPath(
|
|
266
|
+
description: ( localizeWithPath(
|
|
267
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
268
|
+
'commentThread.editorActions',
|
|
269
|
+
"The contributed comment editor actions"
|
|
270
|
+
)),
|
|
159
271
|
proposed: 'contribCommentEditorActionsMenu'
|
|
160
272
|
},
|
|
161
273
|
{
|
|
162
274
|
key: 'comments/commentThread/title',
|
|
163
275
|
id: MenuId.CommentThreadTitle,
|
|
164
|
-
description: localizeWithPath(
|
|
276
|
+
description: ( localizeWithPath(
|
|
277
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
278
|
+
'commentThread.title',
|
|
279
|
+
"The contributed comment thread title menu"
|
|
280
|
+
))
|
|
165
281
|
},
|
|
166
282
|
{
|
|
167
283
|
key: 'comments/commentThread/context',
|
|
168
284
|
id: MenuId.CommentThreadActions,
|
|
169
|
-
description: localizeWithPath(
|
|
285
|
+
description: ( localizeWithPath(
|
|
286
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
287
|
+
'commentThread.actions',
|
|
288
|
+
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
289
|
+
)),
|
|
170
290
|
supportsSubmenus: false
|
|
171
291
|
},
|
|
172
292
|
{
|
|
173
293
|
key: 'comments/commentThread/additionalActions',
|
|
174
294
|
id: MenuId.CommentThreadAdditionalActions,
|
|
175
|
-
description: localizeWithPath(
|
|
295
|
+
description: ( localizeWithPath(
|
|
296
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
297
|
+
'commentThread.actions',
|
|
298
|
+
"The contributed comment thread context menu, rendered as buttons below the comment editor"
|
|
299
|
+
)),
|
|
176
300
|
supportsSubmenus: false,
|
|
177
301
|
proposed: 'contribCommentThreadAdditionalMenu'
|
|
178
302
|
},
|
|
179
303
|
{
|
|
180
304
|
key: 'comments/commentThread/title/context',
|
|
181
305
|
id: MenuId.CommentThreadTitleContext,
|
|
182
|
-
description: localizeWithPath(
|
|
306
|
+
description: ( localizeWithPath(
|
|
307
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
308
|
+
'commentThread.titleContext',
|
|
309
|
+
"The contributed comment thread title's peek context menu, rendered as a right click menu on the comment thread's peek title."
|
|
310
|
+
)),
|
|
183
311
|
proposed: 'contribCommentPeekContext'
|
|
184
312
|
},
|
|
185
313
|
{
|
|
186
314
|
key: 'comments/comment/title',
|
|
187
315
|
id: MenuId.CommentTitle,
|
|
188
|
-
description: localizeWithPath(
|
|
316
|
+
description: ( localizeWithPath(
|
|
317
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
318
|
+
'comment.title',
|
|
319
|
+
"The contributed comment title menu"
|
|
320
|
+
))
|
|
189
321
|
},
|
|
190
322
|
{
|
|
191
323
|
key: 'comments/comment/context',
|
|
192
324
|
id: MenuId.CommentActions,
|
|
193
|
-
description: localizeWithPath(
|
|
325
|
+
description: ( localizeWithPath(
|
|
326
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
327
|
+
'comment.actions',
|
|
328
|
+
"The contributed comment context menu, rendered as buttons below the comment editor"
|
|
329
|
+
)),
|
|
194
330
|
supportsSubmenus: false
|
|
195
331
|
},
|
|
196
332
|
{
|
|
197
333
|
key: 'comments/commentThread/comment/context',
|
|
198
334
|
id: MenuId.CommentThreadCommentContext,
|
|
199
|
-
description: localizeWithPath(
|
|
335
|
+
description: ( localizeWithPath(
|
|
336
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
337
|
+
'comment.commentContext',
|
|
338
|
+
"The contributed comment context menu, rendered as a right click menu on the an individual comment in the comment thread's peek view."
|
|
339
|
+
)),
|
|
200
340
|
proposed: 'contribCommentPeekContext'
|
|
201
341
|
},
|
|
202
342
|
{
|
|
203
343
|
key: 'notebook/toolbar',
|
|
204
344
|
id: MenuId.NotebookToolbar,
|
|
205
|
-
description: localizeWithPath(
|
|
345
|
+
description: ( localizeWithPath(
|
|
346
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
347
|
+
'notebook.toolbar',
|
|
348
|
+
"The contributed notebook toolbar menu"
|
|
349
|
+
))
|
|
206
350
|
},
|
|
207
351
|
{
|
|
208
352
|
key: 'notebook/kernelSource',
|
|
209
353
|
id: MenuId.NotebookKernelSource,
|
|
210
|
-
description: localizeWithPath(
|
|
354
|
+
description: ( localizeWithPath(
|
|
355
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
356
|
+
'notebook.kernelSource',
|
|
357
|
+
"The contributed notebook kernel sources menu"
|
|
358
|
+
)),
|
|
211
359
|
proposed: 'notebookKernelSource'
|
|
212
360
|
},
|
|
213
361
|
{
|
|
214
362
|
key: 'notebook/cell/title',
|
|
215
363
|
id: MenuId.NotebookCellTitle,
|
|
216
|
-
description: localizeWithPath(
|
|
364
|
+
description: ( localizeWithPath(
|
|
365
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
366
|
+
'notebook.cell.title',
|
|
367
|
+
"The contributed notebook cell title menu"
|
|
368
|
+
))
|
|
217
369
|
},
|
|
218
370
|
{
|
|
219
371
|
key: 'notebook/cell/execute',
|
|
220
372
|
id: MenuId.NotebookCellExecute,
|
|
221
|
-
description: localizeWithPath(
|
|
373
|
+
description: ( localizeWithPath(
|
|
374
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
375
|
+
'notebook.cell.execute',
|
|
376
|
+
"The contributed notebook cell execution menu"
|
|
377
|
+
))
|
|
222
378
|
},
|
|
223
379
|
{
|
|
224
380
|
key: 'interactive/toolbar',
|
|
225
381
|
id: MenuId.InteractiveToolbar,
|
|
226
|
-
description: localizeWithPath(
|
|
382
|
+
description: ( localizeWithPath(
|
|
383
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
384
|
+
'interactive.toolbar',
|
|
385
|
+
"The contributed interactive toolbar menu"
|
|
386
|
+
)),
|
|
227
387
|
},
|
|
228
388
|
{
|
|
229
389
|
key: 'interactive/cell/title',
|
|
230
390
|
id: MenuId.InteractiveCellTitle,
|
|
231
|
-
description: localizeWithPath(
|
|
391
|
+
description: ( localizeWithPath(
|
|
392
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
393
|
+
'interactive.cell.title',
|
|
394
|
+
"The contributed interactive cell title menu"
|
|
395
|
+
)),
|
|
232
396
|
},
|
|
233
397
|
{
|
|
234
398
|
key: 'testing/item/context',
|
|
235
399
|
id: MenuId.TestItem,
|
|
236
|
-
description: localizeWithPath(
|
|
400
|
+
description: ( localizeWithPath(
|
|
401
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
402
|
+
'testing.item.context',
|
|
403
|
+
"The contributed test item menu"
|
|
404
|
+
)),
|
|
237
405
|
},
|
|
238
406
|
{
|
|
239
407
|
key: 'testing/item/gutter',
|
|
240
408
|
id: MenuId.TestItemGutter,
|
|
241
|
-
description: localizeWithPath(
|
|
409
|
+
description: ( localizeWithPath(
|
|
410
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
411
|
+
'testing.item.gutter.title',
|
|
412
|
+
"The menu for a gutter decoration for a test item"
|
|
413
|
+
)),
|
|
242
414
|
},
|
|
243
415
|
{
|
|
244
416
|
key: 'testing/message/context',
|
|
245
417
|
id: MenuId.TestMessageContext,
|
|
246
|
-
description: localizeWithPath(
|
|
418
|
+
description: ( localizeWithPath(
|
|
419
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
420
|
+
'testing.message.context.title',
|
|
421
|
+
"A prominent button overlaying editor content where the message is displayed"
|
|
422
|
+
)),
|
|
247
423
|
},
|
|
248
424
|
{
|
|
249
425
|
key: 'testing/message/content',
|
|
250
426
|
id: MenuId.TestMessageContent,
|
|
251
|
-
description: localizeWithPath(
|
|
427
|
+
description: ( localizeWithPath(
|
|
428
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
429
|
+
'testing.message.content.title',
|
|
430
|
+
"Context menu for the message in the results tree"
|
|
431
|
+
)),
|
|
252
432
|
},
|
|
253
433
|
{
|
|
254
434
|
key: 'extension/context',
|
|
255
435
|
id: MenuId.ExtensionContext,
|
|
256
|
-
description: localizeWithPath(
|
|
436
|
+
description: ( localizeWithPath(
|
|
437
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
438
|
+
'menus.extensionContext',
|
|
439
|
+
"The extension context menu"
|
|
440
|
+
))
|
|
257
441
|
},
|
|
258
442
|
{
|
|
259
443
|
key: 'timeline/title',
|
|
260
444
|
id: MenuId.TimelineTitle,
|
|
261
|
-
description: localizeWithPath(
|
|
445
|
+
description: ( localizeWithPath(
|
|
446
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
447
|
+
'view.timelineTitle',
|
|
448
|
+
"The Timeline view title menu"
|
|
449
|
+
))
|
|
262
450
|
},
|
|
263
451
|
{
|
|
264
452
|
key: 'timeline/item/context',
|
|
265
453
|
id: MenuId.TimelineItemContext,
|
|
266
|
-
description: localizeWithPath(
|
|
454
|
+
description: ( localizeWithPath(
|
|
455
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
456
|
+
'view.timelineContext',
|
|
457
|
+
"The Timeline view item context menu"
|
|
458
|
+
))
|
|
267
459
|
},
|
|
268
460
|
{
|
|
269
461
|
key: 'ports/item/context',
|
|
270
462
|
id: MenuId.TunnelContext,
|
|
271
|
-
description: localizeWithPath(
|
|
463
|
+
description: ( localizeWithPath(
|
|
464
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
465
|
+
'view.tunnelContext',
|
|
466
|
+
"The Ports view item context menu"
|
|
467
|
+
))
|
|
272
468
|
},
|
|
273
469
|
{
|
|
274
470
|
key: 'ports/item/origin/inline',
|
|
275
471
|
id: MenuId.TunnelOriginInline,
|
|
276
|
-
description: localizeWithPath(
|
|
472
|
+
description: ( localizeWithPath(
|
|
473
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
474
|
+
'view.tunnelOriginInline',
|
|
475
|
+
"The Ports view item origin inline menu"
|
|
476
|
+
))
|
|
277
477
|
},
|
|
278
478
|
{
|
|
279
479
|
key: 'ports/item/port/inline',
|
|
280
480
|
id: MenuId.TunnelPortInline,
|
|
281
|
-
description: localizeWithPath(
|
|
481
|
+
description: ( localizeWithPath(
|
|
482
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
483
|
+
'view.tunnelPortInline',
|
|
484
|
+
"The Ports view item port inline menu"
|
|
485
|
+
))
|
|
282
486
|
},
|
|
283
487
|
{
|
|
284
488
|
key: 'file/newFile',
|
|
285
489
|
id: MenuId.NewFile,
|
|
286
|
-
description: localizeWithPath(
|
|
490
|
+
description: ( localizeWithPath(
|
|
491
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
492
|
+
'file.newFile',
|
|
493
|
+
"The 'New File...' quick pick, shown on welcome page and File menu."
|
|
494
|
+
)),
|
|
287
495
|
supportsSubmenus: false,
|
|
288
496
|
},
|
|
289
497
|
{
|
|
290
498
|
key: 'webview/context',
|
|
291
499
|
id: MenuId.WebviewContext,
|
|
292
|
-
description: localizeWithPath(
|
|
500
|
+
description: ( localizeWithPath(
|
|
501
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
502
|
+
'webview.context',
|
|
503
|
+
"The webview context menu"
|
|
504
|
+
))
|
|
293
505
|
},
|
|
294
506
|
{
|
|
295
507
|
key: 'file/share',
|
|
296
508
|
id: MenuId.MenubarShare,
|
|
297
|
-
description: localizeWithPath(
|
|
509
|
+
description: ( localizeWithPath(
|
|
510
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
511
|
+
'menus.share',
|
|
512
|
+
"Share submenu shown in the top level File menu."
|
|
513
|
+
)),
|
|
298
514
|
proposed: 'contribShareMenu'
|
|
299
515
|
},
|
|
300
516
|
{
|
|
301
517
|
key: 'editor/inlineCompletions/actions',
|
|
302
518
|
id: MenuId.InlineCompletionsActions,
|
|
303
|
-
description: localizeWithPath(
|
|
519
|
+
description: ( localizeWithPath(
|
|
520
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
521
|
+
'inlineCompletions.actions',
|
|
522
|
+
"The actions shown when hovering on an inline completion"
|
|
523
|
+
)),
|
|
304
524
|
supportsSubmenus: false,
|
|
305
525
|
proposed: 'inlineCompletionsAdditions'
|
|
306
526
|
},
|
|
307
527
|
{
|
|
308
528
|
key: 'editor/content',
|
|
309
529
|
id: MenuId.EditorContent,
|
|
310
|
-
description: localizeWithPath(
|
|
530
|
+
description: ( localizeWithPath(
|
|
531
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
532
|
+
'merge.toolbar',
|
|
533
|
+
"The prominent button in an editor, overlays its content"
|
|
534
|
+
)),
|
|
311
535
|
proposed: 'contribEditorContentMenu'
|
|
312
536
|
},
|
|
313
537
|
{
|
|
314
538
|
key: 'editor/lineNumber/context',
|
|
315
539
|
id: MenuId.EditorLineNumberContext,
|
|
316
|
-
description: localizeWithPath(
|
|
540
|
+
description: ( localizeWithPath(
|
|
541
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
542
|
+
'editorLineNumberContext',
|
|
543
|
+
"The contributed editor line number context menu"
|
|
544
|
+
))
|
|
317
545
|
},
|
|
318
546
|
{
|
|
319
547
|
key: 'mergeEditor/result/title',
|
|
320
548
|
id: MenuId.MergeInputResultToolbar,
|
|
321
|
-
description: localizeWithPath(
|
|
549
|
+
description: ( localizeWithPath(
|
|
550
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
551
|
+
'menus.mergeEditorResult',
|
|
552
|
+
"The result toolbar of the merge editor"
|
|
553
|
+
)),
|
|
322
554
|
proposed: 'contribMergeEditorMenus'
|
|
323
555
|
},
|
|
324
556
|
];
|
|
@@ -330,19 +562,39 @@ var schema;
|
|
|
330
562
|
schema.isMenuItem = isMenuItem;
|
|
331
563
|
function isValidMenuItem(item, collector) {
|
|
332
564
|
if (typeof item.command !== 'string') {
|
|
333
|
-
collector.error(localizeWithPath(
|
|
565
|
+
collector.error(( localizeWithPath(
|
|
566
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
567
|
+
'requirestring',
|
|
568
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
569
|
+
'command'
|
|
570
|
+
)));
|
|
334
571
|
return false;
|
|
335
572
|
}
|
|
336
573
|
if (item.alt && typeof item.alt !== 'string') {
|
|
337
|
-
collector.error(localizeWithPath(
|
|
574
|
+
collector.error(( localizeWithPath(
|
|
575
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
576
|
+
'optstring',
|
|
577
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
578
|
+
'alt'
|
|
579
|
+
)));
|
|
338
580
|
return false;
|
|
339
581
|
}
|
|
340
582
|
if (item.when && typeof item.when !== 'string') {
|
|
341
|
-
collector.error(localizeWithPath(
|
|
583
|
+
collector.error(( localizeWithPath(
|
|
584
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
585
|
+
'optstring',
|
|
586
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
587
|
+
'when'
|
|
588
|
+
)));
|
|
342
589
|
return false;
|
|
343
590
|
}
|
|
344
591
|
if (item.group && typeof item.group !== 'string') {
|
|
345
|
-
collector.error(localizeWithPath(
|
|
592
|
+
collector.error(( localizeWithPath(
|
|
593
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
594
|
+
'optstring',
|
|
595
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
596
|
+
'group'
|
|
597
|
+
)));
|
|
346
598
|
return false;
|
|
347
599
|
}
|
|
348
600
|
return true;
|
|
@@ -350,15 +602,30 @@ var schema;
|
|
|
350
602
|
schema.isValidMenuItem = isValidMenuItem;
|
|
351
603
|
function isValidSubmenuItem(item, collector) {
|
|
352
604
|
if (typeof item.submenu !== 'string') {
|
|
353
|
-
collector.error(localizeWithPath(
|
|
605
|
+
collector.error(( localizeWithPath(
|
|
606
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
607
|
+
'requirestring',
|
|
608
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
609
|
+
'submenu'
|
|
610
|
+
)));
|
|
354
611
|
return false;
|
|
355
612
|
}
|
|
356
613
|
if (item.when && typeof item.when !== 'string') {
|
|
357
|
-
collector.error(localizeWithPath(
|
|
614
|
+
collector.error(( localizeWithPath(
|
|
615
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
616
|
+
'optstring',
|
|
617
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
618
|
+
'when'
|
|
619
|
+
)));
|
|
358
620
|
return false;
|
|
359
621
|
}
|
|
360
622
|
if (item.group && typeof item.group !== 'string') {
|
|
361
|
-
collector.error(localizeWithPath(
|
|
623
|
+
collector.error(( localizeWithPath(
|
|
624
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
625
|
+
'optstring',
|
|
626
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
627
|
+
'group'
|
|
628
|
+
)));
|
|
362
629
|
return false;
|
|
363
630
|
}
|
|
364
631
|
return true;
|
|
@@ -366,7 +633,11 @@ var schema;
|
|
|
366
633
|
schema.isValidSubmenuItem = isValidSubmenuItem;
|
|
367
634
|
function isValidItems(items, collector) {
|
|
368
635
|
if (!Array.isArray(items)) {
|
|
369
|
-
collector.error(localizeWithPath(
|
|
636
|
+
collector.error(( localizeWithPath(
|
|
637
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
638
|
+
'requirearray',
|
|
639
|
+
"submenu items must be an array"
|
|
640
|
+
)));
|
|
370
641
|
return false;
|
|
371
642
|
}
|
|
372
643
|
for (const item of items) {
|
|
@@ -386,15 +657,29 @@ var schema;
|
|
|
386
657
|
schema.isValidItems = isValidItems;
|
|
387
658
|
function isValidSubmenu(submenu, collector) {
|
|
388
659
|
if (typeof submenu !== 'object') {
|
|
389
|
-
collector.error(localizeWithPath(
|
|
660
|
+
collector.error(( localizeWithPath(
|
|
661
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
662
|
+
'require',
|
|
663
|
+
"submenu items must be an object"
|
|
664
|
+
)));
|
|
390
665
|
return false;
|
|
391
666
|
}
|
|
392
667
|
if (typeof submenu.id !== 'string') {
|
|
393
|
-
collector.error(localizeWithPath(
|
|
668
|
+
collector.error(( localizeWithPath(
|
|
669
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
670
|
+
'requirestring',
|
|
671
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
672
|
+
'id'
|
|
673
|
+
)));
|
|
394
674
|
return false;
|
|
395
675
|
}
|
|
396
676
|
if (typeof submenu.label !== 'string') {
|
|
397
|
-
collector.error(localizeWithPath(
|
|
677
|
+
collector.error(( localizeWithPath(
|
|
678
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
679
|
+
'requirestring',
|
|
680
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
681
|
+
'label'
|
|
682
|
+
)));
|
|
398
683
|
return false;
|
|
399
684
|
}
|
|
400
685
|
return true;
|
|
@@ -405,19 +690,35 @@ var schema;
|
|
|
405
690
|
required: ['command'],
|
|
406
691
|
properties: {
|
|
407
692
|
command: {
|
|
408
|
-
description: localizeWithPath(
|
|
693
|
+
description: ( localizeWithPath(
|
|
694
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
695
|
+
'vscode.extension.contributes.menuItem.command',
|
|
696
|
+
'Identifier of the command to execute. The command must be declared in the \'commands\'-section'
|
|
697
|
+
)),
|
|
409
698
|
type: 'string'
|
|
410
699
|
},
|
|
411
700
|
alt: {
|
|
412
|
-
description: localizeWithPath(
|
|
701
|
+
description: ( localizeWithPath(
|
|
702
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
703
|
+
'vscode.extension.contributes.menuItem.alt',
|
|
704
|
+
'Identifier of an alternative command to execute. The command must be declared in the \'commands\'-section'
|
|
705
|
+
)),
|
|
413
706
|
type: 'string'
|
|
414
707
|
},
|
|
415
708
|
when: {
|
|
416
|
-
description: localizeWithPath(
|
|
709
|
+
description: ( localizeWithPath(
|
|
710
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
711
|
+
'vscode.extension.contributes.menuItem.when',
|
|
712
|
+
'Condition which must be true to show this item'
|
|
713
|
+
)),
|
|
417
714
|
type: 'string'
|
|
418
715
|
},
|
|
419
716
|
group: {
|
|
420
|
-
description: localizeWithPath(
|
|
717
|
+
description: ( localizeWithPath(
|
|
718
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
719
|
+
'vscode.extension.contributes.menuItem.group',
|
|
720
|
+
'Group into which this item belongs'
|
|
721
|
+
)),
|
|
421
722
|
type: 'string'
|
|
422
723
|
}
|
|
423
724
|
}
|
|
@@ -427,15 +728,27 @@ var schema;
|
|
|
427
728
|
required: ['submenu'],
|
|
428
729
|
properties: {
|
|
429
730
|
submenu: {
|
|
430
|
-
description: localizeWithPath(
|
|
731
|
+
description: ( localizeWithPath(
|
|
732
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
733
|
+
'vscode.extension.contributes.menuItem.submenu',
|
|
734
|
+
'Identifier of the submenu to display in this item.'
|
|
735
|
+
)),
|
|
431
736
|
type: 'string'
|
|
432
737
|
},
|
|
433
738
|
when: {
|
|
434
|
-
description: localizeWithPath(
|
|
739
|
+
description: ( localizeWithPath(
|
|
740
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
741
|
+
'vscode.extension.contributes.menuItem.when',
|
|
742
|
+
'Condition which must be true to show this item'
|
|
743
|
+
)),
|
|
435
744
|
type: 'string'
|
|
436
745
|
},
|
|
437
746
|
group: {
|
|
438
|
-
description: localizeWithPath(
|
|
747
|
+
description: ( localizeWithPath(
|
|
748
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
749
|
+
'vscode.extension.contributes.menuItem.group',
|
|
750
|
+
'Group into which this item belongs'
|
|
751
|
+
)),
|
|
439
752
|
type: 'string'
|
|
440
753
|
}
|
|
441
754
|
}
|
|
@@ -445,15 +758,27 @@ var schema;
|
|
|
445
758
|
required: ['id', 'label'],
|
|
446
759
|
properties: {
|
|
447
760
|
id: {
|
|
448
|
-
description: localizeWithPath(
|
|
761
|
+
description: ( localizeWithPath(
|
|
762
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
763
|
+
'vscode.extension.contributes.submenu.id',
|
|
764
|
+
'Identifier of the menu to display as a submenu.'
|
|
765
|
+
)),
|
|
449
766
|
type: 'string'
|
|
450
767
|
},
|
|
451
768
|
label: {
|
|
452
|
-
description: localizeWithPath(
|
|
769
|
+
description: ( localizeWithPath(
|
|
770
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
771
|
+
'vscode.extension.contributes.submenu.label',
|
|
772
|
+
'The label of the menu item which leads to this submenu.'
|
|
773
|
+
)),
|
|
453
774
|
type: 'string'
|
|
454
775
|
},
|
|
455
776
|
icon: {
|
|
456
|
-
description:
|
|
777
|
+
description: ( localizeWithPath(
|
|
778
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
779
|
+
{ key: 'vscode.extension.contributes.submenu.icon', comment: ['do not translate or change `\\$(zap)`, \\ in front of $ is important.'] },
|
|
780
|
+
'(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)`'
|
|
781
|
+
)),
|
|
457
782
|
anyOf: [{
|
|
458
783
|
type: 'string'
|
|
459
784
|
},
|
|
@@ -461,11 +786,19 @@ var schema;
|
|
|
461
786
|
type: 'object',
|
|
462
787
|
properties: {
|
|
463
788
|
light: {
|
|
464
|
-
description: localizeWithPath(
|
|
789
|
+
description: ( localizeWithPath(
|
|
790
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
791
|
+
'vscode.extension.contributes.submenu.icon.light',
|
|
792
|
+
'Icon path when a light theme is used'
|
|
793
|
+
)),
|
|
465
794
|
type: 'string'
|
|
466
795
|
},
|
|
467
796
|
dark: {
|
|
468
|
-
description: localizeWithPath(
|
|
797
|
+
description: ( localizeWithPath(
|
|
798
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
799
|
+
'vscode.extension.contributes.submenu.icon.dark',
|
|
800
|
+
'Icon path when a dark theme is used'
|
|
801
|
+
)),
|
|
469
802
|
type: 'string'
|
|
470
803
|
}
|
|
471
804
|
}
|
|
@@ -474,10 +807,20 @@ var schema;
|
|
|
474
807
|
}
|
|
475
808
|
};
|
|
476
809
|
schema.menusContribution = {
|
|
477
|
-
description: localizeWithPath(
|
|
810
|
+
description: ( localizeWithPath(
|
|
811
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
812
|
+
'vscode.extension.contributes.menus',
|
|
813
|
+
"Contributes menu items to the editor"
|
|
814
|
+
)),
|
|
478
815
|
type: 'object',
|
|
479
816
|
properties: index(apiMenus, menu => menu.key, menu => ({
|
|
480
|
-
markdownDescription: menu.proposed ? localizeWithPath(
|
|
817
|
+
markdownDescription: menu.proposed ? ( localizeWithPath(
|
|
818
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
819
|
+
'proposed',
|
|
820
|
+
"Proposed API, requires `enabledApiProposal: [\"{0}\"]` - {1}",
|
|
821
|
+
menu.proposed,
|
|
822
|
+
menu.description
|
|
823
|
+
)) : menu.description,
|
|
481
824
|
type: 'array',
|
|
482
825
|
items: menu.supportsSubmenus === false ? menuItem : { oneOf: [menuItem, submenuItem] }
|
|
483
826
|
})),
|
|
@@ -488,17 +831,30 @@ var schema;
|
|
|
488
831
|
}
|
|
489
832
|
};
|
|
490
833
|
schema.submenusContribution = {
|
|
491
|
-
description: localizeWithPath(
|
|
834
|
+
description: ( localizeWithPath(
|
|
835
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
836
|
+
'vscode.extension.contributes.submenus',
|
|
837
|
+
"Contributes submenu items to the editor"
|
|
838
|
+
)),
|
|
492
839
|
type: 'array',
|
|
493
840
|
items: submenu
|
|
494
841
|
};
|
|
495
842
|
function isValidCommand(command, collector) {
|
|
496
843
|
if (!command) {
|
|
497
|
-
collector.error(localizeWithPath(
|
|
844
|
+
collector.error(( localizeWithPath(
|
|
845
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
846
|
+
'nonempty',
|
|
847
|
+
"expected non-empty value."
|
|
848
|
+
)));
|
|
498
849
|
return false;
|
|
499
850
|
}
|
|
500
851
|
if (isFalsyOrWhitespace(command.command)) {
|
|
501
|
-
collector.error(localizeWithPath(
|
|
852
|
+
collector.error(( localizeWithPath(
|
|
853
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
854
|
+
'requirestring',
|
|
855
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
856
|
+
'command'
|
|
857
|
+
)));
|
|
502
858
|
return false;
|
|
503
859
|
}
|
|
504
860
|
if (!isValidLocalizedString(command.title, collector, 'title')) {
|
|
@@ -508,7 +864,12 @@ var schema;
|
|
|
508
864
|
return false;
|
|
509
865
|
}
|
|
510
866
|
if (command.enablement && typeof command.enablement !== 'string') {
|
|
511
|
-
collector.error(localizeWithPath(
|
|
867
|
+
collector.error(( localizeWithPath(
|
|
868
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
869
|
+
'optstring',
|
|
870
|
+
"property `{0}` can be omitted or must be of type `string`",
|
|
871
|
+
'precondition'
|
|
872
|
+
)));
|
|
512
873
|
return false;
|
|
513
874
|
}
|
|
514
875
|
if (command.category && !isValidLocalizedString(command.category, collector, 'category')) {
|
|
@@ -530,20 +891,40 @@ var schema;
|
|
|
530
891
|
else if (typeof icon.dark === 'string' && typeof icon.light === 'string') {
|
|
531
892
|
return true;
|
|
532
893
|
}
|
|
533
|
-
collector.error(localizeWithPath(
|
|
894
|
+
collector.error(( localizeWithPath(
|
|
895
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
896
|
+
'opticon',
|
|
897
|
+
"property `icon` can be omitted or must be either a string or a literal like `{dark, light}`"
|
|
898
|
+
)));
|
|
534
899
|
return false;
|
|
535
900
|
}
|
|
536
901
|
function isValidLocalizedString(localized, collector, propertyName) {
|
|
537
902
|
if (typeof localized === 'undefined') {
|
|
538
|
-
collector.error(localizeWithPath(
|
|
903
|
+
collector.error(( localizeWithPath(
|
|
904
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
905
|
+
'requireStringOrObject',
|
|
906
|
+
"property `{0}` is mandatory and must be of type `string` or `object`",
|
|
907
|
+
propertyName
|
|
908
|
+
)));
|
|
539
909
|
return false;
|
|
540
910
|
}
|
|
541
911
|
else if (typeof localized === 'string' && isFalsyOrWhitespace(localized)) {
|
|
542
|
-
collector.error(localizeWithPath(
|
|
912
|
+
collector.error(( localizeWithPath(
|
|
913
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
914
|
+
'requirestring',
|
|
915
|
+
"property `{0}` is mandatory and must be of type `string`",
|
|
916
|
+
propertyName
|
|
917
|
+
)));
|
|
543
918
|
return false;
|
|
544
919
|
}
|
|
545
920
|
else if (typeof localized !== 'string' && (isFalsyOrWhitespace(localized.original) || isFalsyOrWhitespace(localized.value))) {
|
|
546
|
-
collector.error(localizeWithPath(
|
|
921
|
+
collector.error(( localizeWithPath(
|
|
922
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
923
|
+
'requirestrings',
|
|
924
|
+
"properties `{0}` and `{1}` are mandatory and must be of type `string`",
|
|
925
|
+
`${propertyName}.value`,
|
|
926
|
+
`${propertyName}.original`
|
|
927
|
+
)));
|
|
547
928
|
return false;
|
|
548
929
|
}
|
|
549
930
|
return true;
|
|
@@ -553,27 +934,51 @@ var schema;
|
|
|
553
934
|
required: ['command', 'title'],
|
|
554
935
|
properties: {
|
|
555
936
|
command: {
|
|
556
|
-
description: localizeWithPath(
|
|
937
|
+
description: ( localizeWithPath(
|
|
938
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
939
|
+
'vscode.extension.contributes.commandType.command',
|
|
940
|
+
'Identifier of the command to execute'
|
|
941
|
+
)),
|
|
557
942
|
type: 'string'
|
|
558
943
|
},
|
|
559
944
|
title: {
|
|
560
|
-
description: localizeWithPath(
|
|
945
|
+
description: ( localizeWithPath(
|
|
946
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
947
|
+
'vscode.extension.contributes.commandType.title',
|
|
948
|
+
'Title by which the command is represented in the UI'
|
|
949
|
+
)),
|
|
561
950
|
type: 'string'
|
|
562
951
|
},
|
|
563
952
|
shortTitle: {
|
|
564
|
-
markdownDescription:
|
|
953
|
+
markdownDescription: ( localizeWithPath(
|
|
954
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
955
|
+
'vscode.extension.contributes.commandType.shortTitle',
|
|
956
|
+
'(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.'
|
|
957
|
+
)),
|
|
565
958
|
type: 'string'
|
|
566
959
|
},
|
|
567
960
|
category: {
|
|
568
|
-
description:
|
|
961
|
+
description: ( localizeWithPath(
|
|
962
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
963
|
+
'vscode.extension.contributes.commandType.category',
|
|
964
|
+
'(Optional) Category string by which the command is grouped in the UI'
|
|
965
|
+
)),
|
|
569
966
|
type: 'string'
|
|
570
967
|
},
|
|
571
968
|
enablement: {
|
|
572
|
-
description:
|
|
969
|
+
description: ( localizeWithPath(
|
|
970
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
971
|
+
'vscode.extension.contributes.commandType.precondition',
|
|
972
|
+
'(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.'
|
|
973
|
+
)),
|
|
573
974
|
type: 'string'
|
|
574
975
|
},
|
|
575
976
|
icon: {
|
|
576
|
-
description:
|
|
977
|
+
description: ( localizeWithPath(
|
|
978
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
979
|
+
{ key: 'vscode.extension.contributes.commandType.icon', comment: ['do not translate or change `\\$(zap)`, \\ in front of $ is important.'] },
|
|
980
|
+
'(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)`'
|
|
981
|
+
)),
|
|
577
982
|
anyOf: [{
|
|
578
983
|
type: 'string'
|
|
579
984
|
},
|
|
@@ -581,11 +986,19 @@ var schema;
|
|
|
581
986
|
type: 'object',
|
|
582
987
|
properties: {
|
|
583
988
|
light: {
|
|
584
|
-
description: localizeWithPath(
|
|
989
|
+
description: ( localizeWithPath(
|
|
990
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
991
|
+
'vscode.extension.contributes.commandType.icon.light',
|
|
992
|
+
'Icon path when a light theme is used'
|
|
993
|
+
)),
|
|
585
994
|
type: 'string'
|
|
586
995
|
},
|
|
587
996
|
dark: {
|
|
588
|
-
description: localizeWithPath(
|
|
997
|
+
description: ( localizeWithPath(
|
|
998
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
999
|
+
'vscode.extension.contributes.commandType.icon.dark',
|
|
1000
|
+
'Icon path when a dark theme is used'
|
|
1001
|
+
)),
|
|
589
1002
|
type: 'string'
|
|
590
1003
|
}
|
|
591
1004
|
}
|
|
@@ -594,7 +1007,11 @@ var schema;
|
|
|
594
1007
|
}
|
|
595
1008
|
};
|
|
596
1009
|
schema.commandsContribution = {
|
|
597
|
-
description: localizeWithPath(
|
|
1010
|
+
description: ( localizeWithPath(
|
|
1011
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1012
|
+
'vscode.extension.contributes.commands',
|
|
1013
|
+
"Contributes commands to the command palette."
|
|
1014
|
+
)),
|
|
598
1015
|
oneOf: [
|
|
599
1016
|
commandType,
|
|
600
1017
|
{
|
|
@@ -637,10 +1054,22 @@ commandsExtensionPoint.setHandler(extensions => {
|
|
|
637
1054
|
const existingCmd = MenuRegistry.getCommand(command);
|
|
638
1055
|
if (existingCmd) {
|
|
639
1056
|
if (existingCmd.source) {
|
|
640
|
-
extension.collector.info(
|
|
1057
|
+
extension.collector.info(( localizeWithPath(
|
|
1058
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1059
|
+
'dup1',
|
|
1060
|
+
"Command `{0}` already registered by {1} ({2})",
|
|
1061
|
+
userFriendlyCommand.command,
|
|
1062
|
+
existingCmd.source.title,
|
|
1063
|
+
existingCmd.source.id
|
|
1064
|
+
)));
|
|
641
1065
|
}
|
|
642
1066
|
else {
|
|
643
|
-
extension.collector.info(localizeWithPath(
|
|
1067
|
+
extension.collector.info(( localizeWithPath(
|
|
1068
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1069
|
+
'dup0',
|
|
1070
|
+
"Command `{0}` already registered",
|
|
1071
|
+
userFriendlyCommand.command
|
|
1072
|
+
)));
|
|
644
1073
|
}
|
|
645
1074
|
}
|
|
646
1075
|
_commandRegistrations.add(MenuRegistry.addCommand({
|
|
@@ -681,15 +1110,30 @@ submenusExtensionPoint.setHandler(extensions => {
|
|
|
681
1110
|
continue;
|
|
682
1111
|
}
|
|
683
1112
|
if (!submenuInfo.id) {
|
|
684
|
-
collector.warn(localizeWithPath(
|
|
1113
|
+
collector.warn(( localizeWithPath(
|
|
1114
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1115
|
+
'submenuId.invalid.id',
|
|
1116
|
+
"`{0}` is not a valid submenu identifier",
|
|
1117
|
+
submenuInfo.id
|
|
1118
|
+
)));
|
|
685
1119
|
continue;
|
|
686
1120
|
}
|
|
687
1121
|
if (( _submenus.has(submenuInfo.id))) {
|
|
688
|
-
collector.info(localizeWithPath(
|
|
1122
|
+
collector.info(( localizeWithPath(
|
|
1123
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1124
|
+
'submenuId.duplicate.id',
|
|
1125
|
+
"The `{0}` submenu was already previously registered.",
|
|
1126
|
+
submenuInfo.id
|
|
1127
|
+
)));
|
|
689
1128
|
continue;
|
|
690
1129
|
}
|
|
691
1130
|
if (!submenuInfo.label) {
|
|
692
|
-
collector.warn(localizeWithPath(
|
|
1131
|
+
collector.warn(( localizeWithPath(
|
|
1132
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1133
|
+
'submenuId.invalid.label',
|
|
1134
|
+
"`{0}` is not a valid submenu label",
|
|
1135
|
+
submenuInfo.label
|
|
1136
|
+
)));
|
|
693
1137
|
continue;
|
|
694
1138
|
}
|
|
695
1139
|
let absoluteIcon;
|
|
@@ -745,7 +1189,14 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
745
1189
|
continue;
|
|
746
1190
|
}
|
|
747
1191
|
if (menu.proposed && !isProposedApiEnabled(extension.description, menu.proposed)) {
|
|
748
|
-
collector.error(localizeWithPath(
|
|
1192
|
+
collector.error(( localizeWithPath(
|
|
1193
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1194
|
+
'proposedAPI.invalid',
|
|
1195
|
+
"{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}",
|
|
1196
|
+
entry[0],
|
|
1197
|
+
menu.proposed,
|
|
1198
|
+
extension.description.identifier.value
|
|
1199
|
+
)));
|
|
749
1200
|
continue;
|
|
750
1201
|
}
|
|
751
1202
|
for (const menuItem of entry[1]) {
|
|
@@ -754,25 +1205,48 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
754
1205
|
const command = MenuRegistry.getCommand(menuItem.command);
|
|
755
1206
|
const alt = menuItem.alt && MenuRegistry.getCommand(menuItem.alt) || undefined;
|
|
756
1207
|
if (!command) {
|
|
757
|
-
collector.error(localizeWithPath(
|
|
1208
|
+
collector.error(( localizeWithPath(
|
|
1209
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1210
|
+
'missing.command',
|
|
1211
|
+
"Menu item references a command `{0}` which is not defined in the 'commands' section.",
|
|
1212
|
+
menuItem.command
|
|
1213
|
+
)));
|
|
758
1214
|
continue;
|
|
759
1215
|
}
|
|
760
1216
|
if (menuItem.alt && !alt) {
|
|
761
|
-
collector.warn(localizeWithPath(
|
|
1217
|
+
collector.warn(( localizeWithPath(
|
|
1218
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1219
|
+
'missing.altCommand',
|
|
1220
|
+
"Menu item references an alt-command `{0}` which is not defined in the 'commands' section.",
|
|
1221
|
+
menuItem.alt
|
|
1222
|
+
)));
|
|
762
1223
|
}
|
|
763
1224
|
if (menuItem.command === menuItem.alt) {
|
|
764
|
-
collector.info(localizeWithPath(
|
|
1225
|
+
collector.info(( localizeWithPath(
|
|
1226
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1227
|
+
'dupe.command',
|
|
1228
|
+
"Menu item references the same command as default and alt-command"
|
|
1229
|
+
)));
|
|
765
1230
|
}
|
|
766
1231
|
item = { command, alt, group: undefined, order: undefined, when: undefined };
|
|
767
1232
|
}
|
|
768
1233
|
else {
|
|
769
1234
|
if (menu.supportsSubmenus === false) {
|
|
770
|
-
collector.error(localizeWithPath(
|
|
1235
|
+
collector.error(( localizeWithPath(
|
|
1236
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1237
|
+
'unsupported.submenureference',
|
|
1238
|
+
"Menu item references a submenu for a menu which doesn't have submenu support."
|
|
1239
|
+
)));
|
|
771
1240
|
continue;
|
|
772
1241
|
}
|
|
773
1242
|
const submenu = _submenus.get(menuItem.submenu);
|
|
774
1243
|
if (!submenu) {
|
|
775
|
-
collector.error(localizeWithPath(
|
|
1244
|
+
collector.error(( localizeWithPath(
|
|
1245
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1246
|
+
'missing.submenu',
|
|
1247
|
+
"Menu item references a submenu `{0}` which is not defined in the 'submenus' section.",
|
|
1248
|
+
menuItem.submenu
|
|
1249
|
+
)));
|
|
776
1250
|
continue;
|
|
777
1251
|
}
|
|
778
1252
|
let submenuRegistrations = _submenuMenuItems.get(menu.id.id);
|
|
@@ -781,7 +1255,13 @@ menusExtensionPoint.setHandler(extensions => {
|
|
|
781
1255
|
_submenuMenuItems.set(menu.id.id, submenuRegistrations);
|
|
782
1256
|
}
|
|
783
1257
|
if (( submenuRegistrations.has(submenu.id.id))) {
|
|
784
|
-
collector.warn(localizeWithPath(
|
|
1258
|
+
collector.warn(( localizeWithPath(
|
|
1259
|
+
'vs/workbench/services/actions/common/menusExtensionPoint',
|
|
1260
|
+
'submenuItem.duplicate',
|
|
1261
|
+
"The `{0}` submenu was already contributed to the `{1}` menu.",
|
|
1262
|
+
menuItem.submenu,
|
|
1263
|
+
entry[0]
|
|
1264
|
+
)));
|
|
785
1265
|
continue;
|
|
786
1266
|
}
|
|
787
1267
|
submenuRegistrations.add(submenu.id.id);
|