@codingame/monaco-vscode-api 1.83.1 → 1.83.3-next.0
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 +12268 -1070
- 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/platform/workspaces/common/workspaces.js +15 -15
- 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 +50 -52
- package/vscode/src/vs/workbench/api/browser/mainThreadDocumentsAndEditors.js +58 -69
- 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/mainThreadFileSystem.js +23 -23
- 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 +16 -20
- 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/extHostCommands.js +59 -65
- package/vscode/src/vs/workbench/api/common/extHostConsoleForwarder.js +8 -8
- 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 +150 -222
- 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/extHostSCM.js +54 -58
- 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 +55 -57
- package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +28 -28
- package/vscode/src/vs/workbench/api/common/extHostTypeConverters.js +265 -277
- package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +2 -7
- package/vscode/src/vs/workbench/api/common/extensionHostMain.js +17 -19
- package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +9 -34
- package/vscode/src/vs/workbench/api/worker/extHostExtensionService.js +5 -5
- 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 +27 -33
- package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +2 -2
- package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +19 -32
- 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/bulkEdit/browser/bulkFileEdits.js +58 -74
- 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/commentThreadZoneWidget.js +19 -19
- 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 +31 -40
- 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 +20 -20
- 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/mapping.js +73 -126
- 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 +60 -99
- 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 +88 -96
- 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/browser/webWorkerExtensionHost.js +27 -29
- package/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.js +104 -141
- package/vscode/src/vs/workbench/services/extensions/common/extensionHostManager.js +35 -39
- package/vscode/src/vs/workbench/services/extensions/common/extensionRunningLocationTracker.js +25 -25
- 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/keybinding/common/macLinuxKeyboardMapper.js +30 -32
- package/vscode/src/vs/workbench/services/language/common/languageService.js +23 -98
- package/vscode/src/vs/workbench/services/remote/common/tunnelModel.js +83 -95
- 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 +32 -32
- 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/untitled/common/untitledTextEditorService.js +16 -16
- 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
- package/vscode/src/vs/workbench/services/workingCopy/common/workingCopyBackupService.js +32 -42
|
@@ -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) {
|
|
@@ -46,23 +46,23 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
46
46
|
this.labelService = labelService;
|
|
47
47
|
this.pathService = pathService;
|
|
48
48
|
this.extensionService = extensionService;
|
|
49
|
-
this._onDidChangeContent = this._register((
|
|
49
|
+
this._onDidChangeContent = this._register(( new Emitter()));
|
|
50
50
|
this.onDidChangeContent = this._onDidChangeContent.event;
|
|
51
|
-
this._onDidResolve = this._register((
|
|
51
|
+
this._onDidResolve = this._register(( new Emitter()));
|
|
52
52
|
this.onDidResolve = this._onDidResolve.event;
|
|
53
|
-
this._onDidChangeDirty = this._register((
|
|
53
|
+
this._onDidChangeDirty = this._register(( new Emitter()));
|
|
54
54
|
this.onDidChangeDirty = this._onDidChangeDirty.event;
|
|
55
|
-
this._onDidSaveError = this._register((
|
|
55
|
+
this._onDidSaveError = this._register(( new Emitter()));
|
|
56
56
|
this.onDidSaveError = this._onDidSaveError.event;
|
|
57
|
-
this._onDidSave = this._register((
|
|
57
|
+
this._onDidSave = this._register(( new Emitter()));
|
|
58
58
|
this.onDidSave = this._onDidSave.event;
|
|
59
|
-
this._onDidRevert = this._register((
|
|
59
|
+
this._onDidRevert = this._register(( new Emitter()));
|
|
60
60
|
this.onDidRevert = this._onDidRevert.event;
|
|
61
|
-
this._onDidChangeEncoding = this._register((
|
|
61
|
+
this._onDidChangeEncoding = this._register(( new Emitter()));
|
|
62
62
|
this.onDidChangeEncoding = this._onDidChangeEncoding.event;
|
|
63
|
-
this._onDidChangeOrphaned = this._register((
|
|
63
|
+
this._onDidChangeOrphaned = this._register(( new Emitter()));
|
|
64
64
|
this.onDidChangeOrphaned = this._onDidChangeOrphaned.event;
|
|
65
|
-
this._onDidChangeReadonly = this._register((
|
|
65
|
+
this._onDidChangeReadonly = this._register(( new Emitter()));
|
|
66
66
|
this.onDidChangeReadonly = this._onDidChangeReadonly.event;
|
|
67
67
|
this.typeId = NO_TYPE_ID;
|
|
68
68
|
this.capabilities = 0 ;
|
|
@@ -72,7 +72,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
72
72
|
this.ignoreDirtyOnModelContentChange = false;
|
|
73
73
|
this.ignoreSaveFromSaveParticipants = false;
|
|
74
74
|
this.lastModelContentChangeFromUndoRedo = undefined;
|
|
75
|
-
this.saveSequentializer = (
|
|
75
|
+
this.saveSequentializer = ( new TaskSequentializer());
|
|
76
76
|
this.dirty = false;
|
|
77
77
|
this.inConflictMode = false;
|
|
78
78
|
this.inOrphanMode = false;
|
|
@@ -494,7 +494,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
494
494
|
if (this.isResolved()) {
|
|
495
495
|
this.textEditorModel.pushStackElement();
|
|
496
496
|
}
|
|
497
|
-
const saveCancellation = (
|
|
497
|
+
const saveCancellation = ( new CancellationTokenSource());
|
|
498
498
|
return this.saveSequentializer.run(versionId, (async () => {
|
|
499
499
|
if (this.isResolved() && !options.skipSaveParticipants) {
|
|
500
500
|
try {
|
|
@@ -515,7 +515,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
515
515
|
}
|
|
516
516
|
}
|
|
517
517
|
catch (error) {
|
|
518
|
-
this.logService.error(`[text file model] runSaveParticipants(${versionId}) - resulted in an error: ${(
|
|
518
|
+
this.logService.error(`[text file model] runSaveParticipants(${versionId}) - resulted in an error: ${( error.toString())}`, ( this.resource.toString()));
|
|
519
519
|
}
|
|
520
520
|
}
|
|
521
521
|
if (saveCancellation.token.isCancellationRequested) {
|
|
@@ -565,7 +565,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
565
565
|
this._onDidSave.fire({ reason: options.reason, stat, source: options.source });
|
|
566
566
|
}
|
|
567
567
|
handleSaveError(error, versionId, options) {
|
|
568
|
-
(options.ignoreErrorHandler ? this.logService.trace : this.logService.error).apply(this.logService, [`[text file model] handleSaveError(${versionId}) - exit - resulted in a save error: ${(
|
|
568
|
+
(options.ignoreErrorHandler ? this.logService.trace : this.logService.error).apply(this.logService, [`[text file model] handleSaveError(${versionId}) - exit - resulted in a save error: ${( error.toString())}`, ( this.resource.toString())]);
|
|
569
569
|
if (options.ignoreErrorHandler) {
|
|
570
570
|
throw error;
|
|
571
571
|
}
|
|
@@ -637,7 +637,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
637
637
|
this.trace('onMaybeShouldChangeEncoding() - ignoring because model is dirty');
|
|
638
638
|
return;
|
|
639
639
|
}
|
|
640
|
-
this.logService.info(`Adjusting encoding based on configured language override to '${encoding}' for ${(
|
|
640
|
+
this.logService.info(`Adjusting encoding based on configured language override to '${encoding}' for ${( this.resource.toString(true))}.`);
|
|
641
641
|
return this.setEncodingInternal(encoding, 1 );
|
|
642
642
|
}
|
|
643
643
|
setEncoding(encoding, mode) {
|
|
@@ -686,7 +686,7 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
686
686
|
return this.preferredEncoding || this.contentEncoding;
|
|
687
687
|
}
|
|
688
688
|
trace(msg) {
|
|
689
|
-
this.logService.trace(`[text file model] ${msg}`, (
|
|
689
|
+
this.logService.trace(`[text file model] ${msg}`, ( this.resource.toString()));
|
|
690
690
|
}
|
|
691
691
|
isResolved() {
|
|
692
692
|
return !!this.textEditorModel;
|
|
@@ -702,19 +702,19 @@ let TextFileEditorModel = class TextFileEditorModel extends BaseTextEditorModel
|
|
|
702
702
|
super.dispose();
|
|
703
703
|
}
|
|
704
704
|
};
|
|
705
|
-
TextFileEditorModel = TextFileEditorModel_1 = (
|
|
706
|
-
(
|
|
707
|
-
(
|
|
708
|
-
(
|
|
709
|
-
(
|
|
710
|
-
(
|
|
711
|
-
(
|
|
712
|
-
(
|
|
713
|
-
(
|
|
714
|
-
(
|
|
715
|
-
(
|
|
716
|
-
(
|
|
717
|
-
(
|
|
718
|
-
(
|
|
719
|
-
], TextFileEditorModel))
|
|
705
|
+
TextFileEditorModel = TextFileEditorModel_1 = ( __decorate([
|
|
706
|
+
( __param(3, ILanguageService)),
|
|
707
|
+
( __param(4, IModelService)),
|
|
708
|
+
( __param(5, IFileService)),
|
|
709
|
+
( __param(6, ITextFileService)),
|
|
710
|
+
( __param(7, IWorkingCopyBackupService)),
|
|
711
|
+
( __param(8, ILogService)),
|
|
712
|
+
( __param(9, IWorkingCopyService)),
|
|
713
|
+
( __param(10, IFilesConfigurationService)),
|
|
714
|
+
( __param(11, ILabelService)),
|
|
715
|
+
( __param(12, ILanguageDetectionService)),
|
|
716
|
+
( __param(13, IAccessibilityService)),
|
|
717
|
+
( __param(14, IPathService)),
|
|
718
|
+
( __param(15, IExtensionService))
|
|
719
|
+
], TextFileEditorModel));
|
|
720
720
|
export { TextFileEditorModel };
|
|
@@ -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
|
+
}));
|
|
@@ -1,45 +1,30 @@
|
|
|
1
1
|
import * as nls from 'monaco-editor/esm/vs/nls.js';
|
|
2
2
|
import { ExtensionsRegistry } from '../../extensions/common/extensionsRegistry.js';
|
|
3
|
-
import {
|
|
3
|
+
import { typeAndModifierIdPattern, getTokenClassificationRegistry } from '../../../../platform/theme/common/tokenClassificationRegistry.js';
|
|
4
4
|
const tokenClassificationRegistry = getTokenClassificationRegistry();
|
|
5
5
|
const tokenTypeExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
6
6
|
extensionPoint: 'semanticTokenTypes',
|
|
7
7
|
jsonSchema: {
|
|
8
|
-
description:
|
|
8
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenTypes', 'Contributes semantic token types.'),
|
|
9
9
|
type: 'array',
|
|
10
10
|
items: {
|
|
11
11
|
type: 'object',
|
|
12
12
|
properties: {
|
|
13
13
|
id: {
|
|
14
14
|
type: 'string',
|
|
15
|
-
description: (
|
|
16
|
-
'contributes.semanticTokenTypes.id',
|
|
17
|
-
'The identifier of the semantic token type'
|
|
18
|
-
)),
|
|
15
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenTypes.id', 'The identifier of the semantic token type'),
|
|
19
16
|
pattern: typeAndModifierIdPattern,
|
|
20
|
-
patternErrorMessage: (
|
|
21
|
-
'contributes.semanticTokenTypes.id.format',
|
|
22
|
-
'Identifiers should be in the form letterOrDigit[_-letterOrDigit]*'
|
|
23
|
-
)),
|
|
17
|
+
patternErrorMessage: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenTypes.id.format', 'Identifiers should be in the form letterOrDigit[_-letterOrDigit]*'),
|
|
24
18
|
},
|
|
25
19
|
superType: {
|
|
26
20
|
type: 'string',
|
|
27
|
-
description: (
|
|
28
|
-
'contributes.semanticTokenTypes.superType',
|
|
29
|
-
'The super type of the semantic token type'
|
|
30
|
-
)),
|
|
21
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenTypes.superType', 'The super type of the semantic token type'),
|
|
31
22
|
pattern: typeAndModifierIdPattern,
|
|
32
|
-
patternErrorMessage: (
|
|
33
|
-
'contributes.semanticTokenTypes.superType.format',
|
|
34
|
-
'Super types should be in the form letterOrDigit[_-letterOrDigit]*'
|
|
35
|
-
)),
|
|
23
|
+
patternErrorMessage: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenTypes.superType.format', 'Super types should be in the form letterOrDigit[_-letterOrDigit]*'),
|
|
36
24
|
},
|
|
37
25
|
description: {
|
|
38
26
|
type: 'string',
|
|
39
|
-
description: (
|
|
40
|
-
'contributes.color.description',
|
|
41
|
-
'The description of the semantic token type'
|
|
42
|
-
)),
|
|
27
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.color.description', 'The description of the semantic token type'),
|
|
43
28
|
}
|
|
44
29
|
}
|
|
45
30
|
}
|
|
@@ -48,31 +33,19 @@ const tokenTypeExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
48
33
|
const tokenModifierExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
49
34
|
extensionPoint: 'semanticTokenModifiers',
|
|
50
35
|
jsonSchema: {
|
|
51
|
-
description: (
|
|
52
|
-
'contributes.semanticTokenModifiers',
|
|
53
|
-
'Contributes semantic token modifiers.'
|
|
54
|
-
)),
|
|
36
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenModifiers', 'Contributes semantic token modifiers.'),
|
|
55
37
|
type: 'array',
|
|
56
38
|
items: {
|
|
57
39
|
type: 'object',
|
|
58
40
|
properties: {
|
|
59
41
|
id: {
|
|
60
42
|
type: 'string',
|
|
61
|
-
description: (
|
|
62
|
-
'contributes.semanticTokenModifiers.id',
|
|
63
|
-
'The identifier of the semantic token modifier'
|
|
64
|
-
)),
|
|
43
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenModifiers.id', 'The identifier of the semantic token modifier'),
|
|
65
44
|
pattern: typeAndModifierIdPattern,
|
|
66
|
-
patternErrorMessage: (
|
|
67
|
-
'contributes.semanticTokenModifiers.id.format',
|
|
68
|
-
'Identifiers should be in the form letterOrDigit[_-letterOrDigit]*'
|
|
69
|
-
))
|
|
45
|
+
patternErrorMessage: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenModifiers.id.format', 'Identifiers should be in the form letterOrDigit[_-letterOrDigit]*')
|
|
70
46
|
},
|
|
71
47
|
description: {
|
|
72
|
-
description: (
|
|
73
|
-
'contributes.semanticTokenModifiers.description',
|
|
74
|
-
'The description of the semantic token modifier'
|
|
75
|
-
))
|
|
48
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenModifiers.description', 'The description of the semantic token modifier')
|
|
76
49
|
}
|
|
77
50
|
}
|
|
78
51
|
}
|
|
@@ -81,26 +54,17 @@ const tokenModifierExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
|
81
54
|
const tokenStyleDefaultsExtPoint = ( ExtensionsRegistry.registerExtensionPoint({
|
|
82
55
|
extensionPoint: 'semanticTokenScopes',
|
|
83
56
|
jsonSchema: {
|
|
84
|
-
description: (
|
|
85
|
-
'contributes.semanticTokenScopes',
|
|
86
|
-
'Contributes semantic token scope maps.'
|
|
87
|
-
)),
|
|
57
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenScopes', 'Contributes semantic token scope maps.'),
|
|
88
58
|
type: 'array',
|
|
89
59
|
items: {
|
|
90
60
|
type: 'object',
|
|
91
61
|
properties: {
|
|
92
62
|
language: {
|
|
93
|
-
description: (
|
|
94
|
-
'contributes.semanticTokenScopes.languages',
|
|
95
|
-
'Lists the languge for which the defaults are.'
|
|
96
|
-
)),
|
|
63
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenScopes.languages', 'Lists the languge for which the defaults are.'),
|
|
97
64
|
type: 'string'
|
|
98
65
|
},
|
|
99
66
|
scopes: {
|
|
100
|
-
description: (
|
|
101
|
-
'contributes.semanticTokenScopes.scopes',
|
|
102
|
-
'Maps a semantic token (described by semantic token selector) to one or more textMate scopes used to represent that token.'
|
|
103
|
-
)),
|
|
67
|
+
description: nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'contributes.semanticTokenScopes.scopes', 'Maps a semantic token (described by semantic token selector) to one or more textMate scopes used to represent that token.'),
|
|
104
68
|
type: 'object',
|
|
105
69
|
additionalProperties: {
|
|
106
70
|
type: 'array',
|
|
@@ -117,36 +81,20 @@ class TokenClassificationExtensionPoints {
|
|
|
117
81
|
constructor() {
|
|
118
82
|
function validateTypeOrModifier(contribution, extensionPoint, collector) {
|
|
119
83
|
if (typeof contribution.id !== 'string' || contribution.id.length === 0) {
|
|
120
|
-
collector.error((
|
|
121
|
-
'invalid.id',
|
|
122
|
-
"'configuration.{0}.id' must be defined and can not be empty",
|
|
123
|
-
extensionPoint
|
|
124
|
-
)));
|
|
84
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.id', "'configuration.{0}.id' must be defined and can not be empty", extensionPoint));
|
|
125
85
|
return false;
|
|
126
86
|
}
|
|
127
87
|
if (!contribution.id.match(typeAndModifierIdPattern)) {
|
|
128
|
-
collector.error((
|
|
129
|
-
'invalid.id.format',
|
|
130
|
-
"'configuration.{0}.id' must follow the pattern letterOrDigit[-_letterOrDigit]*",
|
|
131
|
-
extensionPoint
|
|
132
|
-
)));
|
|
88
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.id.format', "'configuration.{0}.id' must follow the pattern letterOrDigit[-_letterOrDigit]*", extensionPoint));
|
|
133
89
|
return false;
|
|
134
90
|
}
|
|
135
91
|
const superType = contribution.superType;
|
|
136
92
|
if (superType && !superType.match(typeAndModifierIdPattern)) {
|
|
137
|
-
collector.error((
|
|
138
|
-
'invalid.superType.format',
|
|
139
|
-
"'configuration.{0}.superType' must follow the pattern letterOrDigit[-_letterOrDigit]*",
|
|
140
|
-
extensionPoint
|
|
141
|
-
)));
|
|
93
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.superType.format', "'configuration.{0}.superType' must follow the pattern letterOrDigit[-_letterOrDigit]*", extensionPoint));
|
|
142
94
|
return false;
|
|
143
95
|
}
|
|
144
96
|
if (typeof contribution.description !== 'string' || contribution.id.length === 0) {
|
|
145
|
-
collector.error((
|
|
146
|
-
'invalid.description',
|
|
147
|
-
"'configuration.{0}.description' must be defined and can not be empty",
|
|
148
|
-
extensionPoint
|
|
149
|
-
)));
|
|
97
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.description', "'configuration.{0}.description' must be defined and can not be empty", extensionPoint));
|
|
150
98
|
return false;
|
|
151
99
|
}
|
|
152
100
|
return true;
|
|
@@ -156,10 +104,7 @@ class TokenClassificationExtensionPoints {
|
|
|
156
104
|
const extensionValue = extension.value;
|
|
157
105
|
const collector = extension.collector;
|
|
158
106
|
if (!extensionValue || !Array.isArray(extensionValue)) {
|
|
159
|
-
collector.error((
|
|
160
|
-
'invalid.semanticTokenTypeConfiguration',
|
|
161
|
-
"'configuration.semanticTokenType' must be an array"
|
|
162
|
-
)));
|
|
107
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenTypeConfiguration', "'configuration.semanticTokenType' must be an array"));
|
|
163
108
|
return;
|
|
164
109
|
}
|
|
165
110
|
for (const contribution of extensionValue) {
|
|
@@ -180,10 +125,7 @@ class TokenClassificationExtensionPoints {
|
|
|
180
125
|
const extensionValue = extension.value;
|
|
181
126
|
const collector = extension.collector;
|
|
182
127
|
if (!extensionValue || !Array.isArray(extensionValue)) {
|
|
183
|
-
collector.error((
|
|
184
|
-
'invalid.semanticTokenModifierConfiguration',
|
|
185
|
-
"'configuration.semanticTokenModifier' must be an array"
|
|
186
|
-
)));
|
|
128
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenModifierConfiguration', "'configuration.semanticTokenModifier' must be an array"));
|
|
187
129
|
return;
|
|
188
130
|
}
|
|
189
131
|
for (const contribution of extensionValue) {
|
|
@@ -204,34 +146,22 @@ class TokenClassificationExtensionPoints {
|
|
|
204
146
|
const extensionValue = extension.value;
|
|
205
147
|
const collector = extension.collector;
|
|
206
148
|
if (!extensionValue || !Array.isArray(extensionValue)) {
|
|
207
|
-
collector.error((
|
|
208
|
-
'invalid.semanticTokenScopes.configuration',
|
|
209
|
-
"'configuration.semanticTokenScopes' must be an array"
|
|
210
|
-
)));
|
|
149
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenScopes.configuration', "'configuration.semanticTokenScopes' must be an array"));
|
|
211
150
|
return;
|
|
212
151
|
}
|
|
213
152
|
for (const contribution of extensionValue) {
|
|
214
153
|
if (contribution.language && typeof contribution.language !== 'string') {
|
|
215
|
-
collector.error((
|
|
216
|
-
'invalid.semanticTokenScopes.language',
|
|
217
|
-
"'configuration.semanticTokenScopes.language' must be a string"
|
|
218
|
-
)));
|
|
154
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenScopes.language', "'configuration.semanticTokenScopes.language' must be a string"));
|
|
219
155
|
continue;
|
|
220
156
|
}
|
|
221
157
|
if (!contribution.scopes || typeof contribution.scopes !== 'object') {
|
|
222
|
-
collector.error((
|
|
223
|
-
'invalid.semanticTokenScopes.scopes',
|
|
224
|
-
"'configuration.semanticTokenScopes.scopes' must be defined as an object"
|
|
225
|
-
)));
|
|
158
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenScopes.scopes', "'configuration.semanticTokenScopes.scopes' must be defined as an object"));
|
|
226
159
|
continue;
|
|
227
160
|
}
|
|
228
161
|
for (const selectorString in contribution.scopes) {
|
|
229
162
|
const tmScopes = contribution.scopes[selectorString];
|
|
230
163
|
if (!Array.isArray(tmScopes) || ( tmScopes.some(l => typeof l !== 'string'))) {
|
|
231
|
-
collector.error((
|
|
232
|
-
'invalid.semanticTokenScopes.scopes.value',
|
|
233
|
-
"'configuration.semanticTokenScopes.scopes' values must be an array of strings"
|
|
234
|
-
)));
|
|
164
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenScopes.scopes.value', "'configuration.semanticTokenScopes.scopes' values must be an array of strings"));
|
|
235
165
|
continue;
|
|
236
166
|
}
|
|
237
167
|
try {
|
|
@@ -239,11 +169,7 @@ class TokenClassificationExtensionPoints {
|
|
|
239
169
|
tokenClassificationRegistry.registerTokenStyleDefault(selector, { scopesToProbe: ( tmScopes.map(s => s.split(' '))) });
|
|
240
170
|
}
|
|
241
171
|
catch (e) {
|
|
242
|
-
collector.error((
|
|
243
|
-
'invalid.semanticTokenScopes.scopes.selector',
|
|
244
|
-
"configuration.semanticTokenScopes.scopes': Problems parsing selector {0}.",
|
|
245
|
-
selectorString
|
|
246
|
-
)));
|
|
172
|
+
collector.error(nls.localizeWithPath('vs/workbench/services/themes/common/tokenClassificationExtensionPoint', 'invalid.semanticTokenScopes.scopes.selector', "configuration.semanticTokenScopes.scopes': Problems parsing selector {0}.", selectorString));
|
|
247
173
|
}
|
|
248
174
|
}
|
|
249
175
|
}
|