NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #3518 most downloaded on npm
A browser based code editor
Last release 10 days ago
24 Sep 2026
Ships unpredictably
gaps range from 8 days to 5 months
Nearly every release is documented
notes for 58 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
945 releases · first in 2016
brings back a way to get resolved editor options - #1734
Contributions to monaco-editor:
Contributions to monaco-languages:
fixes issue with default value of autoIndent - #1726
autoIndent - #1726One column per quarter.
fixes issue with .d.ts file in the ESM distribution - #1729
wordBasedSuggestions) - #1746Contributions to monaco-editor:
Contributions to monaco-languages:
It is now possible to pass in a dimension in the editor construction options in order to avoid a synchronous layout.
dimension in the editor construction options in order to avoid a synchronous layout.multiCursorPaste: define how to distribute paste in case of multi-cursormatchBrackets: control if enclosing brackets should be highlightedgetConfiguration() is replaced by getRawOptions(), which returns the passed in editor options.Contributions to monaco-editor:
Contributions to monaco-editor-webpack-plugin:
Contributions to monaco-languages:
Contributions to monaco-typescript:
fixes 2 issues with the ESM distribution - #1572 and #1574
Contributions to monaco-editor:
Contributions to monaco-json:
Contributions to monaco-languages:
Contributions to monaco-typescript:
monaco.languages.typescript.typeScriptVersion PR #31Selections and find results are now rendered in the minimap.
IModelDecorationOptions.minimap, once set the decoration will be rendered in the minimapautoClosingOvertype: it controls whether the editor allows typing over closing quotes or brackets.cursorSurroundingLines: it controls how many visible lines to display around the cursor while moving the cursor towards beginning or end of a file.renderWhitespace: "selection": the editor can render whitespaces only in selection.DeclarationProvider: The declaration provider interface defines the contract between extensions and the go to declaration feature.SelectionRangeProvider Provide smart selection ranges for the given positions, see VS Code issue.CodeLensList instead of ICodeLensSymbol[].DocumentSymbol has a new property tags to support more types.string instead of number.Contributions to monaco-json:
Update monaco-typescript to TypeScript 3.5.0.
Localization support is brought back for AMD bundle. We lost the localization support when VS Code moved to the localization system but now AMD bundle
LinkProvider.ProvideLinks should now return ILinksList instead of ILink[].IEditorOptions.iconsInSuggestions and EditorContribOptions.iconsInSuggestions are now replaced by EditorContribOptions.suggest.showIcons.EditorContribOptions.suggest.maxVisibleSuggestions to control maximum suggestions to show in suggestions widget.EditorContribOptions.suggest.filteredTypes is now introduced to allow suggestions to be filtered by the user. For more details, please read vscode#45039.Contributions to monaco-editor:
- Fixes for HTML and JSON
- Fixes issue with context menu
Added built-in support for AMD cross-domain web worker loading.
monaco.editor.remeasureFonts) in case custom fonts are used and the editor is painted at a time when the fonts are not finished loading.renderFinalNewline, or to have a cursorSmoothCaretAnimationCompletionItem.range is now mandatory. Most times, you can use model.getWordUntilPosition() to get a good range.DefinitionLink has been renamed to LocationLink and a couple of its fields have also been renamed.Contributions to monaco-editor:
Contributions to monaco-languages:
Contributions to monaco-typescript:
- Fixes issue with context menu
Re-remove cast to any from our code base to allow for tree shaking to not shake useful code
Fixes context menu in IE11 - https://github.com/Microsoft/monaco-editor/issues/1191
Remove cast to any from our code base to allow for tree shaking to not shake useful code
Fixes usage of marked to allow for packaging with rollup
marked to allow for packaging with rollup (https://github.com/Microsoft/monaco-editor/issues/1183)- Fixes the /esm/ distribution
/esm/ distribution (https://github.com/Microsoft/monaco-editor/issues/1178)Improved typings in monaco.d.ts to better reflect null types.
monaco.d.ts to better reflect null types.monaco.Promise API has been reduced to indicate that. We are setting up a Promise polyfill to cover browsers which do not have a native Promise implementation yet (i.e. IE11).CompletionItemProvider.provideCompletionItems and CompletionItemProvider.resolveCompletionItem have been modified to better reflect the API of VS Code. Both arguments and return type have changed.SignatureHelpProvider.provideSignatureHelp now receives an extra argument for the context.parameterHints, autoClosingBrackets, autoClosingQuotes, autoSurround, copyWithSyntaxHighlighting, tabCompletion.Contributions to monaco-editor:
Contributions to monaco-languages:
Contributions to monaco-typescript:
Contributions to monaco-json:
Contributions to monaco-css:
Fixes TypeScript/JavaScript coloring of regular expressions https://github.com/Microsoft/monaco-editor/issues/1009
Reverts https://github.com/Microsoft/monaco-editor/pull/981
- Fixes Find All References
Using tree-shaking to reduce the amount of shipped code.
typescriptServices is no longer loaded on the UI thread, this helps with webpack's bundle output size.scrollBeyondLastColumn, hover, suggest, highlightActiveIndentGuide, showUnused.setTokensProvider with EncodedTokensProvider.monaco.languages.getEncodedLanguageId to get the numeric language id.DefinitionProvider.provideDefinition, ImplementationProvider.provideImplementation, TypeDefinitionProvider.provideTypeDefinition can now return a DefinitionLink.Severity.IEditor.isFocused to IEditor.hasTextFocus.ICodeEditor.onDidFocusEditor to ICodeEditor.onDidFocusEditorWidget.ICodeEditor.onDidBlurEditor to ICodeEditor.onDidBlurEditorWidget.DocumentSymbolProvider.provideDocumentSymbols must now return DocumentSymbol[].Contributions to monaco-editor:
Contributions to monaco-typescript:
file fields of relatedInformation too. (WIP) PR #21Contributions to monaco-languages:
Fixes issue #871: TypeScript import error after mocaco-editor upgraded from 0.12 to 0.13
New folding provider registerFoldingRangeProvider.
registerFoldingRangeProvider.IModelDecorationOptions.zIndex. A decoration with greater stack order is always in front of a decoration with a lower stack order.inlineClassName which affects letter spacing. the stack order of a decoration by setting IModelDecorationOptions.inlineClassNameAffectsLetterSpacing.ITextModel.getLineLength(lineNumber: number))codeActionsOnSave, controls whether code action kinds will be run on save.codeActionsOnSaveTimeout, controls timeout for running code actions on save.multiCursorMergeOverlapping, controls if overlapping selections should be merged. Default to true.ICodeEditor.getCenteredRangeInViewport.RenameProvider.resolveRenameLocation now returns RenameLocation instead of IRange.Special thanks to Tim Kendrick for contributing a webpack plugin - monaco-editor-webpack-plugin - now available on npm.
monaco-editor-webpack-plugin - now available on npm.MarkerSeverity instead of Severity for markers serverity.RenameProvider.resolveInitialRenameValue with RenameProvider.resolveRenameLocation.monaco-typescript, renamed setMaximunWorkerIdleTime to setMaximumWorkerIdleTime.fromMarkdownString PR monaco-json#4Fixes issue #756: Can't use "Enter" key to accept an IntelliSense item
editor.api.d.ts typingsESM distribution (compatible with e.g. webpack).
DocumentColorProvider.MarkedString with IMarkdownString. Source code snippets can be expressed using the GH markdown syntax.IResourceEdit to ResourceTextEdit.IModel, IReadOnlyModel, IEditableTextModel, ITextModelWithMarkers, ITokenizedModel, ITextModelWithDecorations to ITextModel. A type alias for IModel is defined for compatibility.ICommonCodeEditor and ICodeEditor to ICodeEditor.ICommonDiffEditor and IDiffEditor to IDiffEditor.CompletionItem.documentation, ParameterInformation.documentation and SignatureInformation.documentation can now be an IMarkdownString.CompetionItem.command, CompletionItem.commitCharacters and CompletionItem.additionalTextEdits.folding which can define markers for code patterns where a folding regions should be created. See for example the Python configuration.ResourceFileEdit (due to how monaco.d.ts is generated from vscode). That is not honoured by the editor, and should not be used.Fixes issue #601: window.opener should be set to null to protect against malicious code
Method provideCodeActions in CodeActionProvider now returns Command[] | Thenable instead of CodeAction[] | Thenable , which is already removed.
CodeAction.provideCodeActions in CodeActionProvider now returns Command[] | Thenable<Command[]> instead of CodeAction[] | Thenable<CodeAction[]>, which is already removed.monaco.editor.getModelMarkers. Get markers for owner and/or resource..row for command palette to avoid CSS conflicts with Bootstrap.Minimap (on by default, use editor.minimap to disable it).
editor.minimap to disable it).editor.dragAndDrop to disable it).editor.updateOptions() no longer accepts theme; the theme can be changed via the newly introduced monaco.editor.setTheme(). Additionally, we recommend editor colors be customized via monaco.editor.defineTheme() instead of via CSS -- see sample. The color names will be stable, while the CSS class names might break at any time.IModel.findMatches to accept a list of word separators.IModelContentChangedEvent emitted via IModel.onDidChangeContent to now contain a batch of all the changes that the model had.transform: translate3d, now using will-change: transform for browser layer hinting. Use the disableLayerHinting option if you have any trouble with browser layers (blurriness or high GPU memory usage).wordWrap, wordWrapColumn and wordWrapMinified.monaco.languages.registerTypeDefinitionProvider.accessibilityHelpUrl - the url of a page to open for documentation about how to operate the editor when using a Screen Reader.find.seedSearchStringFromSelection - Ctrl+F/Cmd+F seeds search string from the editor selection.find.autoFindInSelection - Ctrl+F/Cmd+F turns on the find in selection toggle if the editor selection is multiline.minimap.enabled - enable minimap.minimap.showSlider - control when to render the minimap slider.minimap.renderCharacters - render characters or blocks in the minimap.minimap.maxColumn - maximum number of columns the minimap shows.overviewRulerBorder - toggle that the overview ruler renders a border.links - enable link detection.multiCursorModifier - change the multi cursor modifier key.accessibilitySupport - optimize the editor for use with a Screen Reader.autoIndent - automatically fix indentation when moving lines, pasting or typing.dragAndDrop - dragging and dropping editor selection within the editor.occurrencesHighlight - enable highlighting of occurences.showFoldingControls - fine-tune when the folding icons should showmatchBrackets - enable bracket matchingletterSpacing - configure font's letter-spacing.vscode which have also made their way into the monaco-editor.Fixes an issue in monaco-typescript where it would attempt to validate a disposed model.
Fixes the following regressions:
Breaking change: renamed registerTypeDefinitionProvider to registerImplementationProvider and associated types.
Intl missing.disableMonospaceOptimizations editor option that can be used in case browser zooming exposes additional issues.formatOnPaste editor option.IActionDescriptor.precondition.registerTypeDefinitionProvider to registerImplementationProvider and associated types.Speed improvements to Monarch tokenizer that resulted in one breaking change:
monaco-typescript (JS and TS language support).nextEmbedded), the state ending up in must immediately contain a nextEmbedded: "@pop" rule. This helps in quickly figuring out where the embedded mode should be left. The editor will throw an error if the Monarch grammar does not respect this condition.span node of text, and CSS rules would match token types and assign styling to them (i.e. color, boldness, etc.to style tokens)monaco.editor.defineTheme() and the playground contains a sample showing how that works.F1 > Developer: Inspect tokens. This will bring up a widget showing the token type and the applied styles.monaco.editor.onDidCreateEditor that will be fired whenever an editor is created (will fire even for a diff editor, with the two editors that a diff editor consists of).monaco.editor.tokenize that returns logical tokens (before theme matching, as opposed to monaco.editor.colorize).monaco.languages.registerTypeDefinitionProviderIModel.getMode().IModelLanguageChangedEvent, IModelDecorationsChangedEvent and IModelTokensChangedEvent;IModel.findMatches, IModel.findNextMatch and IModel.findPreviousMatch to be able to capture matches while searching.ICodeEditor.addAction and IDiffEditor.addAction now return an IDisposable to be able to remove a previously added action.ICodeEditor.onDidChangeModelMode to ICodeEditor.onDidChangeModelLanguage;ICodeEditor.executeEdits can now take resulting selection for better undo/redo stack management;ICodeEditor.getTargetAtClientPoint(clientX, clientY) to be able to do hit testing.IViewZone.marginDomNode to be able to insert a dom node in the margin side of a view zone.lineDecorationsWidth can now take a value in the form of "1.2ch" besides the previous accepted number (in px)renderLineHighlight can now take a value in the set 'none' | 'gutter' | 'line' | 'all'.fixedOverflowWidgets to render overflowing content widgets as 'fixed' (defaults to false)acceptSuggestionOnCommitCharacter to accept suggestions on provider defined characters (defaults to true)emptySelectionClipboard - copying without a selection copies the current line (defaults to true)suggestFontSize - the font size for the suggest widgetsuggestLineHeight - the line height for the suggest widgetrenderIndicators - Render +/- indicators for added/deleted changes. (defaults to true)Adopted TypeScript 2.0 in all the repos (also reflected in monaco.d.ts).
monaco.d.ts).editor.addAction() and have the action show in the context menu.lineNumbers: 'on' | 'off' | 'relative'renderWhitespace: 'none' | 'boundary' | 'all'model.setMode(), as IMode will soon disappear from the API.monaco-editor-core:
monaco-editor-core is now finally language agnostic.monaco-languages.monaco-html.monaco-editor-core, we could improve the bundling and reduce the number of .js files we ship.Fixed regression where editor.addCommand was no longer working.
editor.addCommand was no longer working.This will be the last release that contains specific IE9 and IE10 fixes/workarounds. We will begin cleaning our code-base and remove them.
monaco.d.ts is generated by TypeScript 1.8.javascript and typescript language services:
extraLibs.css, less, scss and json language services.mouseWheelZoom, wordWrap, snippetSuggestions, tabCompletion, wordBasedSuggestions, renderControlCharacters, renderLineHighlight, fontWeight.tabFocusMode, outlineMarkers.indentGuides -> renderIndentGuides, referenceInfos -> codeLenseditor.pushUndoStop() to explicitly push an undo stopsuppressMouseDown to IContentWidgetresolveLink to ILinkProviderenablement, contextMenuGroupId from IActionDescriptorNothing published for this version
- Fixed mouse handling in IE ---
…and as second argument the initData. This breaking change was needed to allow handling the case of misconfigured web workers (running on a file protoc…
monaco.editor.createWebWorker now loads the AMD module and calls create and passes in as first argument a context of type monaco.worker.IWorkerContext and as second argument the initData. This breaking change was needed to allow handling the case of misconfigured web workers (running on a file protocol or the cross-domain case)CodeActionProvider.provideCodeActions now gets passed in a CodeActionContext that contains the markers at the relevant range.hoverMessage of a decoration is now a MarkedString | MarkedString[]contents of a Hover returned by a HoverProvider is now a MarkedString | MarkedString[]IEditor.onDidChangeModelRawContent, IModel.onDidChangeRawContentfile:// or misconfigured cross-domain loading) now load the web worker code in the UI thread. This caused a breaking change in the behaviour of monaco.editor.createWebWorkerposition:fixed element.Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →