NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
npm · #5111 most downloaded on npm
Autocompletion for the CodeMirror code editor
Last release 4 months ago
03 Jun 2026
Release timing varies
gaps range from 2 weeks to 7 months
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
89 releases · first in 2020
One column per quarter.
In snippets, treat tab stop 0 as the final one, aligning with a widely used convention.
In snippets, treat tab stop 0 as the final one, aligning with a widely used convention.
Fix a bug in the handling of changes before the completion while completion is active.
Fix an issue where you couldn't move to the last page of completions when its count was a precise multiple of the page size.
Fix an issue where you couldn't move to the last page of completions when its count was a precise multiple of the page size.
Clicking the horizontal dots at the top/bottom of a list of completion options now moves the selection there, so that more completions become visible.
Clicking the horizontal dots at the top/bottom of a list of completion options now moves the selection there, so that more completions become visible.
Completions now support a sortText property to influence sort order.
Completions now support a sortText property to influence sort order.
Make sure a completion's info panel is associated with that completion in the accessibility tree.
Make sure a completion's info panel is associated with that completion in the accessibility tree.
Completion sections may now set their rank to dynamic to indicate their order should be determined by the matching score of their best-matching option
Completion sections may now set their rank to dynamic to indicate their order should be determined by the matching score of their best-matching option.
Add a binding for Alt-i to trigger startCompletion, following VS Code's current default bindings.
Add a binding for Alt-i to trigger startCompletion, following VS Code's current default bindings.
Improve handling of nested fields in snippets.
Fix an issue where the closing character for double-angle quotation marks and full-width brackets was computed incorrectly.
Fix an issue where the closing character for double-angle quotation marks and full-width brackets was computed incorrectly.
Fix an issue where clicking on the scrollbar for the completion list could move focus out of the editor.
Fix an issue where clicking on the scrollbar for the completion list could move focus out of the editor.
Align the behavior of snippet completions with text completions in that they overwrite the selected text.
Align the behavior of snippet completions with text completions in that they overwrite the selected text.
Backspacing to the start of the completed range will no longer close the completion tooltip when it was triggered implicitly by typing the character b
Backspacing to the start of the completed range will no longer close the completion tooltip when it was triggered implicitly by typing the character before that range.
Don't immediately show synchronously updated completions when there are some sources that still need to return.
Don't immediately show synchronously updated completions when there are some sources that still need to return.
Fix an issue where insertCompletionText would get confused about the length of the inserted text when it contained CRLF line breaks, and create an inv
Fix an issue where insertCompletionText would get confused about the length of the inserted text when it contained CRLF line breaks, and create an invalid selection.
Add Alt-Backtick as additional binding on macOS, where IME can take over Ctrl-Space.
Style the info element so that newlines are preserved, to make it easier to display multi-line info from a string source.
Style the info element so that newlines are preserved, to make it easier to display multi-line info from a string source.
When registering an abort handler for a completion query, you can now use the onDocChange option to indicate that your query should be aborted as soon as the document changes while it is running.
Fix an issue where completions weren't properly reset when starting a new completion through activateOnCompletion.
Fix an issue where completions weren't properly reset when starting a new completion through activateOnCompletion.
CompletionContext objects now have a view property that holds the editor view when the query context has a view available.
Avoid adding an aria-autocomplete attribute to the editor when there are no active sources active.
Avoid adding an aria-autocomplete attribute to the editor when there are no active sources active.
Allow backslash-escaped closing braces inside snippet field names/content.
Allow backslash-escaped closing braces inside snippet field names/content.
Fix a bug where multiple backslashes before a brace in a snippet were all removed.
Fix a bug where multiple backslashes before a brace in a snippet were all removed.
The new activateOnCompletion option allows autocompletion to be configured to chain completion activation for some types of completions.
The new activateOnCompletion option allows autocompletion to be configured to chain completion activation for some types of completions.
The new filterStrict option can be used to turn off fuzzy matching of completions.
The new filterStrict option can be used to turn off fuzzy matching of completions.
Completion results can now define a map method that can be used to adjust position-dependent information for document changes.
Completion results can now define a map method that can be used to adjust position-dependent information for document changes.
Completions may now provide 'commit characters' that, when typed, commit the completion before inserting the character.
Completions may now provide 'commit characters' that, when typed, commit the completion before inserting the character.
Make sure snippet completions also set userEvent to input.complete.
Make sure snippet completions also set userEvent to input.complete.
Fix a crash when the editor lost focus during an update and autocompletion was active.
Fix a crash when using a snippet that has only one field, but multiple instances of that field.
The new activateOnTypingDelay option allows control over the debounce time before the completions are queried when the user types.
Fix a bug that caused typing over closed brackets after pressing enter to still not work in many situations.
Fix a bug that caused typing over closed brackets after pressing enter to still not work in many situations.
Fix an issue that would prevent typing over closed brackets after starting a new line with enter.
Fix an issue that would prevent typing over closed brackets after starting a new line with enter.
Additional elements rendered in completion options with addToOptions are now given access to the editor view.
Fix a bug that caused updateSyncTime to always delay the initial population of the tooltip.
Fix a bug that caused updateSyncTime to always delay the initial population of the tooltip.
Fix a bug where picking a selection with the mouse could use the wrong completion if the completion list was updated after being opened.
Fix a bug where picking a selection with the mouse could use the wrong completion if the completion list was updated after being opened.
The new autocompletion configuration option updateSyncTime allows control over how long fast sources are held back waiting for slower completion sourc
The new autocompletion configuration option updateSyncTime allows control over how long fast sources are held back waiting for slower completion sources.
Fix a bug in completeAnyWord that could cause it to generate invalid regular expressions and crash.
Fix a bug in completeAnyWord that could cause it to generate invalid regular expressions and crash.
Make sure the cursor is scrolled into view after inserting completion text.
Make sure the cursor is scrolled into view after inserting completion text.
Make sure scrolling completions into view doesn't get confused when the tooltip is scaled.
Completions may now provide a displayLabel property that overrides the way they are displayed in the completion list.
Completions may now provide a displayLabel property that overrides the way they are displayed in the completion list.
acceptCompletion now returns false (allowing other handlers to take effect) when the completion popup is open but disabled.
acceptCompletion now returns false (allowing other handlers to take effect) when the completion popup is open but disabled.
The result of Completion.info may now include a destroy method that will be called when the tooltip is removed.
The result of Completion.info may now include a destroy method that will be called when the tooltip is removed.
Fix a bug that cause incorrect ordering of completions when some results covered input text and others didn't.
Fix a bug that cause incorrect ordering of completions when some results covered input text and others didn't.
The new hasNextSnippetField and hasPrevSnippetField functions can be used to figure out if the snippet-field-motion commands apply to a given state.
The new hasNextSnippetField and hasPrevSnippetField functions can be used to figure out if the snippet-field-motion commands apply to a given state.
Fix a bug that made the editor use the completion's original position, rather than its current position, when changes happened in the document while a
Fix a bug that made the editor use the completion's original position, rather than its current position, when changes happened in the document while a result was active.
Fix a bug in insertCompletionText that caused it to replace the wrong range when a result set's to fell after the cursor.
Fix a bug in insertCompletionText that caused it to replace the wrong range when a result set's to fell after the cursor.
Functions returned by snippet can now be called without a completion object.
Keep completions open when interaction with an info tooltip moves focus out of the editor.
Keep completions open when interaction with an info tooltip moves focus out of the editor.
When closeBrackets skips a bracket, it now generates a change that overwrites the bracket.
When closeBrackets skips a bracket, it now generates a change that overwrites the bracket.
Replace the entire selected range when picking a completion with a non-cursor selection active.
Completions can now provide a section field that is used to group them into sections.
The new positionInfo option can be used to provide custom logic for positioning the info tooltips.
Fix a bug where the apply method created by snippet didn't add a pickedCompletion annotation to the transactions it created.
Fix a bug where the apply method created by snippet didn't add a pickedCompletion annotation to the transactions it created.
Don't consider node names in trees that aren't the same language as the one at the completion position in ifIn and ifNotIn.
Don't consider node names in trees that aren't the same language as the one at the completion position in ifIn and ifNotIn.
Make sure completions that exactly match the input get a higher score than those that don't (so that even if the latter has a score boost, it ends up lower in the list).
Fix an issue where the extension would sometimes try to draw a disabled dialog at an outdated position, leading to plugin crashes.
Fix an issue where the extension would sometimes try to draw a disabled dialog at an outdated position, leading to plugin crashes.
A tooltipClass option to autocompletion can now be used to add additional CSS classes to the completion tooltip.
Fix an issue where completion lists could end up being higher than the tooltip they were in.
Fix an issue where completion lists could end up being higher than the tooltip they were in.
Set an explicit box-sizing style on completion icons so CSS resets don't mess them up.
Set an explicit box-sizing style on completion icons so CSS resets don't mess them up.
Allow closing braces in templates to be escaped with a backslash.
Fix a regression that could cause the completion dialog to stick around when it should be hidden.
Fix a regression that could cause the completion dialog to stick around when it should be hidden.
Fix a regression where transactions for picking a completion (without custom apply method) no longer had the pickedCompletion annotation.
Fix a regression where transactions for picking a completion (without custom apply method) no longer had the pickedCompletion annotation.
Reduce flickering for completion sources without validFor info by temporarily showing a disabled tooltip while the completion updates.
Make sure completion info tooltips are kept within the space provided by the tooltipSpace option.
Close bracket configuration now supports a stringPrefixes property that can be used to allow autoclosing of prefixed strings.
Close bracket configuration now supports a stringPrefixes property that can be used to allow autoclosing of prefixed strings.
Autocompletion now takes an interactionDelay option that can be used to control the delay between the time where completion opens and the time where c
Autocompletion now takes an interactionDelay option that can be used to control the delay between the time where completion opens and the time where commands like acceptCompletion affect it.
Fix a bug that prevented transactions produced by deleteBracketPair from being marked as deletion user events.
Fix a bug that prevented transactions produced by deleteBracketPair from being marked as deletion user events.
Improve positioning of completion info tooltips so they are less likely to stick out of the screen on small displays.
You can now provide a compareCompletions option to autocompletion to influence the way completions with the same match score are sorted.
You can now provide a compareCompletions option to autocompletion to influence the way completions with the same match score are sorted.
The selectOnOpen option to autocompletion can be used to require explicitly selecting a completion option before acceptCompletion does anything.
Remove a leftover console.log in bracket closing code.
Remove a leftover console.log in bracket closing code.
Fix a bug that caused closeBrackets to not close quotes when at the end of a syntactic construct that starts with a similar quote.
Fix a bug that caused closeBrackets to not close quotes when at the end of a syntactic construct that starts with a similar quote.
Declare package dependencies as peer dependencies as an attempt to avoid duplicated package issues.
Declare package dependencies as peer dependencies as an attempt to avoid duplicated package issues.
Support escaping ${ or #{ in snippets.
Support escaping ${ or #{ in snippets.
Scroll the cursor into view when inserting a snippet.
Scroll the cursor into view when inserting a snippet.
Add an aria-label to the completion listbox.
Add an aria-label to the completion listbox.
Fix a regression that caused transactions generated for completion to not have a userEvent annotation.
The package now exports an insertCompletionText helper that implements the default behavior for applying a completion.
The package now exports an insertCompletionText helper that implements the default behavior for applying a completion.
The new closeOnBlur option determines whether the completion tooltip is closed when the editor loses focus.
The new closeOnBlur option determines whether the completion tooltip is closed when the editor loses focus.
CompletionResult objects with filter: false may now have a getMatch property that determines the matched range in the options.
CompletionResult.span has been renamed to validFor, and may now hold a function as well as a regular expression.
CompletionResult.span has been renamed to validFor, and may now hold a function as well as a regular expression.
Remove code that dropped any options beyond the 300th one when matching and sorting option lists.
Completion will now apply to all cursors when there are multiple cursors.
CompletionResult.update can now be used to implement quick autocompletion updates in a synchronous way.
The @codemirror/closebrackets package was merged into this one.
The selectedCompletionIndex function tells you the position of the currently selected completion.
The selectedCompletionIndex function tells you the position of the currently selected completion.
The new setSelectionCompletion function creates a state effect that moves the selected completion to a given index.
A completion's info method may now return null to indicate that no further info is available.
Your coding agent can read these notes before it upgrades. Set up the MCP server →