@codingame/monaco-vscode-api 1.83.2 → 1.83.3
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/extensions.d.ts +3 -3
- package/extensions.js +31 -33
- package/l10n.d.ts +4 -0
- package/l10n.js +10 -0
- package/missing-services.js +4 -2
- package/monaco-editor-treemending.patch +11880 -682
- package/monaco-treemending.js +8 -2
- package/package.json +8 -1
- package/service-override/extensions.js +2 -2
- package/service-override/layout.js +2 -2
- package/tools/l10n.js +177 -0
- package/tools.js +22 -1
- package/vscode/src/vs/base/browser/ui/menu/menubar.js +1 -1
- package/vscode/src/vs/base/browser/ui/splitview/paneview.js +2 -2
- package/vscode/src/vs/base/common/date.js +55 -55
- package/vscode/src/vs/base/common/jsonErrorMessages.js +10 -10
- package/vscode/src/vs/base/common/tfIdf.js +137 -0
- package/vscode/src/vs/editor/contrib/quickAccess/browser/commandsQuickAccess.js +23 -0
- package/vscode/src/vs/editor/contrib/quickAccess/browser/editorNavigationQuickAccess.js +115 -0
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +112 -0
- package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +334 -0
- package/vscode/src/vs/platform/dialogs/common/dialogs.js +10 -14
- package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +3 -0
- package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +2 -2
- package/vscode/src/vs/platform/files/common/fileService.js +28 -37
- package/vscode/src/vs/platform/files/common/files.js +6 -6
- package/vscode/src/vs/platform/files/common/io.js +2 -2
- package/vscode/src/vs/platform/keyboardLayout/common/keyboardConfig.js +3 -9
- package/vscode/src/vs/platform/quickinput/browser/commandsQuickAccess.js +300 -0
- package/vscode/src/vs/platform/quickinput/browser/helpQuickAccess.js +59 -0
- package/vscode/src/vs/platform/quickinput/browser/pickerQuickAccess.js +212 -0
- package/vscode/src/vs/platform/request/common/request.js +2 -2
- package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -63
- package/vscode/src/vs/workbench/api/browser/mainThreadAuthentication.js +13 -32
- package/vscode/src/vs/workbench/api/browser/mainThreadComments.js +2 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadCustomEditors.js +3 -3
- package/vscode/src/vs/workbench/api/browser/mainThreadEditSessionIdentityParticipant.js +4 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadExtensionService.js +38 -50
- package/vscode/src/vs/workbench/api/browser/mainThreadFileSystemEventService.js +21 -53
- package/vscode/src/vs/workbench/api/browser/mainThreadMessageService.js +4 -4
- package/vscode/src/vs/workbench/api/browser/mainThreadNotebookSaveParticipant.js +4 -5
- package/vscode/src/vs/workbench/api/browser/mainThreadProgress.js +6 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadSaveParticipant.js +4 -2
- package/vscode/src/vs/workbench/api/browser/mainThreadTask.js +1 -1
- package/vscode/src/vs/workbench/api/browser/mainThreadTunnelService.js +2 -12
- package/vscode/src/vs/workbench/api/browser/mainThreadUriOpeners.js +15 -9
- package/vscode/src/vs/workbench/api/browser/mainThreadWebviews.js +2 -6
- package/vscode/src/vs/workbench/api/browser/mainThreadWorkspace.js +6 -28
- package/vscode/src/vs/workbench/api/browser/statusBarExtensionPoint.js +60 -0
- package/vscode/src/vs/workbench/api/common/extHostChat.js +3 -3
- package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +2 -6
- package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +3 -11
- package/vscode/src/vs/workbench/api/common/extHostLogService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostNotebook.js +3 -3
- package/vscode/src/vs/workbench/api/common/extHostProgress.js +2 -6
- package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +3 -7
- package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +2 -6
- package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +2 -6
- package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +2 -7
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +9 -34
- package/vscode/src/vs/workbench/browser/actions/layoutActions.js +898 -68
- package/vscode/src/vs/workbench/browser/actions/quickAccessActions.js +7 -7
- package/vscode/src/vs/workbench/browser/actions/windowActions.js +32 -38
- package/vscode/src/vs/workbench/browser/actions/workspaceActions.js +103 -13
- package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +2 -2
- package/vscode/src/vs/workbench/browser/editor.js +3 -3
- package/vscode/src/vs/workbench/browser/parts/auxiliarybar/auxiliaryBarActions.js +12 -27
- package/vscode/src/vs/workbench/browser/parts/compositeBarActions.js +12 -12
- package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +2 -7
- package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +4 -7
- package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +42 -90
- package/vscode/src/vs/workbench/browser/parts/editor/editor.contribution.js +140 -272
- package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +115 -148
- package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +21 -33
- package/vscode/src/vs/workbench/browser/parts/editor/editorConfiguration.js +7 -19
- package/vscode/src/vs/workbench/browser/parts/editor/editorPlaceholder.js +10 -26
- package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +7 -17
- package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +60 -81
- package/vscode/src/vs/workbench/browser/parts/editor/sideBySideEditor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +4 -11
- package/vscode/src/vs/workbench/browser/parts/editor/textEditor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +8 -8
- package/vscode/src/vs/workbench/browser/parts/panel/panelActions.js +69 -34
- package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +58 -34
- package/vscode/src/vs/workbench/browser/parts/views/viewFilter.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/views/viewPane.js +3 -9
- package/vscode/src/vs/workbench/browser/parts/views/viewPaneContainer.js +6 -6
- package/vscode/src/vs/workbench/browser/parts/views/viewsService.js +7 -11
- package/vscode/src/vs/workbench/browser/quickaccess.js +7 -3
- package/vscode/src/vs/workbench/browser/workbench.contribution.js +186 -683
- package/vscode/src/vs/workbench/common/configuration.js +12 -15
- package/vscode/src/vs/workbench/common/contextkeys.js +272 -90
- package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +2 -2
- package/vscode/src/vs/workbench/common/editor/sideBySideEditorInput.js +2 -7
- package/vscode/src/vs/workbench/common/editor/textEditorModel.js +2 -6
- package/vscode/src/vs/workbench/common/editor.js +5 -5
- package/vscode/src/vs/workbench/common/theme.js +137 -527
- package/vscode/src/vs/workbench/common/views.js +4 -8
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +15 -55
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityContributions.js +3 -8
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleView.js +22 -60
- package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibleViewActions.js +9 -15
- package/vscode/src/vs/workbench/contrib/bulkEdit/browser/bulkEditService.js +18 -48
- package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +2 -0
- package/vscode/src/vs/workbench/contrib/chat/common/chatAgents.js +5 -10
- package/vscode/src/vs/workbench/contrib/chat/common/chatSlashCommands.js +5 -13
- package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +8 -27
- package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +5 -17
- package/vscode/src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.js +6 -15
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +7 -20
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/languageConfigurationExtensionPoint.js +63 -216
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +4 -7
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoLineQuickAccess.js +5 -8
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +8 -11
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +5 -15
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +3 -3
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +5 -5
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +3 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +3 -6
- package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +10 -9
- package/vscode/src/vs/workbench/contrib/comments/browser/commentColors.js +6 -15
- package/vscode/src/vs/workbench/contrib/comments/browser/commentGlyphWidget.js +5 -20
- package/vscode/src/vs/workbench/contrib/comments/browser/commentNode.js +3 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +4 -4
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadBody.js +3 -20
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadHeader.js +9 -3
- package/vscode/src/vs/workbench/contrib/comments/browser/commentThreadWidget.js +4 -13
- package/vscode/src/vs/workbench/contrib/comments/browser/comments.contribution.js +26 -77
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsController.js +5 -17
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsTreeViewer.js +7 -12
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsView.js +10 -29
- package/vscode/src/vs/workbench/contrib/comments/browser/commentsViewActions.js +10 -10
- package/vscode/src/vs/workbench/contrib/comments/browser/reactionsAction.js +8 -8
- package/vscode/src/vs/workbench/contrib/comments/common/commentContextKeys.js +25 -21
- package/vscode/src/vs/workbench/contrib/comments/common/commentModel.js +2 -2
- package/vscode/src/vs/workbench/contrib/customEditor/common/customEditor.js +1 -4
- package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +13 -13
- package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +56 -98
- package/vscode/src/vs/workbench/contrib/debug/common/abstractDebugAdapter.js +2 -2
- package/vscode/src/vs/workbench/contrib/debug/common/debug.js +96 -180
- package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsIcons.js +25 -79
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/configuration.js +4 -15
- package/vscode/src/vs/workbench/contrib/externalUriOpener/common/externalUriOpenerService.js +4 -8
- package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +56 -19
- package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +76 -230
- package/vscode/src/vs/workbench/contrib/files/browser/fileConstants.js +6 -5
- package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +33 -103
- package/vscode/src/vs/workbench/contrib/files/browser/files.contribution.js +228 -99
- package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerDecorationsProvider.js +5 -9
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +5 -5
- package/vscode/src/vs/workbench/contrib/files/browser/views/explorerViewer.js +15 -35
- package/vscode/src/vs/workbench/contrib/files/browser/views/openEditorsView.js +5 -8
- package/vscode/src/vs/workbench/contrib/files/common/files.js +27 -48
- package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -6
- package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
- package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +5 -8
- package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +112 -52
- package/vscode/src/vs/workbench/contrib/keybindings/browser/keybindings.contribution.js +1 -1
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +2 -2
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +30 -96
- package/vscode/src/vs/workbench/contrib/mergeEditor/browser/model/mergeEditorModel.js +3 -3
- package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +42 -0
- package/vscode/src/vs/workbench/contrib/output/browser/output.contribution.js +23 -29
- package/vscode/src/vs/workbench/contrib/output/browser/outputView.js +3 -3
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/commandsQuickAccess.js +13 -16
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/quickAccess.contribution.js +15 -34
- package/vscode/src/vs/workbench/contrib/quickaccess/browser/viewQuickAccess.js +12 -17
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +2 -2
- package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +26 -75
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +4 -19
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +4 -4
- package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +10 -41
- package/vscode/src/vs/workbench/contrib/tasks/common/taskDefinitionRegistry.js +5 -14
- package/vscode/src/vs/workbench/contrib/tasks/common/taskService.js +26 -13
- package/vscode/src/vs/workbench/contrib/tasks/common/tasks.js +8 -6
- package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +5 -17
- package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +7 -28
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalColorRegistry.js +21 -78
- package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +21 -53
- package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
- package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +2 -5
- package/vscode/src/vs/workbench/services/actions/common/menusExtensionPoint.js +113 -348
- package/vscode/src/vs/workbench/services/assignment/common/assignmentService.js +2 -5
- package/vscode/src/vs/workbench/services/authentication/browser/authenticationService.js +31 -1
- package/vscode/src/vs/workbench/services/configuration/common/jsonEditingService.js +1 -4
- package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +16 -16
- package/vscode/src/vs/workbench/services/decorations/browser/decorationsService.js +2 -2
- package/vscode/src/vs/workbench/services/editor/common/editorResolverService.js +2 -5
- package/vscode/src/vs/workbench/services/extensions/browser/extensionUrlHandler.js +4 -4
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +10 -45
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +1 -1
- package/vscode/src/vs/workbench/services/extensions/common/extensionsRegistry.js +80 -296
- package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +6 -21
- package/vscode/src/vs/workbench/services/host/browser/browserHostService.js +3 -6
- package/vscode/src/vs/workbench/services/keybinding/browser/keybindingService.js +24 -81
- package/vscode/src/vs/workbench/services/keybinding/browser/keyboardLayoutService.js +2 -2
- package/vscode/src/vs/workbench/services/keybinding/common/keybindingEditing.js +11 -17
- package/vscode/src/vs/workbench/services/language/common/languageService.js +23 -98
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +9 -11
- package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -5
- package/vscode/src/vs/workbench/services/textfile/browser/textFileService.js +11 -23
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +2 -2
- package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModelManager.js +2 -7
- package/vscode/src/vs/workbench/services/textfile/common/textFileSaveParticipant.js +2 -2
- package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +16 -53
- package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +50 -1
- package/vscode/src/vs/workbench/services/themes/common/tokenClassificationExtensionPoint.js +25 -99
- package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +6 -3
- package/vscode/src/vs/workbench/services/userDataSync/common/userDataSync.js +15 -3
- package/vscode/src/vs/workbench/services/workingCopy/common/storedFileWorkingCopySaveParticipant.js +2 -2
|
@@ -23,7 +23,11 @@ import { IDialogService } from '../../../../platform/dialogs/common/dialogs.js';
|
|
|
23
23
|
const MISMATCH_LOCAL_PORT_COOLDOWN = 10 * 1000;
|
|
24
24
|
const TUNNELS_TO_RESTORE = 'remote.tunnels.toRestore';
|
|
25
25
|
const ACTIVATION_EVENT = 'onTunnel';
|
|
26
|
-
const forwardedPortsViewEnabled = ( new RawContextKey(
|
|
26
|
+
const forwardedPortsViewEnabled = ( new RawContextKey(
|
|
27
|
+
'forwardedPortsViewEnabled',
|
|
28
|
+
false,
|
|
29
|
+
nls.localizeWithPath('vs/workbench/services/remote/common/tunnelModel', 'tunnel.forwardedPortsViewEnabled', "Whether the Ports view is enabled.")
|
|
30
|
+
));
|
|
27
31
|
function parseAddress(address) {
|
|
28
32
|
const matches = address.match(/^([a-zA-Z0-9_-]+(?:\.[a-zA-Z0-9_-]+)*:)?([0-9]+)$/);
|
|
29
33
|
if (!matches) {
|
|
@@ -45,11 +49,11 @@ var TunnelSource;
|
|
|
45
49
|
})(TunnelSource || (TunnelSource = {})));
|
|
46
50
|
const UserTunnelSource = {
|
|
47
51
|
source: TunnelSource.User,
|
|
48
|
-
description:
|
|
52
|
+
description: nls.localizeWithPath('vs/workbench/services/remote/common/tunnelModel', 'tunnel.source.user', "User Forwarded")
|
|
49
53
|
};
|
|
50
54
|
const AutoTunnelSource = {
|
|
51
55
|
source: TunnelSource.Auto,
|
|
52
|
-
description:
|
|
56
|
+
description: nls.localizeWithPath('vs/workbench/services/remote/common/tunnelModel', 'tunnel.source.auto', "Auto Forwarded")
|
|
53
57
|
};
|
|
54
58
|
function mapHasAddress(map, host, port) {
|
|
55
59
|
const initialAddress = map.get(makeAddress(host, port));
|
|
@@ -510,13 +514,7 @@ let TunnelModel = class TunnelModel extends Disposable {
|
|
|
510
514
|
return;
|
|
511
515
|
}
|
|
512
516
|
this.mismatchCooldown = newCooldown;
|
|
513
|
-
const mismatchString = (
|
|
514
|
-
'remote.localPortMismatch.single',
|
|
515
|
-
"Local port {0} could not be used for forwarding to remote port {1}.\n\nThis usually happens when there is already another process using local port {0}.\n\nPort number {2} has been used instead.",
|
|
516
|
-
expectedLocal,
|
|
517
|
-
tunnel.tunnelRemotePort,
|
|
518
|
-
tunnel.tunnelLocalPort
|
|
519
|
-
));
|
|
517
|
+
const mismatchString = nls.localizeWithPath('vs/workbench/services/remote/common/tunnelModel', 'remote.localPortMismatch.single', "Local port {0} could not be used for forwarding to remote port {1}.\n\nThis usually happens when there is already another process using local port {0}.\n\nPort number {2} has been used instead.", expectedLocal, tunnel.tunnelRemotePort, tunnel.tunnelLocalPort);
|
|
520
518
|
return this.dialogService.info(mismatchString);
|
|
521
519
|
}
|
|
522
520
|
async forward(tunnelProperties, attributes) {
|
|
@@ -678,7 +676,7 @@ let TunnelModel = class TunnelModel extends Disposable {
|
|
|
678
676
|
privacy: TunnelPrivacyId.ConstantPrivate,
|
|
679
677
|
source: {
|
|
680
678
|
source: TunnelSource.Extension,
|
|
681
|
-
description:
|
|
679
|
+
description: nls.localizeWithPath('vs/workbench/services/remote/common/tunnelModel', 'tunnel.staticallyForwarded', "Statically Forwarded")
|
|
682
680
|
}
|
|
683
681
|
});
|
|
684
682
|
this.tunnelService.setEnvironmentTunnel(tunnel.remoteAddress.host, tunnel.remoteAddress.port, localAddress, TunnelPrivacyId.ConstantPrivate, TunnelProtocol.Http);
|
|
@@ -327,11 +327,7 @@ let QueryBuilder = class QueryBuilder {
|
|
|
327
327
|
else {
|
|
328
328
|
const probableWorkspaceFolderNameMatch = searchPath.match(/\.[\/\\](.+)[\/\\]?/);
|
|
329
329
|
const probableWorkspaceFolderName = probableWorkspaceFolderNameMatch ? probableWorkspaceFolderNameMatch[1] : searchPath;
|
|
330
|
-
const searchPathNotFoundError = (
|
|
331
|
-
'search.noWorkspaceWithName',
|
|
332
|
-
"Workspace folder does not exist: {0}",
|
|
333
|
-
probableWorkspaceFolderName
|
|
334
|
-
));
|
|
330
|
+
const searchPathNotFoundError = nls.localizeWithPath('vs/workbench/services/search/common/queryBuilder', 'search.noWorkspaceWithName', "Workspace folder does not exist: {0}", probableWorkspaceFolderName);
|
|
335
331
|
throw new Error(searchPathNotFoundError);
|
|
336
332
|
}
|
|
337
333
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import {
|
|
2
|
+
import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
3
3
|
import { TextFileOperationError, toBufferOrReadable, stringToSnapshot } from '../common/textfiles.js';
|
|
4
4
|
import { SaveSourceRegistry } from '../../../common/editor.js';
|
|
5
5
|
import { ILifecycleService } from '../../lifecycle/common/lifecycle.js';
|
|
@@ -41,8 +41,8 @@ import { IDialogService, IFileDialogService } from '../../../../platform/dialogs
|
|
|
41
41
|
var AbstractTextFileService_1;
|
|
42
42
|
let AbstractTextFileService = class AbstractTextFileService extends Disposable {
|
|
43
43
|
static { AbstractTextFileService_1 = this; }
|
|
44
|
-
static { this.TEXTFILE_SAVE_CREATE_SOURCE = SaveSourceRegistry.registerSource('textFileCreate.source', (
|
|
45
|
-
static { this.TEXTFILE_SAVE_REPLACE_SOURCE = SaveSourceRegistry.registerSource('textFileOverwrite.source', (
|
|
44
|
+
static { this.TEXTFILE_SAVE_CREATE_SOURCE = SaveSourceRegistry.registerSource('textFileCreate.source', localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'textFileCreate.source', "File Created")); }
|
|
45
|
+
static { this.TEXTFILE_SAVE_REPLACE_SOURCE = SaveSourceRegistry.registerSource('textFileOverwrite.source', localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'textFileOverwrite.source', "File Replaced")); }
|
|
46
46
|
constructor(fileService, untitledTextEditorService, lifecycleService, instantiationService, modelService, environmentService, dialogService, fileDialogService, textResourceConfigurationService, filesConfigurationService, codeEditorService, pathService, workingCopyFileService, uriIdentityService, languageService, logService, elevatedFileService, decorationsService) {
|
|
47
47
|
super();
|
|
48
48
|
this.fileService = fileService;
|
|
@@ -72,7 +72,7 @@ let AbstractTextFileService = class AbstractTextFileService extends Disposable {
|
|
|
72
72
|
constructor(files) {
|
|
73
73
|
super();
|
|
74
74
|
this.files = files;
|
|
75
|
-
this.label = (
|
|
75
|
+
this.label = localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'textFileModelDecorations', "Text File Model Decorations");
|
|
76
76
|
this._onDidChange = this._register(( new Emitter()));
|
|
77
77
|
this.onDidChange = this._onDidChange.event;
|
|
78
78
|
this.registerListeners();
|
|
@@ -99,20 +99,20 @@ let AbstractTextFileService = class AbstractTextFileService extends Disposable {
|
|
|
99
99
|
color: listErrorForeground,
|
|
100
100
|
letter: Codicon.lockSmall,
|
|
101
101
|
strikethrough: true,
|
|
102
|
-
tooltip: (
|
|
102
|
+
tooltip: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'readonlyAndDeleted', "Deleted, Read-only"),
|
|
103
103
|
};
|
|
104
104
|
}
|
|
105
105
|
else if (isReadonly) {
|
|
106
106
|
return {
|
|
107
107
|
letter: Codicon.lockSmall,
|
|
108
|
-
tooltip: (
|
|
108
|
+
tooltip: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'readonly', "Read-only"),
|
|
109
109
|
};
|
|
110
110
|
}
|
|
111
111
|
else if (isOrphaned) {
|
|
112
112
|
return {
|
|
113
113
|
color: listErrorForeground,
|
|
114
114
|
strikethrough: true,
|
|
115
|
-
tooltip: (
|
|
115
|
+
tooltip: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'deleted', "Deleted"),
|
|
116
116
|
};
|
|
117
117
|
}
|
|
118
118
|
return undefined;
|
|
@@ -165,7 +165,7 @@ let AbstractTextFileService = class AbstractTextFileService extends Disposable {
|
|
|
165
165
|
catch (error) {
|
|
166
166
|
cts.dispose(true);
|
|
167
167
|
if (error.decodeStreamErrorKind === 1 ) {
|
|
168
|
-
throw new TextFileOperationError(
|
|
168
|
+
throw new TextFileOperationError(localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'fileBinaryError', "File seems to be binary and cannot be opened as text"), 0 , options);
|
|
169
169
|
}
|
|
170
170
|
else {
|
|
171
171
|
throw error;
|
|
@@ -364,21 +364,9 @@ let AbstractTextFileService = class AbstractTextFileService extends Disposable {
|
|
|
364
364
|
async confirmOverwrite(resource) {
|
|
365
365
|
const { confirmed } = await this.dialogService.confirm({
|
|
366
366
|
type: 'warning',
|
|
367
|
-
message: (
|
|
368
|
-
|
|
369
|
-
|
|
370
|
-
basename(resource)
|
|
371
|
-
)),
|
|
372
|
-
detail: ( localize(
|
|
373
|
-
'irreversible',
|
|
374
|
-
"A file or folder with the name '{0}' already exists in the folder '{1}'. Replacing it will overwrite its current contents.",
|
|
375
|
-
basename(resource),
|
|
376
|
-
basename(dirname(resource))
|
|
377
|
-
)),
|
|
378
|
-
primaryButton: ( localize(
|
|
379
|
-
{ key: 'replaceButtonLabel', comment: ['&& denotes a mnemonic'] },
|
|
380
|
-
"&&Replace"
|
|
381
|
-
)),
|
|
367
|
+
message: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'confirmOverwrite', "'{0}' already exists. Do you want to replace it?", basename(resource)),
|
|
368
|
+
detail: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', 'irreversible', "A file or folder with the name '{0}' already exists in the folder '{1}'. Replacing it will overwrite its current contents.", basename(resource), basename(dirname(resource))),
|
|
369
|
+
primaryButton: localizeWithPath('vs/workbench/services/textfile/browser/textFileService', { key: 'replaceButtonLabel', comment: ['&& denotes a mnemonic'] }, "&&Replace"),
|
|
382
370
|
});
|
|
383
371
|
return confirmed;
|
|
384
372
|
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import {
|
|
2
|
+
import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
3
3
|
import { Emitter } from 'monaco-editor/esm/vs/base/common/event.js';
|
|
4
4
|
import { mark } from 'monaco-editor/esm/vs/base/common/performance.js';
|
|
5
5
|
import { assertIsDefined } from 'monaco-editor/esm/vs/base/common/types.js';
|
|
@@ -29,7 +29,7 @@ import { IExtensionService } from '../../extensions/common/extensions.js';
|
|
|
29
29
|
var TextFileEditorModel_1;
|
|
30
30
|
let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel {
|
|
31
31
|
static { TextFileEditorModel_1 = this; }
|
|
32
|
-
static { this.TEXTFILE_SAVE_ENCODING_SOURCE = SaveSourceRegistry.registerSource('textFileEncoding.source', (
|
|
32
|
+
static { this.TEXTFILE_SAVE_ENCODING_SOURCE = SaveSourceRegistry.registerSource('textFileEncoding.source', localizeWithPath('vs/workbench/services/textfile/common/textFileEditorModel', 'textFileCreate.source', "File Encoding Changed")); }
|
|
33
33
|
static { this.UNDO_REDO_SAVE_PARTICIPANTS_AUTO_SAVE_THROTTLE_THRESHOLD = 500; }
|
|
34
34
|
constructor(resource, preferredEncoding,
|
|
35
35
|
preferredLanguageId, languageService, modelService, fileService, textFileService, workingCopyBackupService, logService, workingCopyService, filesConfigurationService, labelService, languageDetectionService, accessibilityService, pathService, extensionService) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import {
|
|
2
|
+
import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
3
3
|
import { toErrorMessage } from 'monaco-editor/esm/vs/base/common/errorMessage.js';
|
|
4
4
|
import { Emitter, Event } from 'monaco-editor/esm/vs/base/common/event.js';
|
|
5
5
|
import { URI } from 'monaco-editor/esm/vs/base/common/uri.js';
|
|
@@ -57,12 +57,7 @@ let TextFileEditorModelManager = class TextFileEditorModelManager extends Dispos
|
|
|
57
57
|
const notificationService = this.notificationService;
|
|
58
58
|
return {
|
|
59
59
|
onSaveError(error, model) {
|
|
60
|
-
notificationService.error((
|
|
61
|
-
{ key: 'genericSaveError', comment: ['{0} is the resource that failed to save and {1} the error message'] },
|
|
62
|
-
"Failed to save '{0}': {1}",
|
|
63
|
-
model.name,
|
|
64
|
-
toErrorMessage(error, false)
|
|
65
|
-
)));
|
|
60
|
+
notificationService.error(localizeWithPath('vs/workbench/services/textfile/common/textFileEditorModelManager', { key: 'genericSaveError', comment: ['{0} is the resource that failed to save and {1} the error message'] }, "Failed to save '{0}': {1}", model.name, toErrorMessage(error, false)));
|
|
66
61
|
}
|
|
67
62
|
};
|
|
68
63
|
})();
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { __decorate, __param } from '../../../../../../../external/tslib/tslib.es6.js';
|
|
2
|
-
import {
|
|
2
|
+
import { localizeWithPath } from 'monaco-editor/esm/vs/nls.js';
|
|
3
3
|
import { raceCancellation } from 'monaco-editor/esm/vs/base/common/async.js';
|
|
4
4
|
import { CancellationTokenSource } from 'monaco-editor/esm/vs/base/common/cancellation.js';
|
|
5
5
|
import { ILogService } from 'monaco-editor/esm/vs/platform/log/common/log.js';
|
|
@@ -20,7 +20,7 @@ let TextFileSaveParticipant = class TextFileSaveParticipant extends Disposable {
|
|
|
20
20
|
participate(model, context, token) {
|
|
21
21
|
const cts = ( new CancellationTokenSource(token));
|
|
22
22
|
return this.progressService.withProgress({
|
|
23
|
-
title: (
|
|
23
|
+
title: localizeWithPath('vs/workbench/services/textfile/common/textFileSaveParticipant', 'saveParticipants', "Saving '{0}'", model.name),
|
|
24
24
|
location: 15 ,
|
|
25
25
|
cancellable: true,
|
|
26
26
|
delay: model.isDirty() ? 3000 : 5000
|
|
@@ -9,32 +9,26 @@ const colorIdPattern = '^\\w+[.\\w+]*$';
|
|
|
9
9
|
const configurationExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
10
10
|
extensionPoint: 'colors',
|
|
11
11
|
jsonSchema: {
|
|
12
|
-
description:
|
|
12
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.color', 'Contributes extension defined themable colors'),
|
|
13
13
|
type: 'array',
|
|
14
14
|
items: {
|
|
15
15
|
type: 'object',
|
|
16
16
|
properties: {
|
|
17
17
|
id: {
|
|
18
18
|
type: 'string',
|
|
19
|
-
description:
|
|
19
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.color.id', 'The identifier of the themable color'),
|
|
20
20
|
pattern: colorIdPattern,
|
|
21
|
-
patternErrorMessage: (
|
|
22
|
-
'contributes.color.id.format',
|
|
23
|
-
'Identifiers must only contain letters, digits and dots and can not start with a dot'
|
|
24
|
-
)),
|
|
21
|
+
patternErrorMessage: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.color.id.format', 'Identifiers must only contain letters, digits and dots and can not start with a dot'),
|
|
25
22
|
},
|
|
26
23
|
description: {
|
|
27
24
|
type: 'string',
|
|
28
|
-
description:
|
|
25
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.color.description', 'The description of the themable color'),
|
|
29
26
|
},
|
|
30
27
|
defaults: {
|
|
31
28
|
type: 'object',
|
|
32
29
|
properties: {
|
|
33
30
|
light: {
|
|
34
|
-
description: (
|
|
35
|
-
'contributes.defaults.light',
|
|
36
|
-
'The default color for light themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default.'
|
|
37
|
-
)),
|
|
31
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.defaults.light', 'The default color for light themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default.'),
|
|
38
32
|
type: 'string',
|
|
39
33
|
anyOf: [
|
|
40
34
|
colorReferenceSchema,
|
|
@@ -42,10 +36,7 @@ const configurationExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
42
36
|
]
|
|
43
37
|
},
|
|
44
38
|
dark: {
|
|
45
|
-
description: (
|
|
46
|
-
'contributes.defaults.dark',
|
|
47
|
-
'The default color for dark themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default.'
|
|
48
|
-
)),
|
|
39
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.defaults.dark', 'The default color for dark themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default.'),
|
|
49
40
|
type: 'string',
|
|
50
41
|
anyOf: [
|
|
51
42
|
colorReferenceSchema,
|
|
@@ -53,10 +44,7 @@ const configurationExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
53
44
|
]
|
|
54
45
|
},
|
|
55
46
|
highContrast: {
|
|
56
|
-
description: (
|
|
57
|
-
'contributes.defaults.highContrast',
|
|
58
|
-
'The default color for high contrast dark themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default. If not provided, the `dark` color is used as default for high contrast dark themes.'
|
|
59
|
-
)),
|
|
47
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.defaults.highContrast', 'The default color for high contrast dark themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default. If not provided, the `dark` color is used as default for high contrast dark themes.'),
|
|
60
48
|
type: 'string',
|
|
61
49
|
anyOf: [
|
|
62
50
|
colorReferenceSchema,
|
|
@@ -64,10 +52,7 @@ const configurationExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
64
52
|
]
|
|
65
53
|
},
|
|
66
54
|
highContrastLight: {
|
|
67
|
-
description: (
|
|
68
|
-
'contributes.defaults.highContrastLight',
|
|
69
|
-
'The default color for high contrast light themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default. If not provided, the `light` color is used as default for high contrast light themes.'
|
|
70
|
-
)),
|
|
55
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'contributes.defaults.highContrastLight', 'The default color for high contrast light themes. Either a color value in hex (#RRGGBB[AA]) or the identifier of a themable color which provides the default. If not provided, the `light` color is used as default for high contrast light themes.'),
|
|
71
56
|
type: 'string',
|
|
72
57
|
anyOf: [
|
|
73
58
|
colorReferenceSchema,
|
|
@@ -88,7 +73,7 @@ class ColorExtensionPoint {
|
|
|
88
73
|
const extensionValue = extension.value;
|
|
89
74
|
const collector = extension.collector;
|
|
90
75
|
if (!extensionValue || !Array.isArray(extensionValue)) {
|
|
91
|
-
collector.error(
|
|
76
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.colorConfiguration', "'configuration.colors' must be a array"));
|
|
92
77
|
return;
|
|
93
78
|
}
|
|
94
79
|
const parseColorValue = (s, name) => {
|
|
@@ -100,55 +85,33 @@ class ColorExtensionPoint {
|
|
|
100
85
|
return s;
|
|
101
86
|
}
|
|
102
87
|
}
|
|
103
|
-
collector.error((
|
|
104
|
-
'invalid.default.colorType',
|
|
105
|
-
"{0} must be either a color value in hex (#RRGGBB[AA] or #RGB[A]) or the identifier of a themable color which provides the default.",
|
|
106
|
-
name
|
|
107
|
-
)));
|
|
88
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.default.colorType', "{0} must be either a color value in hex (#RRGGBB[AA] or #RGB[A]) or the identifier of a themable color which provides the default.", name));
|
|
108
89
|
return Color.red;
|
|
109
90
|
};
|
|
110
91
|
for (const colorContribution of extensionValue) {
|
|
111
92
|
if (typeof colorContribution.id !== 'string' || colorContribution.id.length === 0) {
|
|
112
|
-
collector.error((
|
|
113
|
-
'invalid.id',
|
|
114
|
-
"'configuration.colors.id' must be defined and can not be empty"
|
|
115
|
-
)));
|
|
93
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.id', "'configuration.colors.id' must be defined and can not be empty"));
|
|
116
94
|
return;
|
|
117
95
|
}
|
|
118
96
|
if (!colorContribution.id.match(colorIdPattern)) {
|
|
119
|
-
collector.error((
|
|
120
|
-
'invalid.id.format',
|
|
121
|
-
"'configuration.colors.id' must only contain letters, digits and dots and can not start with a dot"
|
|
122
|
-
)));
|
|
97
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.id.format', "'configuration.colors.id' must only contain letters, digits and dots and can not start with a dot"));
|
|
123
98
|
return;
|
|
124
99
|
}
|
|
125
100
|
if (typeof colorContribution.description !== 'string' || colorContribution.id.length === 0) {
|
|
126
|
-
collector.error((
|
|
127
|
-
'invalid.description',
|
|
128
|
-
"'configuration.colors.description' must be defined and can not be empty"
|
|
129
|
-
)));
|
|
101
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.description', "'configuration.colors.description' must be defined and can not be empty"));
|
|
130
102
|
return;
|
|
131
103
|
}
|
|
132
104
|
const defaults = colorContribution.defaults;
|
|
133
105
|
if (!defaults || typeof defaults !== 'object' || typeof defaults.light !== 'string' || typeof defaults.dark !== 'string') {
|
|
134
|
-
collector.error((
|
|
135
|
-
'invalid.defaults',
|
|
136
|
-
"'configuration.colors.defaults' must be defined and must contain 'light' and 'dark'"
|
|
137
|
-
)));
|
|
106
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.defaults', "'configuration.colors.defaults' must be defined and must contain 'light' and 'dark'"));
|
|
138
107
|
return;
|
|
139
108
|
}
|
|
140
109
|
if (defaults.highContrast && typeof defaults.highContrast !== 'string') {
|
|
141
|
-
collector.error((
|
|
142
|
-
'invalid.defaults.highContrast',
|
|
143
|
-
"If defined, 'configuration.colors.defaults.highContrast' must be a string."
|
|
144
|
-
)));
|
|
110
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.defaults.highContrast', "If defined, 'configuration.colors.defaults.highContrast' must be a string."));
|
|
145
111
|
return;
|
|
146
112
|
}
|
|
147
113
|
if (defaults.highContrastLight && typeof defaults.highContrastLight !== 'string') {
|
|
148
|
-
collector.error((
|
|
149
|
-
'invalid.defaults.highContrastLight',
|
|
150
|
-
"If defined, 'configuration.colors.defaults.highContrastLight' must be a string."
|
|
151
|
-
)));
|
|
114
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/colorExtensionPoint', 'invalid.defaults.highContrastLight', "If defined, 'configuration.colors.defaults.highContrastLight' must be a string."));
|
|
152
115
|
return;
|
|
153
116
|
}
|
|
154
117
|
colorRegistry.registerColor(colorContribution.id, {
|
|
@@ -1,4 +1,53 @@
|
|
|
1
|
+
import * as nls from 'monaco-editor/esm/vs/nls.js';
|
|
2
|
+
import { ExtensionsRegistry } from '../../extensions/common/extensionsRegistry.js';
|
|
1
3
|
import { Extensions } from 'monaco-editor/esm/vs/platform/theme/common/iconRegistry.js';
|
|
2
4
|
import { Registry } from 'monaco-editor/esm/vs/platform/registry/common/platform.js';
|
|
5
|
+
import { ThemeIcon } from 'monaco-editor/esm/vs/base/common/themables.js';
|
|
3
6
|
const iconRegistry = ( Registry.as(Extensions.IconContribution));
|
|
4
|
-
iconRegistry.getIconReferenceSchema();
|
|
7
|
+
const iconReferenceSchema = iconRegistry.getIconReferenceSchema();
|
|
8
|
+
const iconIdPattern = `^${ThemeIcon.iconNameSegment}(-${ThemeIcon.iconNameSegment})+$`;
|
|
9
|
+
( ExtensionsRegistry.registerExtensionPoint({
|
|
10
|
+
extensionPoint: 'icons',
|
|
11
|
+
jsonSchema: {
|
|
12
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icons', 'Contributes extension defined themable icons'),
|
|
13
|
+
type: 'object',
|
|
14
|
+
propertyNames: {
|
|
15
|
+
pattern: iconIdPattern,
|
|
16
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.id', 'The identifier of the themable icon'),
|
|
17
|
+
patternErrorMessage: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.id.format', 'Identifiers can only contain letters, digits and minuses and need to consist of at least two segments in the form `component-iconname`.'),
|
|
18
|
+
},
|
|
19
|
+
additionalProperties: {
|
|
20
|
+
type: 'object',
|
|
21
|
+
properties: {
|
|
22
|
+
description: {
|
|
23
|
+
type: 'string',
|
|
24
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.description', 'The description of the themable icon'),
|
|
25
|
+
},
|
|
26
|
+
default: {
|
|
27
|
+
anyOf: [
|
|
28
|
+
iconReferenceSchema,
|
|
29
|
+
{
|
|
30
|
+
type: 'object',
|
|
31
|
+
properties: {
|
|
32
|
+
fontPath: {
|
|
33
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.default.fontPath', 'The path of the icon font that defines the icon.'),
|
|
34
|
+
type: 'string'
|
|
35
|
+
},
|
|
36
|
+
fontCharacter: {
|
|
37
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.default.fontCharacter', 'The character for the icon in the icon font.'),
|
|
38
|
+
type: 'string'
|
|
39
|
+
}
|
|
40
|
+
},
|
|
41
|
+
required: ['fontPath', 'fontCharacter'],
|
|
42
|
+
defaultSnippets: [{ body: { fontPath: '${1:myiconfont.woff}', fontCharacter: '${2:\\\\E001}' } }]
|
|
43
|
+
}
|
|
44
|
+
],
|
|
45
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/iconExtensionPoint', 'contributes.icon.default', 'The default of the icon. Either a reference to an extisting ThemeIcon or an icon in an icon font.'),
|
|
46
|
+
}
|
|
47
|
+
},
|
|
48
|
+
required: ['description', 'default'],
|
|
49
|
+
defaultSnippets: [{ body: { description: '${1:my icon}', default: { fontPath: '${2:myiconfont.woff}', fontCharacter: '${3:\\\\E001}' } } }]
|
|
50
|
+
},
|
|
51
|
+
defaultSnippets: [{ body: { '${1:my-icon-id}': { description: '${2:my icon}', default: { fontPath: '${3:myiconfont.woff}', fontCharacter: '${4:\\\\E001}' } } } }]
|
|
52
|
+
}
|
|
53
|
+
}));
|