@codingame/monaco-vscode-api 10.1.1 → 10.1.2

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.
Files changed (343) hide show
  1. package/README.md +137 -332
  2. package/package.json +8 -8
  3. package/vscode/src/vs/base/browser/ui/actionbar/actionViewItems.js +1 -1
  4. package/vscode/src/vs/base/browser/ui/dialog/dialog.js +6 -6
  5. package/vscode/src/vs/base/browser/ui/dropdown/dropdownActionViewItem.js +1 -1
  6. package/vscode/src/vs/base/browser/ui/findinput/findInput.js +1 -1
  7. package/vscode/src/vs/base/browser/ui/findinput/findInputToggles.js +3 -3
  8. package/vscode/src/vs/base/browser/ui/hover/hoverWidget.js +2 -2
  9. package/vscode/src/vs/base/browser/ui/inputbox/inputBox.js +6 -6
  10. package/vscode/src/vs/base/browser/ui/splitview/paneview.js +1 -1
  11. package/vscode/src/vs/base/browser/ui/toolbar/toolbar.js +1 -1
  12. package/vscode/src/vs/base/browser/ui/tree/abstractTree.js +9 -9
  13. package/vscode/src/vs/base/browser/ui/tree/treeDefaults.js +1 -1
  14. package/vscode/src/vs/base/common/actions.js +1 -1
  15. package/vscode/src/vs/base/common/date.js +61 -61
  16. package/vscode/src/vs/base/common/errorMessage.js +6 -15
  17. package/vscode/src/vs/base/common/jsonErrorMessages.js +9 -9
  18. package/vscode/src/vs/base/common/keybindingLabels.js +20 -20
  19. package/vscode/src/vs/base/common/worker/simpleWorkerBootstrap.js +23 -0
  20. package/vscode/src/vs/editor/browser/controller/editContext/native/screenReaderSupport.js +1 -1
  21. package/vscode/src/vs/editor/browser/controller/editContext/screenReaderUtils.js +4 -4
  22. package/vscode/src/vs/editor/browser/controller/editContext/textArea/textAreaEditContext.js +1 -1
  23. package/vscode/src/vs/editor/browser/coreCommands.js +3 -3
  24. package/vscode/src/vs/editor/browser/gpu/viewGpuContext.js +1 -1
  25. package/vscode/src/vs/editor/browser/services/hoverService/hoverWidget.js +1 -1
  26. package/vscode/src/vs/editor/browser/services/hoverService/updatableHoverWidget.js +1 -1
  27. package/vscode/src/vs/editor/browser/widget/codeEditor/codeEditorWidget.js +2 -2
  28. package/vscode/src/vs/editor/browser/widget/diffEditor/commands.js +12 -12
  29. package/vscode/src/vs/editor/browser/widget/diffEditor/diffEditor.contribution.js +5 -5
  30. package/vscode/src/vs/editor/browser/widget/diffEditor/features/hideUnchangedRegionsFeature.js +7 -7
  31. package/vscode/src/vs/editor/browser/widget/diffEditor/registrations.contribution.js +5 -5
  32. package/vscode/src/vs/editor/common/config/editorConfigurationSchema.js +51 -51
  33. package/vscode/src/vs/editor/common/config/editorOptions.js +368 -368
  34. package/vscode/src/vs/editor/common/core/editorColorRegistry.js +71 -71
  35. package/vscode/src/vs/editor/common/languages/modesRegistry.js +1 -1
  36. package/vscode/src/vs/editor/common/model/editStack.js +1 -1
  37. package/vscode/src/vs/editor/common/services/editorWorkerBootstrap.js +3 -8
  38. package/vscode/src/vs/editor/common/standaloneStrings.js +32 -32
  39. package/vscode/src/vs/editor/contrib/anchorSelect/browser/anchorSelect.js +6 -6
  40. package/vscode/src/vs/editor/contrib/bracketMatching/browser/bracketMatching.js +6 -6
  41. package/vscode/src/vs/editor/contrib/caretOperations/browser/caretOperations.js +2 -2
  42. package/vscode/src/vs/editor/contrib/caretOperations/browser/transpose.js +1 -1
  43. package/vscode/src/vs/editor/contrib/clipboard/browser/clipboard.js +17 -17
  44. package/vscode/src/vs/editor/contrib/codeAction/browser/codeAction.js +1 -1
  45. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionCommands.js +28 -28
  46. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionContributions.js +3 -3
  47. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionController.js +3 -3
  48. package/vscode/src/vs/editor/contrib/codeAction/browser/codeActionMenu.js +8 -8
  49. package/vscode/src/vs/editor/contrib/codeAction/browser/lightBulbWidget.js +9 -9
  50. package/vscode/src/vs/editor/contrib/codelens/browser/codelensController.js +2 -2
  51. package/vscode/src/vs/editor/contrib/colorPicker/browser/hoverColorPicker/hoverColorPickerParticipant.js +1 -1
  52. package/vscode/src/vs/editor/contrib/colorPicker/browser/standaloneColorPicker/standaloneColorPickerActions.js +7 -7
  53. package/vscode/src/vs/editor/contrib/comment/browser/comment.js +6 -6
  54. package/vscode/src/vs/editor/contrib/contextmenu/browser/contextmenu.js +10 -10
  55. package/vscode/src/vs/editor/contrib/cursorUndo/browser/cursorUndo.js +2 -2
  56. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteContribution.js +3 -3
  57. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/copyPasteController.js +7 -7
  58. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/defaultProviders.js +8 -8
  59. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorContribution.js +1 -1
  60. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/dropIntoEditorController.js +3 -3
  61. package/vscode/src/vs/editor/contrib/dropOrPasteInto/browser/postEditWidget.js +2 -2
  62. package/vscode/src/vs/editor/contrib/find/browser/findController.js +16 -16
  63. package/vscode/src/vs/editor/contrib/find/browser/findWidget.js +27 -27
  64. package/vscode/src/vs/editor/contrib/fontZoom/browser/fontZoom.js +3 -3
  65. package/vscode/src/vs/editor/contrib/format/browser/formatActions.js +2 -2
  66. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoError.js +8 -8
  67. package/vscode/src/vs/editor/contrib/gotoError/browser/gotoErrorWidget.js +14 -14
  68. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/goToCommands.js +39 -39
  69. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/link/goToDefinitionAtPosition.js +1 -1
  70. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesController.js +3 -3
  71. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesTree.js +3 -3
  72. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/peek/referencesWidget.js +3 -3
  73. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/referencesModel.js +8 -8
  74. package/vscode/src/vs/editor/contrib/gotoSymbol/browser/symbolNavigation.js +3 -3
  75. package/vscode/src/vs/editor/contrib/gpu/browser/gpuActions.js +4 -4
  76. package/vscode/src/vs/editor/contrib/hover/browser/hoverAccessibleViews.js +2 -2
  77. package/vscode/src/vs/editor/contrib/hover/browser/hoverActionIds.js +2 -2
  78. package/vscode/src/vs/editor/contrib/hover/browser/hoverActions.js +23 -23
  79. package/vscode/src/vs/editor/contrib/hover/browser/markdownHoverParticipant.js +9 -9
  80. package/vscode/src/vs/editor/contrib/hover/browser/markerHoverParticipant.js +5 -5
  81. package/vscode/src/vs/editor/contrib/inPlaceReplace/browser/inPlaceReplace.js +2 -2
  82. package/vscode/src/vs/editor/contrib/indentation/browser/indentation.js +20 -20
  83. package/vscode/src/vs/editor/contrib/inlayHints/browser/inlayHintsHover.js +8 -8
  84. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/commands.js +14 -14
  85. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionContextKeys.js +8 -8
  86. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/controller/inlineCompletionsController.js +1 -1
  87. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/hoverParticipant.js +2 -2
  88. package/vscode/src/vs/editor/contrib/inlineCompletions/browser/hintsWidget/inlineCompletionsHintsWidget.js +5 -5
  89. package/vscode/src/vs/editor/contrib/lineSelection/browser/lineSelection.js +1 -1
  90. package/vscode/src/vs/editor/contrib/linesOperations/browser/linesOperations.js +30 -30
  91. package/vscode/src/vs/editor/contrib/linkedEditing/browser/linkedEditing.js +2 -2
  92. package/vscode/src/vs/editor/contrib/links/browser/links.js +10 -10
  93. package/vscode/src/vs/editor/contrib/message/browser/messageController.js +1 -1
  94. package/vscode/src/vs/editor/contrib/multicursor/browser/multicursor.js +22 -22
  95. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHints.js +1 -1
  96. package/vscode/src/vs/editor/contrib/parameterHints/browser/parameterHintsWidget.js +4 -4
  97. package/vscode/src/vs/editor/contrib/peekView/browser/peekView.js +17 -17
  98. package/vscode/src/vs/editor/contrib/placeholderText/browser/placeholderText.contribution.js +1 -1
  99. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoLineQuickAccess.js +5 -5
  100. package/vscode/src/vs/editor/contrib/quickAccess/browser/gotoSymbolQuickAccess.js +32 -32
  101. package/vscode/src/vs/editor/contrib/readOnlyMessage/browser/contribution.js +2 -2
  102. package/vscode/src/vs/editor/contrib/rename/browser/rename.js +11 -11
  103. package/vscode/src/vs/editor/contrib/rename/browser/renameWidget.js +6 -6
  104. package/vscode/src/vs/editor/contrib/smartSelect/browser/smartSelect.js +4 -4
  105. package/vscode/src/vs/editor/contrib/snippet/browser/snippetController2.js +4 -4
  106. package/vscode/src/vs/editor/contrib/snippet/browser/snippetVariables.js +4 -4
  107. package/vscode/src/vs/editor/contrib/stickyScroll/browser/stickyScrollActions.js +11 -11
  108. package/vscode/src/vs/editor/contrib/suggest/browser/suggest.js +8 -8
  109. package/vscode/src/vs/editor/contrib/suggest/browser/suggestController.js +10 -10
  110. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidget.js +16 -16
  111. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetDetails.js +2 -2
  112. package/vscode/src/vs/editor/contrib/suggest/browser/suggestWidgetRenderer.js +2 -2
  113. package/vscode/src/vs/editor/contrib/symbolIcons/browser/symbolIcons.js +33 -33
  114. package/vscode/src/vs/editor/contrib/toggleTabFocusMode/browser/toggleTabFocusMode.js +4 -4
  115. package/vscode/src/vs/editor/contrib/tokenization/browser/tokenization.js +1 -1
  116. package/vscode/src/vs/editor/contrib/unicodeHighlighter/browser/unicodeHighlighter.js +24 -24
  117. package/vscode/src/vs/editor/contrib/unusualLineTerminators/browser/unusualLineTerminators.js +5 -5
  118. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/highlightDecorations.js +9 -9
  119. package/vscode/src/vs/editor/contrib/wordHighlighter/browser/wordHighlighter.js +3 -3
  120. package/vscode/src/vs/editor/contrib/wordOperations/browser/wordOperations.js +1 -1
  121. package/vscode/src/vs/platform/action/common/actionCommonCategories.js +6 -6
  122. package/vscode/src/vs/platform/actionWidget/browser/actionWidget.js +7 -7
  123. package/vscode/src/vs/platform/actions/browser/menuEntryActionViewItem.js +5 -5
  124. package/vscode/src/vs/platform/actions/browser/toolbar.js +2 -2
  125. package/vscode/src/vs/platform/actions/common/menuResetAction.js +1 -1
  126. package/vscode/src/vs/platform/actions/common/menuService.js +2 -2
  127. package/vscode/src/vs/platform/contextkey/browser/contextKeyService.js +1 -1
  128. package/vscode/src/vs/platform/contextkey/common/contextkey.js +11 -11
  129. package/vscode/src/vs/platform/contextkey/common/contextkeys.js +9 -9
  130. package/vscode/src/vs/platform/extensionManagement/common/extensionManagement.js +2 -2
  131. package/vscode/src/vs/platform/extensionManagement/common/extensionNls.js +1 -1
  132. package/vscode/src/vs/platform/extensionManagement/common/extensionsScannerService.js +11 -7
  133. package/vscode/src/vs/platform/extensions/common/extensionValidator.js +20 -20
  134. package/vscode/src/vs/platform/files/browser/htmlFileSystemProvider.js +2 -2
  135. package/vscode/src/vs/platform/files/common/files.js +6 -6
  136. package/vscode/src/vs/platform/history/browser/contextScopedHistoryWidget.js +1 -1
  137. package/vscode/src/vs/platform/keybinding/common/abstractKeybindingService.js +4 -4
  138. package/vscode/src/vs/platform/list/browser/listService.js +27 -27
  139. package/vscode/src/vs/platform/log/common/log.js +6 -6
  140. package/vscode/src/vs/platform/markers/common/markers.js +3 -3
  141. package/vscode/src/vs/platform/request/common/request.js +14 -14
  142. package/vscode/src/vs/platform/theme/common/iconRegistry.js +5 -5
  143. package/vscode/src/vs/platform/theme/common/tokenClassificationRegistry.js +42 -42
  144. package/vscode/src/vs/platform/undoRedo/common/undoRedoService.js +20 -20
  145. package/vscode/src/vs/platform/workspace/common/workspace.js +1 -1
  146. package/vscode/src/vs/workbench/api/common/extHostDiagnostics.js +1 -1
  147. package/vscode/src/vs/workbench/api/common/extHostExtensionService.js +2 -2
  148. package/vscode/src/vs/workbench/api/common/extHostLanguageFeatures.js +2 -2
  149. package/vscode/src/vs/workbench/api/common/extHostLanguageModels.js +1 -1
  150. package/vscode/src/vs/workbench/api/common/extHostLogService.js +1 -1
  151. package/vscode/src/vs/workbench/api/common/extHostNotebook.js +2 -2
  152. package/vscode/src/vs/workbench/api/common/extHostStatusBar.js +2 -2
  153. package/vscode/src/vs/workbench/api/common/extHostTelemetry.js +1 -1
  154. package/vscode/src/vs/workbench/api/common/extHostTerminalService.js +1 -1
  155. package/vscode/src/vs/workbench/api/common/extHostTreeViews.js +1 -1
  156. package/vscode/src/vs/workbench/api/common/extHostTunnelService.js +2 -2
  157. package/vscode/src/vs/workbench/api/common/extHostWorkspace.js +1 -1
  158. package/vscode/src/vs/workbench/api/common/jsonValidationExtensionPoint.js +12 -12
  159. package/vscode/src/vs/workbench/browser/actions/developerActions.js +31 -31
  160. package/vscode/src/vs/workbench/browser/actions/textInputActions.js +6 -6
  161. package/vscode/src/vs/workbench/browser/actions/windowActions.js +25 -25
  162. package/vscode/src/vs/workbench/browser/actions/workspaceCommands.js +4 -4
  163. package/vscode/src/vs/workbench/browser/editor.js +2 -2
  164. package/vscode/src/vs/workbench/browser/parts/editor/binaryDiffEditor.js +1 -1
  165. package/vscode/src/vs/workbench/browser/parts/editor/binaryEditor.js +3 -3
  166. package/vscode/src/vs/workbench/browser/parts/editor/breadcrumbs.js +41 -41
  167. package/vscode/src/vs/workbench/browser/parts/editor/diffEditorCommands.js +6 -6
  168. package/vscode/src/vs/workbench/browser/parts/editor/editorActions.js +131 -131
  169. package/vscode/src/vs/workbench/browser/parts/editor/editorCommands.js +16 -16
  170. package/vscode/src/vs/workbench/browser/parts/editor/editorQuickAccess.js +5 -5
  171. package/vscode/src/vs/workbench/browser/parts/editor/editorStatus.js +61 -61
  172. package/vscode/src/vs/workbench/browser/parts/editor/editorTabsControl.js +2 -2
  173. package/vscode/src/vs/workbench/browser/parts/editor/textCodeEditor.js +1 -1
  174. package/vscode/src/vs/workbench/browser/parts/editor/textDiffEditor.js +3 -3
  175. package/vscode/src/vs/workbench/browser/parts/globalCompositeBar.js +15 -15
  176. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsActions.js +17 -17
  177. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsAlerts.js +3 -3
  178. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCenter.js +6 -6
  179. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsCommands.js +9 -9
  180. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsList.js +6 -6
  181. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsStatus.js +13 -13
  182. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsToasts.js +2 -2
  183. package/vscode/src/vs/workbench/browser/parts/notifications/notificationsViewer.js +4 -4
  184. package/vscode/src/vs/workbench/browser/parts/titlebar/menubarControl.js +18 -18
  185. package/vscode/src/vs/workbench/browser/parts/titlebar/windowTitle.js +2 -2
  186. package/vscode/src/vs/workbench/browser/parts/views/checkbox.js +1 -1
  187. package/vscode/src/vs/workbench/browser/parts/views/treeView.js +7 -7
  188. package/vscode/src/vs/workbench/browser/quickaccess.js +1 -1
  189. package/vscode/src/vs/workbench/browser/workbench.contribution.js +217 -220
  190. package/vscode/src/vs/workbench/common/configuration.js +10 -10
  191. package/vscode/src/vs/workbench/common/contextkeys.js +70 -70
  192. package/vscode/src/vs/workbench/common/editor/diffEditorInput.js +1 -1
  193. package/vscode/src/vs/workbench/common/editor/textEditorModel.js +1 -1
  194. package/vscode/src/vs/workbench/common/editor.js +4 -4
  195. package/vscode/src/vs/workbench/contrib/accessibility/browser/accessibilityConfiguration.js +131 -131
  196. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatActions.js +16 -16
  197. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatConstants.js +1 -1
  198. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatExecuteActions.js +5 -5
  199. package/vscode/src/vs/workbench/contrib/chat/browser/actions/chatTitleActions.js +6 -6
  200. package/vscode/src/vs/workbench/contrib/chat/browser/chat.js +1 -1
  201. package/vscode/src/vs/workbench/contrib/chat/browser/chatAccessibilityProvider.js +9 -9
  202. package/vscode/src/vs/workbench/contrib/chat/browser/chatAgentHover.js +2 -2
  203. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatAttachmentsContentPart.js +8 -8
  204. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCodeCitationContentPart.js +1 -1
  205. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatCommandContentPart.js +1 -1
  206. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatConfirmationContentPart.js +2 -2
  207. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatReferencesContentPart.js +8 -8
  208. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTextEditContentPart.js +2 -2
  209. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatToolInvocationPart.js +1 -1
  210. package/vscode/src/vs/workbench/contrib/chat/browser/chatContentParts/chatTreeContentPart.js +1 -1
  211. package/vscode/src/vs/workbench/contrib/chat/browser/chatDragAndDrop.js +3 -3
  212. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditingService.js +11 -11
  213. package/vscode/src/vs/workbench/contrib/chat/browser/chatEditorInput.js +2 -2
  214. package/vscode/src/vs/workbench/contrib/chat/browser/chatFollowups.js +1 -1
  215. package/vscode/src/vs/workbench/contrib/chat/browser/chatImagePaste.js +1 -1
  216. package/vscode/src/vs/workbench/contrib/chat/browser/chatInlineAnchorWidget.js +5 -5
  217. package/vscode/src/vs/workbench/contrib/chat/browser/chatInputPart.js +12 -12
  218. package/vscode/src/vs/workbench/contrib/chat/browser/chatListRenderer.js +12 -12
  219. package/vscode/src/vs/workbench/contrib/chat/browser/chatWidget.js +1 -1
  220. package/vscode/src/vs/workbench/contrib/chat/browser/codeBlockPart.js +15 -15
  221. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatDynamicVariables.js +2 -2
  222. package/vscode/src/vs/workbench/contrib/chat/browser/contrib/chatInputCompletions.js +1 -1
  223. package/vscode/src/vs/workbench/contrib/chat/common/chatColors.js +6 -6
  224. package/vscode/src/vs/workbench/contrib/chat/common/chatContextKeys.js +21 -21
  225. package/vscode/src/vs/workbench/contrib/chat/common/chatModel.js +3 -3
  226. package/vscode/src/vs/workbench/contrib/codeActions/browser/codeActionsContribution.js +15 -15
  227. package/vscode/src/vs/workbench/contrib/codeActions/common/codeActionsExtensionPoint.js +10 -10
  228. package/vscode/src/vs/workbench/contrib/codeActions/common/documentationExtensionPoint.js +6 -6
  229. package/vscode/src/vs/workbench/contrib/codeEditor/browser/dictation/editorDictation.js +4 -4
  230. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorAccessibilityHelp.js +5 -5
  231. package/vscode/src/vs/workbench/contrib/codeEditor/browser/diffEditorHelper.js +3 -3
  232. package/vscode/src/vs/workbench/contrib/codeEditor/browser/inspectEditorTokens/inspectEditorTokens.js +2 -2
  233. package/vscode/src/vs/workbench/contrib/codeEditor/browser/largeFileOptimizations.js +3 -3
  234. package/vscode/src/vs/workbench/contrib/codeEditor/browser/quickaccess/gotoSymbolQuickAccess.js +6 -6
  235. package/vscode/src/vs/workbench/contrib/codeEditor/browser/saveParticipants.js +4 -4
  236. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMinimap.js +2 -2
  237. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleMultiCursorModifier.js +4 -4
  238. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderControlCharacter.js +2 -2
  239. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleRenderWhitespace.js +2 -2
  240. package/vscode/src/vs/workbench/contrib/codeEditor/browser/toggleWordWrap.js +5 -5
  241. package/vscode/src/vs/workbench/contrib/comments/browser/commentReply.js +4 -4
  242. package/vscode/src/vs/workbench/contrib/comments/browser/commentsAccessibility.js +12 -12
  243. package/vscode/src/vs/workbench/contrib/customEditor/browser/customEditorInput.js +3 -3
  244. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointEditorContribution.js +29 -29
  245. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointWidget.js +14 -14
  246. package/vscode/src/vs/workbench/contrib/debug/browser/breakpointsView.js +65 -65
  247. package/vscode/src/vs/workbench/contrib/debug/browser/callStackEditorContribution.js +2 -2
  248. package/vscode/src/vs/workbench/contrib/debug/browser/debugColors.js +12 -12
  249. package/vscode/src/vs/workbench/contrib/debug/browser/debugCommands.js +34 -34
  250. package/vscode/src/vs/workbench/contrib/debug/browser/debugIcons.js +57 -57
  251. package/vscode/src/vs/workbench/contrib/debug/browser/debugSessionPicker.js +3 -3
  252. package/vscode/src/vs/workbench/contrib/debug/common/debug.js +63 -63
  253. package/vscode/src/vs/workbench/contrib/debug/common/debugModel.js +6 -6
  254. package/vscode/src/vs/workbench/contrib/debug/common/debugSource.js +1 -1
  255. package/vscode/src/vs/workbench/contrib/debug/common/disassemblyViewInput.js +2 -2
  256. package/vscode/src/vs/workbench/contrib/debug/common/loadedScriptsPicker.js +1 -1
  257. package/vscode/src/vs/workbench/contrib/debug/common/replModel.js +1 -1
  258. package/vscode/src/vs/workbench/contrib/extensions/browser/extensionsActions.js +173 -173
  259. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsInput.js +2 -2
  260. package/vscode/src/vs/workbench/contrib/extensions/common/extensionsUtils.js +3 -3
  261. package/vscode/src/vs/workbench/contrib/files/browser/editors/binaryFileEditor.js +1 -1
  262. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileEditor.js +8 -8
  263. package/vscode/src/vs/workbench/contrib/files/browser/editors/textFileSaveErrorHandler.js +18 -18
  264. package/vscode/src/vs/workbench/contrib/files/browser/explorerViewlet.js +14 -14
  265. package/vscode/src/vs/workbench/contrib/files/browser/fileActions.js +84 -84
  266. package/vscode/src/vs/workbench/contrib/files/browser/fileImportExport.js +33 -33
  267. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._configuration.js +52 -52
  268. package/vscode/src/vs/workbench/contrib/files/browser/files.contribution._editorPane.js +2 -2
  269. package/vscode/src/vs/workbench/contrib/files/browser/views/emptyView.js +1 -1
  270. package/vscode/src/vs/workbench/contrib/files/browser/views/explorerView.js +8 -8
  271. package/vscode/src/vs/workbench/contrib/files/browser/workspaceWatcher.js +4 -4
  272. package/vscode/src/vs/workbench/contrib/files/common/dirtyFilesIndicator.js +1 -1
  273. package/vscode/src/vs/workbench/contrib/folding/browser/folding.contribution.js +3 -3
  274. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsMultiple.js +20 -20
  275. package/vscode/src/vs/workbench/contrib/format/browser/formatActionsNone.js +4 -4
  276. package/vscode/src/vs/workbench/contrib/format/browser/formatModified.js +1 -1
  277. package/vscode/src/vs/workbench/contrib/inlayHints/browser/inlayHintsAccessibilty.js +4 -4
  278. package/vscode/src/vs/workbench/contrib/inlineChat/browser/inlineChatActions.js +19 -19
  279. package/vscode/src/vs/workbench/contrib/inlineChat/common/inlineChat.js +41 -41
  280. package/vscode/src/vs/workbench/contrib/list/browser/listResizeColumnAction.js +2 -2
  281. package/vscode/src/vs/workbench/contrib/list/browser/tableColumnResizeQuickPick.js +5 -5
  282. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInput.js +1 -1
  283. package/vscode/src/vs/workbench/contrib/mergeEditor/browser/mergeEditorInputModel.js +29 -29
  284. package/vscode/src/vs/workbench/contrib/mergeEditor/common/mergeEditor.js +8 -8
  285. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/icons.contribution.js +1 -1
  286. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/multiDiffEditorInput.js +2 -2
  287. package/vscode/src/vs/workbench/contrib/multiDiffEditor/browser/scmMultiDiffSourceResolver.js +1 -1
  288. package/vscode/src/vs/workbench/contrib/notebook/browser/contrib/cellStatusBar/executionStatusBarItemController.js +6 -6
  289. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOperations.js +2 -2
  290. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/cellOutputActions.js +3 -3
  291. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatContext.js +5 -5
  292. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/chat/notebookChatController.js +2 -2
  293. package/vscode/src/vs/workbench/contrib/notebook/browser/controller/foldingController.js +3 -3
  294. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditor.js +1 -1
  295. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffEditorBrowser.js +5 -5
  296. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookDiffList.js +1 -1
  297. package/vscode/src/vs/workbench/contrib/notebook/browser/diff/notebookMultiDiffEditor.js +3 -3
  298. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookAccessibilityProvider.js +4 -4
  299. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditor.js +8 -8
  300. package/vscode/src/vs/workbench/contrib/notebook/browser/notebookEditorWidget.js +24 -24
  301. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/cellEditorOptions.js +4 -4
  302. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/foldedCellHint.js +2 -2
  303. package/vscode/src/vs/workbench/contrib/notebook/browser/view/cellParts/markupCell.js +2 -2
  304. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/backLayerWebView.js +4 -4
  305. package/vscode/src/vs/workbench/contrib/notebook/browser/view/renderers/cellRenderer.js +1 -1
  306. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelQuickPickStrategy.js +15 -15
  307. package/vscode/src/vs/workbench/contrib/notebook/browser/viewParts/notebookKernelView.js +2 -2
  308. package/vscode/src/vs/workbench/contrib/notebook/common/notebookEditorInput.js +2 -2
  309. package/vscode/src/vs/workbench/contrib/preferences/browser/preferencesIcons.js +12 -12
  310. package/vscode/src/vs/workbench/contrib/scm/browser/dirtyDiffSwitcher.js +2 -2
  311. package/vscode/src/vs/workbench/contrib/scm/browser/dirtydiffDecorator.js +23 -23
  312. package/vscode/src/vs/workbench/contrib/scm/browser/scmHistory.js +13 -13
  313. package/vscode/src/vs/workbench/contrib/search/browser/searchActionsFind.js +10 -10
  314. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/abstractSnippetsActions.js +1 -1
  315. package/vscode/src/vs/workbench/contrib/snippets/browser/commands/fileTemplateSnippets.js +2 -2
  316. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetCompletionProvider.js +3 -3
  317. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsFile.js +3 -3
  318. package/vscode/src/vs/workbench/contrib/snippets/browser/snippetsService.js +9 -9
  319. package/vscode/src/vs/workbench/contrib/speech/common/speechService.js +29 -29
  320. package/vscode/src/vs/workbench/contrib/terminal/browser/terminalEditorInput.js +4 -4
  321. package/vscode/src/vs/workbench/contrib/terminal/common/terminal.js +7 -7
  322. package/vscode/src/vs/workbench/contrib/terminal/common/terminalContextKey.js +16 -16
  323. package/vscode/src/vs/workbench/contrib/testing/common/testResult.js +2 -2
  324. package/vscode/src/vs/workbench/contrib/url/browser/trustedDomains.js +6 -6
  325. package/vscode/src/vs/workbench/contrib/webview/browser/webview.contribution.js +3 -3
  326. package/vscode/src/vs/workbench/contrib/webviewPanel/browser/webviewEditor.js +1 -1
  327. package/vscode/src/vs/workbench/contrib/workspace/common/workspace.js +2 -2
  328. package/vscode/src/vs/workbench/services/auxiliaryWindow/browser/auxiliaryWindowService.js +5 -5
  329. package/vscode/src/vs/workbench/services/configurationResolver/common/variableResolver.js +15 -15
  330. package/vscode/src/vs/workbench/services/extensionManagement/common/extensionManagement.js +1 -1
  331. package/vscode/src/vs/workbench/services/extensionRecommendations/common/workspaceExtensionsConfig.js +6 -6
  332. package/vscode/src/vs/workbench/services/filesConfiguration/common/filesConfigurationService.js +5 -5
  333. package/vscode/src/vs/workbench/services/language/common/languageService.js +28 -28
  334. package/vscode/src/vs/workbench/services/preferences/browser/keybindingsEditorModel.js +7 -7
  335. package/vscode/src/vs/workbench/services/search/common/queryBuilder.js +1 -1
  336. package/vscode/src/vs/workbench/services/textMate/common/TMGrammars.js +9 -9
  337. package/vscode/src/vs/workbench/services/textfile/common/textFileEditorModel.js +3 -3
  338. package/vscode/src/vs/workbench/services/themes/common/colorExtensionPoint.js +22 -22
  339. package/vscode/src/vs/workbench/services/themes/common/colorThemeData.js +8 -8
  340. package/vscode/src/vs/workbench/services/themes/common/iconExtensionPoint.js +13 -13
  341. package/vscode/src/vs/workbench/services/userDataProfile/common/userDataProfile.js +3 -3
  342. package/vscode/src/vs/workbench/services/views/browser/viewsService.js +7 -7
  343. package/workers/editor.worker.js +1 -1
package/README.md CHANGED
@@ -1,6 +1,8 @@
1
1
  # @codingame/monaco-vscode-api · [![monthly downloads](https://img.shields.io/npm/dm/@codingame/monaco-vscode-api)](https://www.npmjs.com/package/@codingame/monaco-vscode-api) [![npm version](https://img.shields.io/npm/v/@codingame/monaco-vscode-api.svg?style=flat)](https://www.npmjs.com/package/@codingame/monaco-vscode-api) [![PRs welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg)](https://github.com/codingame/monaco-vscode-api/pulls)
2
2
 
3
- [NPM module](https://www.npmjs.com/) that allows to use every part of VSCode, including the monaco editor
3
+ This [NPM module](https://www.npmjs.com/) allows to integrate full VSCode functionality into your `monaco-editor`.
4
+
5
+ For more information, please checkout the project's [wiki](https://github.com/CodinGame/monaco-vscode-api/wiki).
4
6
 
5
7
  ## Installation
6
8
 
@@ -15,189 +17,164 @@ npm install -D @types/vscode
15
17
  `@codingame/monaco-vscode-editor-api` is installed as an alias to `monaco-editor` because it provides the same api as the official `monaco-editor`
16
18
 
17
19
  # Usage
20
+ If you are just starting with `monaco-editor` and `monaco-vscode-api` you may find helpful the [Getting Started Guide](https://github.com/CodinGame/monaco-vscode-api/wiki/Getting-started-guide) in the wiki.
21
+ ## Monaco service override
18
22
 
19
- ## Monaco standalone services
23
+ Most of VSCode functionality implemented as "services", e.g.
24
+ - theme service, providing support for VSCode themes
25
+ - languages service, providing support for different language features.
20
26
 
21
- `monaco-editor`, as well as this library by default, uses `standalone` version or the VSCode services, which are much simpler than the one used in VSCode.
27
+ By default, Monaco uses a simplified versions of the VSCode services, called `standalone` services.
28
+ This package allows to
29
+ 1) override them with fully-functional alternatives from VSCode
30
+ 2) add new services that were not included in Monaco
22
31
 
23
- You may want to provide your custom implementations of them. To do so, you can use the `initialize` method from `vscode/services`.
24
- Also, monaco-editor doesn't provide types for them, so this library exports them.
32
+ Here is an example usage that overrides Monaco default configuration with VSCode json-based settings:
33
+ ```typescript
34
+ // default monaco-editor imports
35
+ import * as monaco from 'monaco-editor';
36
+ import editorWorker from 'monaco-editor/esm/vs/editor/editor.worker?worker';
25
37
 
26
- Example:
38
+ // utilities to override Monaco services
39
+ import { initialize } from 'vscode/services'
40
+ import getConfigurationServiceOverride, { updateUserConfiguration } from '@codingame/monaco-vscode-configuration-service-override'
27
41
 
28
- ```typescript
29
- import { INotificationService, initialize } from 'vscode/services'
42
+ window.MonacoEnvironment = {
43
+ getWorker: (_moduleId, _label) => new editorWorker()
44
+ }
30
45
 
31
- class MyCustomNotificationService implements INotificationService { ... }
46
+ // overriding Monaco service with VSCode
32
47
  await initialize({
33
- get [INotificationService.toString()] () {
34
- return new MyCustomNotificationService(...)
35
- }
36
- })
48
+ ...getConfigurationServiceOverride(),
49
+ });
50
+
51
+ // json config like in vscode settings.json
52
+ updateUserConfiguration(`{
53
+ "editor.fontSize": 30,
54
+ "editor.lineHeight": 30,
55
+ "editor.fontFamily": "monospace",
56
+ "editor.fontWeight": "bold",
57
+ "editor.letterSpacing": 0,
58
+ }`)
59
+
60
+ // creating an editor with VSCode configuration
61
+ monaco.editor.create(document.getElementById('editor')!, {
62
+ value: "Editor with VSCode config and large bold fonts",
63
+ });
37
64
  ```
65
+ > [!NOTE]
66
+ > `initialize` can only be called once (and it should be called BEFORE creating your first editor).
67
+
38
68
 
39
- Additionally, several packages that include the VSCode version of some services (with some glue to make it work with monaco) are published:
69
+ Each `get<service-name>ServiceOverride` contains the service and some glue to make VSCode service work with Monaco.
40
70
 
41
- - **Base** (included by default): `@codingame/monaco-vscode-base-service-override`
71
+ ### List of service overrides
72
+ Some basic service overrides are coming with this package as dependencies:
73
+ - **Base**: `@codingame/monaco-vscode-base-service-override`
42
74
  - Contains some general-use services that are mandatory to most of the other features
43
- - **Monarch**:
44
- - When textmate and theme service overrides are not used, it allows to restore some standalone features (Token inspection and toggle high contrast commands)
45
- - **Host** (included by default): `@codingame/monaco-vscode-host-service-override`
75
+ - **Host**: `@codingame/monaco-vscode-host-service-override`
46
76
  - Interaction with the host/browser (shutdown veto, focus/active management, window opening, fullscreen...)
47
- - **Extensions** (included by default): `@codingame/monaco-vscode-extensions-service-override`
77
+ - **Extensions**: `@codingame/monaco-vscode-extensions-service-override`
48
78
  - Support for VSCode extensions.
49
79
  - A worker configuration can be provided to it:
50
80
  - Then, the webworker extension host will be available, allowing to run extensions in a worker which runs in an iframe
51
- - **Files** (included by default): `@codingame/monaco-vscode-files-service-override`
81
+ - **Files**: `@codingame/monaco-vscode-files-service-override`
52
82
  - It adds the overlay filesystem for `file://` files, but also adds the support for lazy loaded extension files. It adds separate memory user files (e.g. config, keybindings), cache files and log files
53
83
  - It supports adding overlay filesystems for `file://` files
54
- - **QuickAccess** (included by default): `@codingame/monaco-vscode-quickaccess-service-override`
84
+ - **QuickAccess**: `@codingame/monaco-vscode-quickaccess-service-override`
55
85
  - Enables the quickaccess menu in the editor (press F1 or ctrl+shift+p)
56
- - **Notifications**: `@codingame/monaco-vscode-notifications-service-override`
57
- - This services enables vscode notifications you usually find in the bottom right corner
58
- - **Dialogs**: `@codingame/monaco-vscode-dialogs-service-override`
59
- - Enable VSCode modal dialogs. It allows users to select an action to do. Those actions are exposed to the VSCode API. Additionally, this service can be used by the language client to delegate questions to the user
60
- - **Model**: `@codingame/monaco-vscode-model-service-override`
61
- - This service creates and takes care of model references. For example:
62
- - Create model from filesystem if content is unknown
63
- - Count references
64
- - Destroy models when they are no longer used
65
- - **Editor**: `@codingame/monaco-vscode-editor-service-override`
66
- - Enable editor support. This is usually needed when working with the language server protocol. Without enabling the editor service, it will only be able to resolve the currently open model (only internal file references will work)
67
- - Is exclusive with the `views` and `workbench` services. Do not use more than 1 services at the same time
68
- - **Views**: `@codingame/monaco-vscode-views-service-override`
69
- - Enable full views support
70
- - Is exclusive with the `editor` and `workbench` services. Do not use more than 1 service at the same time
71
- - **Configuration**: `@codingame/monaco-vscode-configuration-service-override`
72
- - Allows to change the configuration of not only the editors, but every part of VSCode. The language client for instance uses it to send the requested configuration to the server. The default configuration service already allows to change the configuration. This service overrides makes it rely on a user configuration file (with json schema, overridable by language including all VSCode features)
73
- - **Keybindings**: `@codingame/monaco-vscode-keybindings-service-override`
74
- - Enables platform specific keybindings and make it rely on a user definded keybindings configuration (if available)
75
- - **Languages**: `@codingame/monaco-vscode-languages-service-override`
76
- - Enable language support. It's like the standalone service with 2 differences:
77
- - It handle the language extension point (getting languages from VSCode extensions)
78
- - It triggers the `onLanguage:${language}` event (to load VSCode extension listening to those events)
79
- - **Textmate**: `@codingame/monaco-vscode-textmate-service-override`
80
- - Allows to use textmate grammars. Depends on *themes* service. VSCode extensions use textmate grammars exclusively for highlighting. Once this is enabled monarch grammars can no longer be loaded by monaco-editor
81
- - **TreeSitter**: `@codingame/monaco-vscode-treesitter-service-override`
82
- - Experimental service which allows to use treesitter grammars, currently only optionally support typescript.
83
- - **Themes**: `@codingame/monaco-vscode-theme-service-override`
84
- - Allows to use VSCode themes
85
- - **Snippets**: `@codingame/monaco-vscode-snippets-service-override`
86
- - Add snippet extension point (register VSCode extension snippets)
87
- - **Debug**: `@codingame/monaco-vscode-debug-service-override`
88
- - Activate debugging support
89
- - **Preferences**: `@codingame/monaco-vscode-preferences-service-override`
90
- - Allow to read and write preferences
91
- - **Output**: `@codingame/monaco-vscode-output-service-override`
92
- - Output panel support. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
93
- - **Terminal**: `@codingame/monaco-vscode-terminal-service-override`
94
- - Terminal panel support. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
95
- - **Search**: `@codingame/monaco-vscode-search-service-override`
96
- - search panel support. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
97
- - **Markers**: `@codingame/monaco-vscode-markers-service-override`
98
- - It adds the problems panel tab. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
99
- - **SCM**: `@codingame/monaco-vscode-scm-service-override`
100
- - It adds the SCM API that can be used to implement source control. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
101
- - **Testing**: `@codingame/monaco-vscode-testing-service-override`
102
- - It adds the Tests API. *Hint*: It makes more sense to enable it when *Views* or *Workbench* service are used
103
- - **Language detection worker**: `@codingame/monaco-vscode-language-detection-worker-service-override`
104
- - When opening an untitled model or a file without extension or if VSCode is unable to guess the language simply by the file extension or by reading the first line. Then it will use tensorflow in a worker to try to guess the most probable language (only the open source model can be used)
105
- - **Storage**: `@codingame/monaco-vscode-storage-service-override`
106
- - Define your own storage or use the default BrowserStorageService. The storage service is used in many places either as a cache or as a user preference store. For instance:
107
- - Current loaded theme is stored in there to be loaded faster on start
108
- - Every panel/view positions are stored in there
109
- - **LifeCycle**: `@codingame/monaco-vscode-lifecycle-service-override`
110
- - Allow other services to veto a page reload (for instance when not all open files are saved)
111
- - **Remote agent**: `@codingame/monaco-vscode-remote-agent-service-override`
112
- - Connect to a remote VSCode agent and have access to:
113
- - The remote filesystem
114
- - The remote file search
115
- - Running terminals
116
- - Running VSCode extensions (not web-compatible)
117
- - and probably more?
118
-
119
- Refer to [vscode_server.md](./docs/vscode_server.md) for the server part
120
- - **Accessibility**: `@codingame/monaco-vscode-accessibility-service-override`
121
- - Register accessibility helpers and signals
122
- - **Workspace trust**: `@codingame/monaco-vscode-workspace-trust-service-override`
123
- - Ask user it they trust the current workspace, disable some features if not
124
- - **Extension Gallery**: `@codingame/monaco-vscode-extension-gallery-service-override`
125
- - Support for the VSCode marketplace, it allows to install extensions from the marketplace
126
- - **Chat**: `@codingame/monaco-vscode-chat-service-override`
127
- - Support for chat and inline chat features
128
- - **Notebook**: `@codingame/monaco-vscode-notebook-service-override`
129
- - Support for Jupyter notebooks
130
- - **Welcome**: `@codingame/monaco-vscode-welcome-service-override`
131
- - Support for [viewsWelcome contribution point](https://code.visualstudio.com/api/references/contribution-points#contributes.viewsWelcome). *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
132
- - **Walkthrough**: `@codingame/monaco-vscode-walkthrough-service-override`
133
- - Getting Started page and support for [walkthrough contribution point](https://code.visualstudio.com/api/references/contribution-points#contributes.walkthroughs). *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
134
- - **User data profile**: `@codingame/monaco-vscode-user-data-profile-service-override`
135
- - User profiles support
136
- - **User data sync**: `@codingame/monaco-vscode-user-data-sync-service-override`
137
- - Support for user data sync. ⚠️ It can't really be used as it relies on a [closed source backend from microsoft](https://code.visualstudio.com/docs/editor/settings-sync#_can-i-use-a-different-backend-or-service-for-settings-sync) for the moment ⚠️
138
- - **Ai**: `@codingame/monaco-vscode-ai-service-override`
139
- - Ai support for the ai extension api (RelatedInformation/EmbeddingVector)
140
- - **Task**: `@codingame/monaco-vscode-task-service-override`
141
- - Task management
142
- - **Outline**: `@codingame/monaco-vscode-outline-service-override`
143
- - Support for the outline view. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
144
- - **Timeline**: `@codingame/monaco-vscode-timeline-service-override`
145
- - Support for the timeline view. *Hint*: It only makes sense to enable it when *Views* or *Workbench* service are used
146
- - **Workbench**: `@codingame/monaco-vscode-workbench-service-override`
147
- - Allows to render the full workbench layout. Is exclusive with the `editor` and `views` service. Do not use more than 1 service at the same time
148
- - **Comments**
149
- - Enables comments extension api
150
- - **Edit-sessions**
151
- - Enable cloudchanges
152
- - **Emmet**
153
- - Enables the `triggerExpansionOnTab` command for the emmet default extension
154
- - **Interactive**
155
- - Interactive notebooks
156
- - **Issue**
157
- - Issue reporting
158
- - **Multi diff editor**
159
- - Multi diff editor support (<https://code.visualstudio.com/updates/v1_85#_multifile-diff-editor>)
160
- - **Performance**
161
- - Performance monitoring
162
- - **Relauncher**
163
- - Detects changes that require a reload (like settings change) and prompt the user for it
164
- - **Share**
165
- - Enables the share extension api
166
- - **Survey**
167
- - Survey/feedback support
168
- - **Update**
169
- - Update detection, release notes...
170
- - **Localization**
171
- - Register callbacks to update the display language from the VSCode UI (either from the `Set Display Language` command or from the extension gallery extension packs)
172
- - **Secret Storage**
173
- - Storage of secrets for extensions, will store by default in-memory. You can pass a custom implementation as part of the workbench construction options when initializing monaco services (under `secretStorageProvider`)
174
-
175
- Usage:
86
+
87
+ However, most of the services are separated into different modules, so they can be imported as required. You can find a full list of services in the [corresponding wiki page](https://github.com/CodinGame/monaco-vscode-api/wiki/List-of-service-overrides).
88
+
89
+
90
+ ### Default vscode extensions
91
+
92
+ VSCode uses a bunch of default extensions. Most of them are used to load the default languages and grammars (see <https://github.com/microsoft/vscode/tree/main/extensions>).
93
+
94
+ This library bundles and publishes them as separate packages, which allows to use the ones you want. To use an extension, just install the corresponding package and import it in the beginning of the file:
176
95
 
177
96
  ```typescript
178
- import * as vscode from 'vscode'
97
+ import '@codingame/monaco-vscode-javascript-default-extension'
98
+ import '@codingame/monaco-vscode-json-default-extension'
99
+ ...
100
+ ```
101
+
102
+ Here is an example of usage of default VSCode theme extension with theme service override:
103
+
104
+ ```typescript
105
+ // importing default VSCode theme extension
106
+ import "@codingame/monaco-vscode-theme-defaults-default-extension";
107
+
108
+ // default monaco-editor imports
109
+ import * as monaco from 'monaco-editor';
110
+ import editorWorker from 'monaco-editor/esm/vs/editor/editor.worker?worker';
111
+
112
+ // utilities to override Monaco services
179
113
  import { initialize } from 'vscode/services'
180
- import getEditorServiceOverride from '@codingame/monaco-vscode-editor-service-override'
181
- import getConfigurationServiceOverride, { updateUserConfiguration, configurationRegistry } from '@codingame/monaco-vscode-configuration-service-override'
114
+ import getThemeServiceOverride from "@codingame/monaco-vscode-theme-service-override";
115
+
116
+ window.MonacoEnvironment = {
117
+ getWorker: function (_moduleId, _label) {
118
+ return new editorWorker();
119
+ }
120
+ }
182
121
 
122
+ // overriding Monaco service with VSCode
183
123
  await initialize({
184
- ...getEditorServiceOverride((model, input, sideBySide) => {
185
- // Open a new editor here and return it
186
- // It will be called when for instance the user ctrl+click on an import
187
- }),
188
- ...getConfigurationServiceOverride()
189
- })
124
+ ...getThemeServiceOverride(),
125
+ });
190
126
 
191
- updateUserConfiguration(`{
192
- "editor.fontSize": 12,
193
- "[java]": {
194
- "editor.fontSize": 15,
195
- }
196
- }`)
127
+ // creating an editor with VSCode theme
128
+ monaco.editor.create(document.getElementById('editor')!, {
129
+ value: "Editor with VSCode Theme Support",
130
+ });
197
131
  ```
198
132
 
199
- ### Troubleshoot
200
- `initialize` can only be called once (and it should be called BEFORE creating your first editor).
133
+ See [the full list of ported default extensions](https://www.npmjs.com/search?q=%40codingame%2Fmonaco-vscode-*-default-extension)
134
+
135
+ ### Loading vsix file
136
+
137
+ VSCode extensions are bundled as vsix files.
138
+ This library publishes a rollup plugin (vite-compatible) that allows to load a vsix file.
139
+
140
+ - rollup/vite config:
141
+
142
+ ```typescript
143
+ import vsixPlugin from '@codingame/monaco-vscode-rollup-vsix-plugin'
144
+ ...
145
+ plugins: [
146
+ ...,
147
+ vsixPlugin()
148
+ ]
149
+ ```
150
+
151
+ - code:
152
+
153
+ ```typescript
154
+ import './extension.vsix'
155
+ ```
156
+
157
+ ### Localization
158
+
159
+ This library also offers the possibility to localize vscode and the extensions in the supported languages. To do so, import one of the following packages before anything else:
160
+
161
+ - `@codingame/monaco-vscode-language-pack-cs`
162
+ - `@codingame/monaco-vscode-language-pack-de`
163
+ - `@codingame/monaco-vscode-language-pack-es`
164
+ - `@codingame/monaco-vscode-language-pack-fr`
165
+ - `@codingame/monaco-vscode-language-pack-it`
166
+ - `@codingame/monaco-vscode-language-pack-ja`
167
+ - `@codingame/monaco-vscode-language-pack-ko`
168
+ - `@codingame/monaco-vscode-language-pack-pl`
169
+ - `@codingame/monaco-vscode-language-pack-pt-br`
170
+ - `@codingame/monaco-vscode-language-pack-qps-ploc`
171
+ - `@codingame/monaco-vscode-language-pack-ru`
172
+ - `@codingame/monaco-vscode-language-pack-tr`
173
+ - `@codingame/monaco-vscode-language-pack-zh-hans`
174
+ - `@codingame/monaco-vscode-language-pack-zh-hant`
175
+
176
+ ⚠️ The language pack should be imported and loaded BEFORE anything else from this library is loaded. Otherwise, some translations would be missing and an error would be displayed in the console. ⚠️
177
+
201
178
 
202
179
  ## Model creation
203
180
 
@@ -302,63 +279,6 @@ vscode.languages.registerCompletionItemProvider(...)
302
279
 
303
280
  ```
304
281
 
305
- ### Default vscode extensions
306
-
307
- VSCode uses a bunch of default extensions. Most of them are used to load the default languages and grammars (see <https://github.com/microsoft/vscode/tree/main/extensions>).
308
-
309
- This library bundles and publishes them and allows to import the ones you want:
310
-
311
- ```typescript
312
- import '@codingame/monaco-vscode-javascript-default-extension'
313
- import '@codingame/monaco-vscode-json-default-extension'
314
- ...
315
- ```
316
-
317
- See [the full list](https://www.npmjs.com/search?q=%40codingame%2Fmonaco-vscode-*-default-extension)
318
-
319
- ### Loading vsix file
320
-
321
- VSCode extensions are bundled as vsix files.
322
- This library publishes a rollup plugin (vite-compatible) that allows to load a vsix file.
323
-
324
- - rollup/vite config:
325
-
326
- ```typescript
327
- import vsixPlugin from '@codingame/monaco-vscode-rollup-vsix-plugin'
328
- ...
329
- plugins: [
330
- ...,
331
- vsixPlugin()
332
- ]
333
- ```
334
-
335
- - code:
336
-
337
- ```typescript
338
- import './extension.vsix'
339
- ```
340
-
341
- ### Localization
342
-
343
- This library also offers the possibility to localize vscode and the extensions in the supported languages. To do so, import one of the following packages before anything else:
344
-
345
- - `@codingame/monaco-vscode-language-pack-cs`
346
- - `@codingame/monaco-vscode-language-pack-de`
347
- - `@codingame/monaco-vscode-language-pack-es`
348
- - `@codingame/monaco-vscode-language-pack-fr`
349
- - `@codingame/monaco-vscode-language-pack-it`
350
- - `@codingame/monaco-vscode-language-pack-ja`
351
- - `@codingame/monaco-vscode-language-pack-ko`
352
- - `@codingame/monaco-vscode-language-pack-pl`
353
- - `@codingame/monaco-vscode-language-pack-pt-br`
354
- - `@codingame/monaco-vscode-language-pack-qps-ploc`
355
- - `@codingame/monaco-vscode-language-pack-ru`
356
- - `@codingame/monaco-vscode-language-pack-tr`
357
- - `@codingame/monaco-vscode-language-pack-zh-hans`
358
- - `@codingame/monaco-vscode-language-pack-zh-hant`
359
-
360
- ⚠️ The language pack should be imported and loaded BEFORE anything else from this library is loaded. Otherwise, some translations would be missing and an error would be displayed in the console. ⚠️
361
-
362
282
  ### Demo
363
283
 
364
284
  Try it out on <https://monaco-vscode-api.netlify.app/>
@@ -400,126 +320,11 @@ npm run start:debugServer
400
320
 
401
321
  #### Remote agent
402
322
 
403
- [See vscode_server.md](./docs/vscode_server.md)
323
+ See the [VSCode Server](https://github.com/CodinGame/monaco-vscode-api/wiki/How-to-install-and-use-VSCode-server-with-monaco‐vscode‐api) wiki page.
404
324
 
405
325
  ## Troubleshooting
406
326
 
407
- ### Duplicate versions
408
-
409
- Many packages are published with the same version, and almost all of them depend on the `@codingame/monaco-vscode-api` main package (with strict version range).
410
-
411
- It is VERY important that only a single version of ALL the packages is installed, otherwise weird things can happen.
412
-
413
- You can check that `npm list vscode` only lists a single version.
414
-
415
- ### If you use Webpack
416
-
417
- #### monaco-editor-webpack-plugin
418
-
419
- Starting from v2, [monaco-editor-webpack-plugin](https://www.npmjs.com/package/monaco-editor-webpack-plugin) can't be used
420
-
421
- Here's the alternative for each options:
422
-
423
- - `filename`: it can be configured at the webpack level directly
424
- - `publicPath`: it can be configured at the webpack level or by hands when redistering the worker in `window.MonacoEnvironment`.
425
- - `languages`: Import VSCode language extensions (`@codingame/monaco-vscode-xxx-default-extension`) or (`@codingame/@codingame/monaco-vscode-standalone-*`). Please obey: VSCode extensions can only be used if `themes` and `textmate` service overrides are configured and monaco languages can only be used if those two services are not configured (see [here](#monaco-standalone-services) for further details).
426
- - `features`: With this lib, you can't remove editor features.
427
- - `globalAPI`: you can set `window.MonacoEnvironment.globalAPI` to true
428
-
429
- #### exclude assets from loaders
430
-
431
- Webpack makes all file go through all matching loaders. This libraries need to load a lot of internals resources, including HTML, svg and javascript files (for default extension codes).
432
-
433
- We need webpack to let those file untouched:
434
- - the babel loader shouldn't transform extension javascript files
435
- - the html loader shouldn't transform the worker extension host iframe html
436
- - ...
437
-
438
- Fortunately, all the assets are loaded via the `new URL('asset.extension', import.meta.url)` syntax, and webpack provide a way to exclude the file loaded that way: `dependency: { not: ['url'] }` see https://webpack.js.org/guides/asset-modules/
439
-
440
- ### If you use Vite
441
-
442
- #### Asset management
443
-
444
- This library uses a lot the `new URL('asset.extension', import.meta.url)` syntax which [is supported by vite](https://vitejs.dev/guide/assets.html#new-url-url-import-meta-url)
445
-
446
- While it works great in `build` mode (because rollup is used), there is some issues in `watch` mode:
447
-
448
- - `import.meta.url` is not replaced while creating bundles, it is an issue when the syntax is used inside a dependency
449
- - Vite is still trying to inject/transform javascript assets files, breaking the code by injecting ESM imports in commonjs files
450
-
451
- There are workarounds for both:
452
-
453
- - We can help vite by replacing `import.meta.url` by the original module path:
454
-
455
- ```typescript
456
- import importMetaUrlPlugin from '@codingame/esbuild-import-meta-url-plugin'
457
-
458
- {
459
- ...
460
- optimizeDeps: {
461
- esbuildOptions: {
462
- plugins: [importMetaUrlPlugin]
463
- }
464
- }
465
- }
466
- ```
467
-
468
- #### Commonjs dependencies
469
-
470
- Some dependencies are published only as CommonJS, and vite fails by default to work with them when used in a worker.
471
-
472
- Those libraries are concerned:
473
- - `vscode-textmate`
474
- - `vscode-oniguruma` (textmate dependency)
475
- - `@vscode/vscode-languagedetection`
476
-
477
- If you use the corresponding service override, you can force vite to optimize them, which will make vite properly handle commonjs, by adding them in the vite config in `optimizeDeps.include`:
478
-
479
- ```typescript
480
- export default defineConfig({
481
- optimizeDeps: {
482
- include: [
483
- 'vscode-textmate',
484
- 'vscode-oniguruma',
485
- '@vscode/vscode-languagedetection'
486
- ]
487
- }
488
- })
489
- ```
490
-
491
-
492
-
493
- ### If using Angular and getting `Not allowed to load local resource:` errors
494
-
495
- *The short version*: set up and use a custom webpack config file and add this under `module`:
496
-
497
- ```typescript
498
- parser: {
499
- javascript: {
500
- url: true,
501
- }
502
- }
503
- ```
504
-
505
- See [this issue](https://github.com/CodinGame/monaco-vscode-api/issues/186) or this [StackOverflow answer](https://stackoverflow.com/a/75252098) for more details, and [this discussion](https://github.com/angular/angular-cli/issues/24617) for more context.
506
-
507
- ### The typescript language features extension is not providing project-wide intellisense
508
-
509
- The typescript language features extensions requires [SharedArrayBuffer](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/SharedArrayBuffer) to enable project wide intellisense or only a per-file intellisense is provided.
510
-
511
- It requires [crossOriginIsolated](https://developer.mozilla.org/en-US/docs/Web/API/crossOriginIsolated) to be true, which requires assets files to be servers with some specific headers:
512
-
513
- - [Cross-Origin-Opener-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Opener-Policy): `same-origin`
514
- - [Cross-Origin-Embedder-Policy](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Cross-Origin-Embedder-Policy): `require-corp` or `credentialless`
515
-
516
- At least thoses files should have the headers:
517
-
518
- - the main page html
519
- - the worker extension host iframe html: `webWorkerExtensionHostIframe.html`
520
- - the worker extension host worker javascript: `extensionHost.worker.js`
521
-
522
- If adding those headers is not an options, you can have a look at <https://github.com/gzuidhof/coi-serviceworker>, but only if you are not using webviews as it introduces problems then.
327
+ If something doesn't work, make sure to check out the [Troubleshooting](https://github.com/CodinGame/monaco-vscode-api/wiki/Troubleshooting) wiki page.
523
328
 
524
329
  ## History
525
330
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@codingame/monaco-vscode-api",
3
- "version": "10.1.1",
3
+ "version": "10.1.2",
4
4
  "description": "VSCode public API plugged on the monaco editor",
5
5
  "keywords": [],
6
6
  "author": {
@@ -100,12 +100,12 @@
100
100
  "@vscode/iconv-lite-umd": "0.7.0",
101
101
  "jschardet": "3.1.3",
102
102
  "marked": "~14.0.0",
103
- "@codingame/monaco-vscode-files-service-override": "10.1.1",
104
- "@codingame/monaco-vscode-extensions-service-override": "10.1.1",
105
- "@codingame/monaco-vscode-quickaccess-service-override": "10.1.1",
106
- "@codingame/monaco-vscode-environment-service-override": "10.1.1",
107
- "@codingame/monaco-vscode-layout-service-override": "10.1.1",
108
- "@codingame/monaco-vscode-host-service-override": "10.1.1",
109
- "@codingame/monaco-vscode-base-service-override": "10.1.1"
103
+ "@codingame/monaco-vscode-quickaccess-service-override": "10.1.2",
104
+ "@codingame/monaco-vscode-files-service-override": "10.1.2",
105
+ "@codingame/monaco-vscode-extensions-service-override": "10.1.2",
106
+ "@codingame/monaco-vscode-environment-service-override": "10.1.2",
107
+ "@codingame/monaco-vscode-layout-service-override": "10.1.2",
108
+ "@codingame/monaco-vscode-host-service-override": "10.1.2",
109
+ "@codingame/monaco-vscode-base-service-override": "10.1.2"
110
110
  }
111
111
  }
@@ -258,7 +258,7 @@ class ActionViewItem extends BaseActionViewItem {
258
258
  else if (!this.options.label && this.action.label && this.options.icon) {
259
259
  title = this.action.label;
260
260
  if (this.options.keybinding) {
261
- title = ( localize(5035, "{0} ({1})", title, this.options.keybinding));
261
+ title = ( localize(5011, "{0} ({1})", title, this.options.keybinding));
262
262
  }
263
263
  }
264
264
  return title ?? undefined;
@@ -29,7 +29,7 @@ class Dialog extends Disposable {
29
29
  this.buttons = buttons;
30
30
  }
31
31
  else if (!this.options.disableDefaultAction) {
32
- this.buttons = [( localize(9621, "OK"))];
32
+ this.buttons = [( localize(9624, "OK"))];
33
33
  }
34
34
  else {
35
35
  this.buttons = [];
@@ -93,16 +93,16 @@ class Dialog extends Disposable {
93
93
  this.applyStyles();
94
94
  }
95
95
  getIconAriaLabel() {
96
- let typeLabel = ( localize(9622, 'Info'));
96
+ let typeLabel = ( localize(9625, 'Info'));
97
97
  switch (this.options.type) {
98
98
  case 'error':
99
- typeLabel = ( localize(9623, 'Error'));
99
+ typeLabel = ( localize(9626, 'Error'));
100
100
  break;
101
101
  case 'warning':
102
- typeLabel = ( localize(9624, 'Warning'));
102
+ typeLabel = ( localize(9627, 'Warning'));
103
103
  break;
104
104
  case 'pending':
105
- typeLabel = ( localize(9625, 'In Progress'));
105
+ typeLabel = ( localize(9628, 'In Progress'));
106
106
  break;
107
107
  }
108
108
  return typeLabel;
@@ -263,7 +263,7 @@ class Dialog extends Disposable {
263
263
  }
264
264
  if (!this.options.disableCloseAction) {
265
265
  const actionBar = this._register(( (new ActionBar(this.toolbarContainer, {}))));
266
- const action = this._register(( (new Action('dialog.close', ( localize(9626, "Close Dialog")), ThemeIcon.asClassName(Codicon.dialogClose), true, async () => {
266
+ const action = this._register(( (new Action('dialog.close', ( localize(9629, "Close Dialog")), ThemeIcon.asClassName(Codicon.dialogClose), true, async () => {
267
267
  resolve({
268
268
  button: this.options.cancelId || 0,
269
269
  checkboxChecked: this.checkbox ? this.checkbox.checked : undefined
@@ -128,7 +128,7 @@ class ActionWithDropdownActionViewItem extends ActionViewItem {
128
128
  const separator = h('div.action-dropdown-item-separator', [h('div', {})]).root;
129
129
  separator.classList.toggle('prominent', menuActionClassNames.includes('prominent'));
130
130
  append(this.element, separator);
131
- this.dropdownMenuActionViewItem = this._register(( (new DropdownMenuActionViewItem(this._register(( (new Action('dropdownAction', ( localize(7087, "More Actions...")))))), menuActionsProvider, this.contextMenuProvider, { classNames: ['dropdown', ...ThemeIcon.asClassNameArray(Codicon.dropDownButton), ...menuActionClassNames], hoverDelegate: this.options.hoverDelegate }))));
131
+ this.dropdownMenuActionViewItem = this._register(( (new DropdownMenuActionViewItem(this._register(( (new Action('dropdownAction', ( localize(7613, "More Actions...")))))), menuActionsProvider, this.contextMenuProvider, { classNames: ['dropdown', ...ThemeIcon.asClassNameArray(Codicon.dropDownButton), ...menuActionClassNames], hoverDelegate: this.options.hoverDelegate }))));
132
132
  this.dropdownMenuActionViewItem.render(this.element);
133
133
  this._register(addDisposableListener(this.element, EventType.KEY_DOWN, e => {
134
134
  if (menuActionsProvider.getActions().length === 0) {
@@ -7,7 +7,7 @@ import './findInput.css.js';
7
7
  import { localize } from '../../../../nls.js';
8
8
  import { MutableDisposable, DisposableStore } from '../../../common/lifecycle.js';
9
9
  import { createInstantHoverDelegate } from '../hover/hoverDelegateFactory.js';
10
- const NLS_DEFAULT_LABEL = ( localize(9960, "input"));
10
+ const NLS_DEFAULT_LABEL = ( localize(10072, "input"));
11
11
  class FindInput extends Widget {
12
12
  static { this.OPTION_CHANGE = 'optionChange'; }
13
13
  constructor(parent, contextViewProvider, options) {
@@ -2,9 +2,9 @@ import { getDefaultHoverDelegate } from '../hover/hoverDelegateFactory.js';
2
2
  import { Toggle } from '../toggle/toggle.js';
3
3
  import { Codicon } from '../../../common/codicons.js';
4
4
  import { localize } from '../../../../nls.js';
5
- const NLS_CASE_SENSITIVE_TOGGLE_LABEL = ( localize(9985, "Match Case"));
6
- const NLS_WHOLE_WORD_TOGGLE_LABEL = ( localize(9986, "Match Whole Word"));
7
- const NLS_REGEX_TOGGLE_LABEL = ( localize(9987, "Use Regular Expression"));
5
+ const NLS_CASE_SENSITIVE_TOGGLE_LABEL = ( localize(9976, "Match Case"));
6
+ const NLS_WHOLE_WORD_TOGGLE_LABEL = ( localize(9977, "Match Whole Word"));
7
+ const NLS_REGEX_TOGGLE_LABEL = ( localize(9978, "Use Regular Expression"));
8
8
  class CaseSensitiveToggle extends Toggle {
9
9
  constructor(opts) {
10
10
  super({
@@ -62,8 +62,8 @@ class HoverAction extends Disposable {
62
62
  }
63
63
  }
64
64
  function getHoverAccessibleViewHint(shouldHaveHint, keybinding) {
65
- return shouldHaveHint && keybinding ? ( localize(9958, "Inspect this in the accessible view with {0}.", keybinding)) : shouldHaveHint ? ( localize(
66
- 9959,
65
+ return shouldHaveHint && keybinding ? ( localize(9995, "Inspect this in the accessible view with {0}.", keybinding)) : shouldHaveHint ? ( localize(
66
+ 9996,
67
67
  "Inspect this in the accessible view via the command Open Accessible View which is currently not triggerable via keybinding."
68
68
  )) : '';
69
69
  }