@codingame/monaco-vscode-api 1.83.5 → 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
|
@@ -20,7 +20,11 @@ let ViewQuickAccessProvider = class ViewQuickAccessProvider extends PickerQuickA
|
|
|
20
20
|
constructor(viewDescriptorService, viewsService, outputService, terminalService, terminalGroupService, debugService, paneCompositeService, contextKeyService) {
|
|
21
21
|
super(ViewQuickAccessProvider_1.PREFIX, {
|
|
22
22
|
noResultsPick: {
|
|
23
|
-
label: localizeWithPath(
|
|
23
|
+
label: ( localizeWithPath(
|
|
24
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
25
|
+
'noViewResults',
|
|
26
|
+
"No matching views"
|
|
27
|
+
)),
|
|
24
28
|
containerLabel: ''
|
|
25
29
|
}
|
|
26
30
|
});
|
|
@@ -108,9 +112,21 @@ let ViewQuickAccessProvider = class ViewQuickAccessProvider extends PickerQuickA
|
|
|
108
112
|
}
|
|
109
113
|
}
|
|
110
114
|
};
|
|
111
|
-
addPaneComposites(0 , localizeWithPath(
|
|
112
|
-
|
|
113
|
-
|
|
115
|
+
addPaneComposites(0 , ( localizeWithPath(
|
|
116
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
117
|
+
'views',
|
|
118
|
+
"Side Bar"
|
|
119
|
+
)));
|
|
120
|
+
addPaneComposites(1 , ( localizeWithPath(
|
|
121
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
122
|
+
'panels',
|
|
123
|
+
"Panel"
|
|
124
|
+
)));
|
|
125
|
+
addPaneComposites(2 , ( localizeWithPath(
|
|
126
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
127
|
+
'secondary side bar',
|
|
128
|
+
"Secondary Side Bar"
|
|
129
|
+
)));
|
|
114
130
|
const addPaneCompositeViews = (location) => {
|
|
115
131
|
const paneComposites = this.paneCompositeService.getPaneComposites(location);
|
|
116
132
|
for (const paneComposite of paneComposites) {
|
|
@@ -125,10 +141,20 @@ let ViewQuickAccessProvider = class ViewQuickAccessProvider extends PickerQuickA
|
|
|
125
141
|
addPaneCompositeViews(2 );
|
|
126
142
|
this.terminalGroupService.groups.forEach((group, groupIndex) => {
|
|
127
143
|
group.terminalInstances.forEach((terminal, terminalIndex) => {
|
|
128
|
-
const label = localizeWithPath(
|
|
144
|
+
const label = ( localizeWithPath(
|
|
145
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
146
|
+
'terminalTitle',
|
|
147
|
+
"{0}: {1}",
|
|
148
|
+
`${groupIndex + 1}.${terminalIndex + 1}`,
|
|
149
|
+
terminal.title
|
|
150
|
+
));
|
|
129
151
|
viewEntries.push({
|
|
130
152
|
label,
|
|
131
|
-
containerLabel: localizeWithPath(
|
|
153
|
+
containerLabel: ( localizeWithPath(
|
|
154
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
155
|
+
'terminals',
|
|
156
|
+
"Terminal"
|
|
157
|
+
)),
|
|
132
158
|
accept: async () => {
|
|
133
159
|
await this.terminalGroupService.showPanel(true);
|
|
134
160
|
this.terminalService.setActiveInstance(terminal);
|
|
@@ -140,7 +166,11 @@ let ViewQuickAccessProvider = class ViewQuickAccessProvider extends PickerQuickA
|
|
|
140
166
|
const label = session.name;
|
|
141
167
|
viewEntries.push({
|
|
142
168
|
label,
|
|
143
|
-
containerLabel: localizeWithPath(
|
|
169
|
+
containerLabel: ( localizeWithPath(
|
|
170
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
171
|
+
'debugConsoles',
|
|
172
|
+
"Debug Console"
|
|
173
|
+
)),
|
|
144
174
|
accept: async () => {
|
|
145
175
|
await this.debugService.focusStackFrame(undefined, undefined, session, { explicit: true });
|
|
146
176
|
if (!this.viewsService.isViewVisible(REPL_VIEW_ID)) {
|
|
@@ -153,7 +183,11 @@ let ViewQuickAccessProvider = class ViewQuickAccessProvider extends PickerQuickA
|
|
|
153
183
|
for (const channel of channels) {
|
|
154
184
|
viewEntries.push({
|
|
155
185
|
label: channel.label,
|
|
156
|
-
containerLabel: localizeWithPath(
|
|
186
|
+
containerLabel: ( localizeWithPath(
|
|
187
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
188
|
+
'channels',
|
|
189
|
+
"Output"
|
|
190
|
+
)),
|
|
157
191
|
accept: () => this.outputService.showChannel(channel.id)
|
|
158
192
|
});
|
|
159
193
|
}
|
|
@@ -182,7 +216,11 @@ class OpenViewPickerAction extends Action2 {
|
|
|
182
216
|
constructor() {
|
|
183
217
|
super({
|
|
184
218
|
id: OpenViewPickerAction.ID,
|
|
185
|
-
title: { value: localizeWithPath(
|
|
219
|
+
title: { value: ( localizeWithPath(
|
|
220
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
221
|
+
'openView',
|
|
222
|
+
"Open View"
|
|
223
|
+
)), original: 'Open View' },
|
|
186
224
|
category: Categories.View,
|
|
187
225
|
f1: true
|
|
188
226
|
});
|
|
@@ -201,7 +239,11 @@ class QuickAccessViewPickerAction extends Action2 {
|
|
|
201
239
|
constructor() {
|
|
202
240
|
super({
|
|
203
241
|
id: QuickAccessViewPickerAction.ID,
|
|
204
|
-
title: { value: localizeWithPath(
|
|
242
|
+
title: { value: ( localizeWithPath(
|
|
243
|
+
'vs/workbench/contrib/quickaccess/browser/viewQuickAccess',
|
|
244
|
+
'quickOpenView',
|
|
245
|
+
"Quick Open View"
|
|
246
|
+
)), original: 'Quick Open View' },
|
|
205
247
|
category: Categories.View,
|
|
206
248
|
f1: false,
|
|
207
249
|
keybinding: {
|
|
@@ -20,7 +20,11 @@ let SwitchQuickDiffViewItem = class SwitchQuickDiffViewItem extends SelectAction
|
|
|
20
20
|
const peekTitleColor = theme.getColor(peekViewTitleBackground);
|
|
21
21
|
const opaqueTitleColor = peekTitleColor?.makeOpaque(editorBackgroundColor) ?? editorBackgroundColor;
|
|
22
22
|
styles.selectBackground = ( ( opaqueTitleColor.lighten(.6)).toString());
|
|
23
|
-
super(null, action, items, startingSelection, contextViewService, styles, { ariaLabel: nls.localizeWithPath(
|
|
23
|
+
super(null, action, items, startingSelection, contextViewService, styles, { ariaLabel: ( nls.localizeWithPath(
|
|
24
|
+
'vs/workbench/contrib/scm/browser/dirtyDiffSwitcher',
|
|
25
|
+
'remotes',
|
|
26
|
+
'Switch quick diff base'
|
|
27
|
+
)) });
|
|
24
28
|
this.optionsItems = items;
|
|
25
29
|
}
|
|
26
30
|
setSelection(provider) {
|
|
@@ -41,7 +45,11 @@ SwitchQuickDiffViewItem = ( __decorate([
|
|
|
41
45
|
], SwitchQuickDiffViewItem));
|
|
42
46
|
class SwitchQuickDiffBaseAction extends Action {
|
|
43
47
|
static { this.ID = 'quickDiff.base.switch'; }
|
|
44
|
-
static { this.LABEL = nls.localizeWithPath(
|
|
48
|
+
static { this.LABEL = ( nls.localizeWithPath(
|
|
49
|
+
'vs/workbench/contrib/scm/browser/dirtyDiffSwitcher',
|
|
50
|
+
'quickDiff.base.switch',
|
|
51
|
+
"Switch Quick Diff Base"
|
|
52
|
+
)); }
|
|
45
53
|
constructor(callback) {
|
|
46
54
|
super(SwitchQuickDiffBaseAction.ID, SwitchQuickDiffBaseAction.LABEL, undefined, undefined);
|
|
47
55
|
this.callback = callback;
|
|
@@ -202,14 +202,40 @@ let DirtyDiffWidget = class DirtyDiffWidget extends PeekViewWidget {
|
|
|
202
202
|
let detail;
|
|
203
203
|
if (!this.shouldUseDropdown()) {
|
|
204
204
|
detail = this.model.changes.length > 1
|
|
205
|
-
? nls.localizeWithPath(
|
|
206
|
-
|
|
205
|
+
? ( nls.localizeWithPath(
|
|
206
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
207
|
+
'changes',
|
|
208
|
+
"{0} - {1} of {2} changes",
|
|
209
|
+
label,
|
|
210
|
+
providerIndex + 1,
|
|
211
|
+
providerChanges.length
|
|
212
|
+
))
|
|
213
|
+
: ( nls.localizeWithPath(
|
|
214
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
215
|
+
'change',
|
|
216
|
+
"{0} - {1} of {2} change",
|
|
217
|
+
label,
|
|
218
|
+
providerIndex + 1,
|
|
219
|
+
providerChanges.length
|
|
220
|
+
));
|
|
207
221
|
this.dropdownContainer.style.display = 'none';
|
|
208
222
|
}
|
|
209
223
|
else {
|
|
210
224
|
detail = this.model.changes.length > 1
|
|
211
|
-
? nls.localizeWithPath(
|
|
212
|
-
|
|
225
|
+
? ( nls.localizeWithPath(
|
|
226
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
227
|
+
'multiChanges',
|
|
228
|
+
"{0} of {1} changes",
|
|
229
|
+
providerIndex + 1,
|
|
230
|
+
providerChanges.length
|
|
231
|
+
))
|
|
232
|
+
: ( nls.localizeWithPath(
|
|
233
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
234
|
+
'multiChange',
|
|
235
|
+
"{0} of {1} change",
|
|
236
|
+
providerIndex + 1,
|
|
237
|
+
providerChanges.length
|
|
238
|
+
));
|
|
213
239
|
this.dropdownContainer.style.display = 'inherit';
|
|
214
240
|
}
|
|
215
241
|
this.setTitle(this.title, detail);
|
|
@@ -267,13 +293,11 @@ let DirtyDiffWidget = class DirtyDiffWidget extends PeekViewWidget {
|
|
|
267
293
|
this._actionbarWidget.clear();
|
|
268
294
|
this._actionbarWidget.push(actions.reverse(), { label: false, icon: true });
|
|
269
295
|
this._actionbarWidget.push([next, previous], { label: false, icon: true });
|
|
270
|
-
this._actionbarWidget.push(( new Action(
|
|
271
|
-
'
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
() => this.dispose()
|
|
276
|
-
)), { label: false, icon: true });
|
|
296
|
+
this._actionbarWidget.push(( new Action('peekview.close', ( nls.localizeWithPath(
|
|
297
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
298
|
+
'label.close',
|
|
299
|
+
"Close"
|
|
300
|
+
)), ThemeIcon.asClassName(Codicon.close), true, () => this.dispose())), { label: false, icon: true });
|
|
277
301
|
}
|
|
278
302
|
_fillHead(container) {
|
|
279
303
|
super._fillHead(container, true);
|
|
@@ -377,7 +401,11 @@ class ShowPreviousChangeAction extends EditorAction {
|
|
|
377
401
|
constructor(outerEditor) {
|
|
378
402
|
super({
|
|
379
403
|
id: 'editor.action.dirtydiff.previous',
|
|
380
|
-
label: nls.localizeWithPath(
|
|
404
|
+
label: ( nls.localizeWithPath(
|
|
405
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
406
|
+
'show previous change',
|
|
407
|
+
"Show Previous Change"
|
|
408
|
+
)),
|
|
381
409
|
alias: 'Show Previous Change',
|
|
382
410
|
precondition: ( TextCompareEditorActiveContext.toNegated()),
|
|
383
411
|
kbOpts: { kbExpr: EditorContextKeys.editorTextFocus, primary: 1024 | 512 | 61 , weight: 100 }
|
|
@@ -404,7 +432,11 @@ class ShowNextChangeAction extends EditorAction {
|
|
|
404
432
|
constructor(outerEditor) {
|
|
405
433
|
super({
|
|
406
434
|
id: 'editor.action.dirtydiff.next',
|
|
407
|
-
label: nls.localizeWithPath(
|
|
435
|
+
label: ( nls.localizeWithPath(
|
|
436
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
437
|
+
'show next change',
|
|
438
|
+
"Show Next Change"
|
|
439
|
+
)),
|
|
408
440
|
alias: 'Show Next Change',
|
|
409
441
|
precondition: ( TextCompareEditorActiveContext.toNegated()),
|
|
410
442
|
kbOpts: { kbExpr: EditorContextKeys.editorTextFocus, primary: 512 | 61 , weight: 100 }
|
|
@@ -431,7 +463,11 @@ MenuRegistry.appendMenuItem(MenuId.MenubarGoMenu, {
|
|
|
431
463
|
group: '7_change_nav',
|
|
432
464
|
command: {
|
|
433
465
|
id: 'editor.action.dirtydiff.next',
|
|
434
|
-
title: nls.localizeWithPath(
|
|
466
|
+
title: ( nls.localizeWithPath(
|
|
467
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
468
|
+
{ key: 'miGotoNextChange', comment: ['&& denotes a mnemonic'] },
|
|
469
|
+
"Next &&Change"
|
|
470
|
+
))
|
|
435
471
|
},
|
|
436
472
|
order: 1
|
|
437
473
|
});
|
|
@@ -439,7 +475,11 @@ MenuRegistry.appendMenuItem(MenuId.MenubarGoMenu, {
|
|
|
439
475
|
group: '7_change_nav',
|
|
440
476
|
command: {
|
|
441
477
|
id: 'editor.action.dirtydiff.previous',
|
|
442
|
-
title: nls.localizeWithPath(
|
|
478
|
+
title: ( nls.localizeWithPath(
|
|
479
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
480
|
+
{ key: 'miGotoPreviousChange', comment: ['&& denotes a mnemonic'] },
|
|
481
|
+
"Previous &&Change"
|
|
482
|
+
))
|
|
443
483
|
},
|
|
444
484
|
order: 2
|
|
445
485
|
});
|
|
@@ -447,7 +487,11 @@ class GotoPreviousChangeAction extends EditorAction {
|
|
|
447
487
|
constructor() {
|
|
448
488
|
super({
|
|
449
489
|
id: 'workbench.action.editor.previousChange',
|
|
450
|
-
label: nls.localizeWithPath(
|
|
490
|
+
label: ( nls.localizeWithPath(
|
|
491
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
492
|
+
'move to previous change',
|
|
493
|
+
"Go to Previous Change"
|
|
494
|
+
)),
|
|
451
495
|
alias: 'Go to Previous Change',
|
|
452
496
|
precondition: ( TextCompareEditorActiveContext.toNegated()),
|
|
453
497
|
kbOpts: { kbExpr: EditorContextKeys.editorTextFocus, primary: 1024 | 512 | 63 , weight: 100 }
|
|
@@ -481,7 +525,11 @@ class GotoNextChangeAction extends EditorAction {
|
|
|
481
525
|
constructor() {
|
|
482
526
|
super({
|
|
483
527
|
id: 'workbench.action.editor.nextChange',
|
|
484
|
-
label: nls.localizeWithPath(
|
|
528
|
+
label: ( nls.localizeWithPath(
|
|
529
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
530
|
+
'move to next change',
|
|
531
|
+
"Go to Next Change"
|
|
532
|
+
)),
|
|
485
533
|
alias: 'Go to Next Change',
|
|
486
534
|
precondition: ( TextCompareEditorActiveContext.toNegated()),
|
|
487
535
|
kbOpts: { kbExpr: EditorContextKeys.editorTextFocus, primary: 512 | 63 , weight: 100 }
|
|
@@ -799,40 +847,76 @@ const editorGutterModifiedBackground = registerColor('editorGutter.modifiedBackg
|
|
|
799
847
|
light: '#2090D3',
|
|
800
848
|
hcDark: '#1B81A8',
|
|
801
849
|
hcLight: '#2090D3'
|
|
802
|
-
}, nls.localizeWithPath(
|
|
850
|
+
}, ( nls.localizeWithPath(
|
|
851
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
852
|
+
'editorGutterModifiedBackground',
|
|
853
|
+
"Editor gutter background color for lines that are modified."
|
|
854
|
+
)));
|
|
803
855
|
const editorGutterAddedBackground = registerColor('editorGutter.addedBackground', {
|
|
804
856
|
dark: '#487E02',
|
|
805
857
|
light: '#48985D',
|
|
806
858
|
hcDark: '#487E02',
|
|
807
859
|
hcLight: '#48985D'
|
|
808
|
-
}, nls.localizeWithPath(
|
|
860
|
+
}, ( nls.localizeWithPath(
|
|
861
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
862
|
+
'editorGutterAddedBackground',
|
|
863
|
+
"Editor gutter background color for lines that are added."
|
|
864
|
+
)));
|
|
809
865
|
const editorGutterDeletedBackground = registerColor('editorGutter.deletedBackground', {
|
|
810
866
|
dark: editorErrorForeground,
|
|
811
867
|
light: editorErrorForeground,
|
|
812
868
|
hcDark: editorErrorForeground,
|
|
813
869
|
hcLight: editorErrorForeground
|
|
814
|
-
}, nls.localizeWithPath(
|
|
870
|
+
}, ( nls.localizeWithPath(
|
|
871
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
872
|
+
'editorGutterDeletedBackground',
|
|
873
|
+
"Editor gutter background color for lines that are deleted."
|
|
874
|
+
)));
|
|
815
875
|
registerColor('minimapGutter.modifiedBackground', {
|
|
816
876
|
dark: editorGutterModifiedBackground,
|
|
817
877
|
light: editorGutterModifiedBackground,
|
|
818
878
|
hcDark: editorGutterModifiedBackground,
|
|
819
879
|
hcLight: editorGutterModifiedBackground
|
|
820
|
-
}, nls.localizeWithPath(
|
|
880
|
+
}, ( nls.localizeWithPath(
|
|
881
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
882
|
+
'minimapGutterModifiedBackground',
|
|
883
|
+
"Minimap gutter background color for lines that are modified."
|
|
884
|
+
)));
|
|
821
885
|
registerColor('minimapGutter.addedBackground', {
|
|
822
886
|
dark: editorGutterAddedBackground,
|
|
823
887
|
light: editorGutterAddedBackground,
|
|
824
888
|
hcDark: editorGutterAddedBackground,
|
|
825
889
|
hcLight: editorGutterAddedBackground
|
|
826
|
-
}, nls.localizeWithPath(
|
|
890
|
+
}, ( nls.localizeWithPath(
|
|
891
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
892
|
+
'minimapGutterAddedBackground',
|
|
893
|
+
"Minimap gutter background color for lines that are added."
|
|
894
|
+
)));
|
|
827
895
|
registerColor('minimapGutter.deletedBackground', {
|
|
828
896
|
dark: editorGutterDeletedBackground,
|
|
829
897
|
light: editorGutterDeletedBackground,
|
|
830
898
|
hcDark: editorGutterDeletedBackground,
|
|
831
899
|
hcLight: editorGutterDeletedBackground
|
|
832
|
-
}, nls.localizeWithPath(
|
|
833
|
-
|
|
834
|
-
|
|
835
|
-
|
|
900
|
+
}, ( nls.localizeWithPath(
|
|
901
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
902
|
+
'minimapGutterDeletedBackground',
|
|
903
|
+
"Minimap gutter background color for lines that are deleted."
|
|
904
|
+
)));
|
|
905
|
+
registerColor('editorOverviewRuler.modifiedForeground', { dark: ( transparent(editorGutterModifiedBackground, 0.6)), light: ( transparent(editorGutterModifiedBackground, 0.6)), hcDark: ( transparent(editorGutterModifiedBackground, 0.6)), hcLight: ( transparent(editorGutterModifiedBackground, 0.6)) }, ( nls.localizeWithPath(
|
|
906
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
907
|
+
'overviewRulerModifiedForeground',
|
|
908
|
+
'Overview ruler marker color for modified content.'
|
|
909
|
+
)));
|
|
910
|
+
registerColor('editorOverviewRuler.addedForeground', { dark: ( transparent(editorGutterAddedBackground, 0.6)), light: ( transparent(editorGutterAddedBackground, 0.6)), hcDark: ( transparent(editorGutterAddedBackground, 0.6)), hcLight: ( transparent(editorGutterAddedBackground, 0.6)) }, ( nls.localizeWithPath(
|
|
911
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
912
|
+
'overviewRulerAddedForeground',
|
|
913
|
+
'Overview ruler marker color for added content.'
|
|
914
|
+
)));
|
|
915
|
+
registerColor('editorOverviewRuler.deletedForeground', { dark: ( transparent(editorGutterDeletedBackground, 0.6)), light: ( transparent(editorGutterDeletedBackground, 0.6)), hcDark: ( transparent(editorGutterDeletedBackground, 0.6)), hcLight: ( transparent(editorGutterDeletedBackground, 0.6)) }, ( nls.localizeWithPath(
|
|
916
|
+
'vs/workbench/contrib/scm/browser/dirtydiffDecorator',
|
|
917
|
+
'overviewRulerDeletedForeground',
|
|
918
|
+
'Overview ruler marker color for deleted content.'
|
|
919
|
+
)));
|
|
836
920
|
async function getOriginalResource(quickDiffService, uri, language, isSynchronized) {
|
|
837
921
|
const quickDiffs = await quickDiffService.getQuickDiffs(uri, language, isSynchronized);
|
|
838
922
|
return quickDiffs.length > 0 ? quickDiffs[0].originalResource : null;
|
|
@@ -24,7 +24,13 @@ class SnippetCompletion {
|
|
|
24
24
|
constructor(snippet, range) {
|
|
25
25
|
this.snippet = snippet;
|
|
26
26
|
this.label = { label: snippet.prefix, description: snippet.name };
|
|
27
|
-
this.detail =
|
|
27
|
+
this.detail = ( localizeWithPath(
|
|
28
|
+
'vs/workbench/contrib/snippets/browser/snippetCompletionProvider',
|
|
29
|
+
'detail.snippet',
|
|
30
|
+
"{0} ({1})",
|
|
31
|
+
snippet.description || snippet.name,
|
|
32
|
+
snippet.source
|
|
33
|
+
));
|
|
28
34
|
this.insertText = snippet.codeSnippet;
|
|
29
35
|
this.extensionId = snippet.extensionId;
|
|
30
36
|
this.range = range;
|
|
@@ -112,10 +118,22 @@ let SnippetCompletionProvider = class SnippetCompletionProvider {
|
|
|
112
118
|
const item = suggestions[i];
|
|
113
119
|
let to = i + 1;
|
|
114
120
|
for (; to < suggestions.length && item.label === suggestions[to].label; to++) {
|
|
115
|
-
suggestions[to].label.label = localizeWithPath(
|
|
121
|
+
suggestions[to].label.label = ( localizeWithPath(
|
|
122
|
+
'vs/workbench/contrib/snippets/browser/snippetCompletionProvider',
|
|
123
|
+
'snippetSuggest.longLabel',
|
|
124
|
+
"{0}, {1}",
|
|
125
|
+
suggestions[to].label.label,
|
|
126
|
+
suggestions[to].snippet.name
|
|
127
|
+
));
|
|
116
128
|
}
|
|
117
129
|
if (to > i + 1) {
|
|
118
|
-
suggestions[i].label.label = localizeWithPath(
|
|
130
|
+
suggestions[i].label.label = ( localizeWithPath(
|
|
131
|
+
'vs/workbench/contrib/snippets/browser/snippetCompletionProvider',
|
|
132
|
+
'snippetSuggest.longLabel',
|
|
133
|
+
"{0}, {1}",
|
|
134
|
+
suggestions[i].label.label,
|
|
135
|
+
suggestions[i].snippet.name
|
|
136
|
+
));
|
|
119
137
|
i = to;
|
|
120
138
|
}
|
|
121
139
|
}
|
|
@@ -200,14 +200,26 @@ class SnippetFile {
|
|
|
200
200
|
source = this._extension.displayName || this._extension.name;
|
|
201
201
|
}
|
|
202
202
|
else if (this.source === 2 ) {
|
|
203
|
-
source = localizeWithPath(
|
|
203
|
+
source = ( localizeWithPath(
|
|
204
|
+
'vs/workbench/contrib/snippets/browser/snippetsFile',
|
|
205
|
+
'source.workspaceSnippetGlobal',
|
|
206
|
+
"Workspace Snippet"
|
|
207
|
+
));
|
|
204
208
|
}
|
|
205
209
|
else {
|
|
206
210
|
if (this.isGlobalSnippets) {
|
|
207
|
-
source = localizeWithPath(
|
|
211
|
+
source = ( localizeWithPath(
|
|
212
|
+
'vs/workbench/contrib/snippets/browser/snippetsFile',
|
|
213
|
+
'source.userSnippetGlobal',
|
|
214
|
+
"Global User Snippet"
|
|
215
|
+
));
|
|
208
216
|
}
|
|
209
217
|
else {
|
|
210
|
-
source = localizeWithPath(
|
|
218
|
+
source = ( localizeWithPath(
|
|
219
|
+
'vs/workbench/contrib/snippets/browser/snippetsFile',
|
|
220
|
+
'source.userSnippet',
|
|
221
|
+
"User Snippet"
|
|
222
|
+
));
|
|
211
223
|
}
|
|
212
224
|
}
|
|
213
225
|
for (const _prefix of Iterable.wrap(prefix)) {
|
|
@@ -28,21 +28,46 @@ var snippetExt;
|
|
|
28
28
|
( (function(snippetExt) {
|
|
29
29
|
function toValidSnippet(extension, snippet, languageService) {
|
|
30
30
|
if (isFalsyOrWhitespace(snippet.path)) {
|
|
31
|
-
extension.collector.error(
|
|
31
|
+
extension.collector.error(( localizeWithPath(
|
|
32
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
33
|
+
'invalid.path.0',
|
|
34
|
+
"Expected string in `contributes.{0}.path`. Provided value: {1}",
|
|
35
|
+
extension.description.name,
|
|
36
|
+
String(snippet.path)
|
|
37
|
+
)));
|
|
32
38
|
return null;
|
|
33
39
|
}
|
|
34
40
|
if (isFalsyOrWhitespace(snippet.language) && !snippet.path.endsWith('.code-snippets')) {
|
|
35
|
-
extension.collector.error(
|
|
41
|
+
extension.collector.error(( localizeWithPath(
|
|
42
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
43
|
+
'invalid.language.0',
|
|
44
|
+
"When omitting the language, the value of `contributes.{0}.path` must be a `.code-snippets`-file. Provided value: {1}",
|
|
45
|
+
extension.description.name,
|
|
46
|
+
String(snippet.path)
|
|
47
|
+
)));
|
|
36
48
|
return null;
|
|
37
49
|
}
|
|
38
50
|
if (!isFalsyOrWhitespace(snippet.language) && !languageService.isRegisteredLanguageId(snippet.language)) {
|
|
39
|
-
extension.collector.error(
|
|
51
|
+
extension.collector.error(( localizeWithPath(
|
|
52
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
53
|
+
'invalid.language',
|
|
54
|
+
"Unknown language in `contributes.{0}.language`. Provided value: {1}",
|
|
55
|
+
extension.description.name,
|
|
56
|
+
String(snippet.language)
|
|
57
|
+
)));
|
|
40
58
|
return null;
|
|
41
59
|
}
|
|
42
60
|
const extensionLocation = extension.description.extensionLocation;
|
|
43
61
|
const snippetLocation = resources.joinPath(extensionLocation, snippet.path);
|
|
44
62
|
if (!resources.isEqualOrParent(snippetLocation, extensionLocation)) {
|
|
45
|
-
extension.collector.error(
|
|
63
|
+
extension.collector.error(( localizeWithPath(
|
|
64
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
65
|
+
'invalid.path.1',
|
|
66
|
+
"Expected `contributes.{0}.path` ({1}) to be included inside extension's folder ({2}). This might make the extension non-portable.",
|
|
67
|
+
extension.description.name,
|
|
68
|
+
snippetLocation.path,
|
|
69
|
+
extensionLocation.path
|
|
70
|
+
)));
|
|
46
71
|
return null;
|
|
47
72
|
}
|
|
48
73
|
return {
|
|
@@ -52,7 +77,11 @@ var snippetExt;
|
|
|
52
77
|
}
|
|
53
78
|
snippetExt.toValidSnippet = toValidSnippet;
|
|
54
79
|
snippetExt.snippetsContribution = {
|
|
55
|
-
description: localizeWithPath(
|
|
80
|
+
description: ( localizeWithPath(
|
|
81
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
82
|
+
'vscode.extension.contributes.snippets',
|
|
83
|
+
'Contributes snippets.'
|
|
84
|
+
)),
|
|
56
85
|
type: 'array',
|
|
57
86
|
defaultSnippets: [{ body: [{ language: '', path: '' }] }],
|
|
58
87
|
items: {
|
|
@@ -60,11 +89,19 @@ var snippetExt;
|
|
|
60
89
|
defaultSnippets: [{ body: { language: '${1:id}', path: './snippets/${2:id}.json.' } }],
|
|
61
90
|
properties: {
|
|
62
91
|
language: {
|
|
63
|
-
description: localizeWithPath(
|
|
92
|
+
description: ( localizeWithPath(
|
|
93
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
94
|
+
'vscode.extension.contributes.snippets-language',
|
|
95
|
+
'Language identifier for which this snippet is contributed to.'
|
|
96
|
+
)),
|
|
64
97
|
type: 'string'
|
|
65
98
|
},
|
|
66
99
|
path: {
|
|
67
|
-
description: localizeWithPath(
|
|
100
|
+
description: ( localizeWithPath(
|
|
101
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
102
|
+
'vscode.extension.contributes.snippets-path',
|
|
103
|
+
'Path of the snippets file. The path is relative to the extension folder and typically starts with \'./snippets/\'.'
|
|
104
|
+
)),
|
|
68
105
|
type: 'string'
|
|
69
106
|
}
|
|
70
107
|
}
|
|
@@ -306,10 +343,20 @@ let SnippetsService = class SnippetsService {
|
|
|
306
343
|
if (this._environmentService.isExtensionDevelopment) {
|
|
307
344
|
file.load().then(file => {
|
|
308
345
|
if (( file.data.some(snippet => snippet.isBogous))) {
|
|
309
|
-
extension.collector.warn(
|
|
346
|
+
extension.collector.warn(( localizeWithPath(
|
|
347
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
348
|
+
'badVariableUse',
|
|
349
|
+
"One or more snippets from the extension '{0}' very likely confuse snippet-variables and snippet-placeholders (see https://code.visualstudio.com/docs/editor/userdefinedsnippets#_snippet-syntax for more details)",
|
|
350
|
+
extension.description.name
|
|
351
|
+
)));
|
|
310
352
|
}
|
|
311
353
|
}, err => {
|
|
312
|
-
extension.collector.warn(
|
|
354
|
+
extension.collector.warn(( localizeWithPath(
|
|
355
|
+
'vs/workbench/contrib/snippets/browser/snippetsService',
|
|
356
|
+
'badFile',
|
|
357
|
+
"The snippet file \"{0}\" could not be read.",
|
|
358
|
+
( file.location.toString())
|
|
359
|
+
)));
|
|
313
360
|
});
|
|
314
361
|
}
|
|
315
362
|
}
|
|
@@ -10,7 +10,11 @@ const taskDefinitionSchema = {
|
|
|
10
10
|
properties: {
|
|
11
11
|
type: {
|
|
12
12
|
type: 'string',
|
|
13
|
-
description: nls.localizeWithPath(
|
|
13
|
+
description: ( nls.localizeWithPath(
|
|
14
|
+
'vs/workbench/contrib/tasks/common/taskDefinitionRegistry',
|
|
15
|
+
'TaskDefinition.description',
|
|
16
|
+
'The actual task type. Please note that types starting with a \'$\' are reserved for internal usage.'
|
|
17
|
+
))
|
|
14
18
|
},
|
|
15
19
|
required: {
|
|
16
20
|
type: 'array',
|
|
@@ -20,14 +24,22 @@ const taskDefinitionSchema = {
|
|
|
20
24
|
},
|
|
21
25
|
properties: {
|
|
22
26
|
type: 'object',
|
|
23
|
-
description: nls.localizeWithPath(
|
|
27
|
+
description: ( nls.localizeWithPath(
|
|
28
|
+
'vs/workbench/contrib/tasks/common/taskDefinitionRegistry',
|
|
29
|
+
'TaskDefinition.properties',
|
|
30
|
+
'Additional properties of the task type'
|
|
31
|
+
)),
|
|
24
32
|
additionalProperties: {
|
|
25
33
|
$ref: 'http://json-schema.org/draft-07/schema#'
|
|
26
34
|
}
|
|
27
35
|
},
|
|
28
36
|
when: {
|
|
29
37
|
type: 'string',
|
|
30
|
-
markdownDescription: nls.localizeWithPath(
|
|
38
|
+
markdownDescription: ( nls.localizeWithPath(
|
|
39
|
+
'vs/workbench/contrib/tasks/common/taskDefinitionRegistry',
|
|
40
|
+
'TaskDefinition.when',
|
|
41
|
+
'Condition which must be true to enable this type of task. Consider using `shellExecutionSupported`, `processExecutionSupported`, and `customExecutionSupported` as appropriate for this task definition. See the [API documentation](https://code.visualstudio.com/api/extension-guides/task-provider#when-clause) for more information.'
|
|
42
|
+
)),
|
|
31
43
|
default: ''
|
|
32
44
|
}
|
|
33
45
|
}
|
|
@@ -40,7 +52,11 @@ var Configuration;
|
|
|
40
52
|
}
|
|
41
53
|
const taskType = types.isString(value.type) ? value.type : undefined;
|
|
42
54
|
if (!taskType || taskType.length === 0) {
|
|
43
|
-
messageCollector.error(nls.localizeWithPath(
|
|
55
|
+
messageCollector.error(( nls.localizeWithPath(
|
|
56
|
+
'vs/workbench/contrib/tasks/common/taskDefinitionRegistry',
|
|
57
|
+
'TaskTypeConfiguration.noType',
|
|
58
|
+
'The task type configuration is missing the required \'taskType\' property'
|
|
59
|
+
)));
|
|
44
60
|
return undefined;
|
|
45
61
|
}
|
|
46
62
|
const required = [];
|
|
@@ -70,7 +86,11 @@ const taskDefinitionsExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
70
86
|
}
|
|
71
87
|
},
|
|
72
88
|
jsonSchema: {
|
|
73
|
-
description: nls.localizeWithPath(
|
|
89
|
+
description: ( nls.localizeWithPath(
|
|
90
|
+
'vs/workbench/contrib/tasks/common/taskDefinitionRegistry',
|
|
91
|
+
'TaskDefinitionExtPoint',
|
|
92
|
+
'Contributes task kinds'
|
|
93
|
+
)),
|
|
74
94
|
type: 'array',
|
|
75
95
|
items: taskDefinitionSchema
|
|
76
96
|
}
|