Search functionality for the CodeMirror code editor
Last release 2 months ago
16 Jun 2026
Release timing varies
gaps range from 2 weeks to 9 months
Nearly every release is documented
notes for 44 of 44 stable releases
Nothing withdrawn
no release was ever pulled
6 years old
44 releases · first in 2020
Release timeline
44 releases since 2020One column per quarter.
Releases
- 6.7.116 Jun 2026
Release notes2 sources agree
Open source →Bug fixes
Fix a regression in 6.7.0 that caused
replaceNextto not immediately move to the next match when replacing. - 6.7.021 Apr 2026
Release notes2 sources agree
Open source →Bug fixes
SearchCursorwill no longer ignore matches that don't start or end on non-normalized character boundaries.New features
SearchCursorresults now include aprecisefield that is false when the query matched normalized content that doesn't start or end on an actual document character boundary. - 6.6.013 Jan 2026
Release notes2 sources agree
Open source →New features
Search queries now support a generic
testfield that can be used to implement custom tests on matches. - 6.5.1114 May 2025
Release notes2 sources agree
Open source →Bug fixes
Fix an issue in
replaceNextthat could cause it to create an invalid selection when replacing past the end of the document. - 6.5.1026 Feb 2025
- 6.5.912 Feb 2025
Release notes2 sources agree
Open source →Bug fixes
When replacing a regexp match, don't expand multi-digit replacement markers to numbers beyond the captured group count in the query.
- 6.5.822 Nov 2024
Release notes2 sources agree
Open source →Bug fixes
Fix a bug that put the selection in the wrong place after running
replaceNextwith a regexp query that could match strings of different length. - 6.5.71 Nov 2024
Release notes2 sources agree
Open source →Bug fixes
Fix an issue where
findNextandfindPreviouswould do nothing when the only match in the document was partially selected.Fix an infinite loop in
SearchCursorwhen the normalizer function deletes characters. - 6.5.67 Feb 2024
Release notes2 sources agree
Open source →Bug fixes
Make
highlightSelectionMatchesinclude whitespace in the selection in its matches.Fix a bug that caused
SearchCursorto return invalid ranges when matching astral chars that the the normalizer normalized to single-code-unit chars. - 6.5.527 Nov 2023
Release notes2 sources agree
Open source →Bug fixes
Fix a bug that caused codes like
\nto be unescaped in strings inserted via replace placeholders like$&.Use the keybinding Mod-Alt-g for
gotoLineto the search keymap, to make it usable for people whose keyboard layout uses Alt/Option-g to type some character. - 6.5.420 Sept 2023
Release notes2 sources agree
Open source →Bug fixes
Fix a bug that caused whole-word search to incorrectly check for word boundaries in some circumstances.
- 6.5.314 Sept 2023
Release notes2 sources agree
Open source →Bug fixes
The
gotoLinedialog is now populated with the current line number when you open it. - 6.5.226 Aug 2023
Release notes2 sources agree
Open source →Bug fixes
Don't use the very lowest precedence for match highlighting decorations.
- 6.5.14 Aug 2023
Release notes2 sources agree
Open source →Bug fixes
Make
gotoLineprefer to scroll the target line to the middle of the view.Fix an issue in
SearchCursorwhere character normalization could produce nonsensical matches. - 6.5.05 Jun 2023
Release notes2 sources agree
Open source →New features
The new
regexpoption tosearchcan be used to control whether queries have the regexp flag on by default. - 6.4.025 Apr 2023
Release notes2 sources agree
Open source →Bug fixes
The
findNextandfindPreviouscommands now select the search field text if that field is focused.New features
The
scrollToMatchcallback option now receives the editor view as a second parameter. - 6.3.020 Mar 2023
Release notes2 sources agree
Open source →New features
The new
scrollToMatchsearch option allows you to adjust the way the editor scrolls search matches into view. - 6.2.314 Nov 2022
Release notes2 sources agree
Open source →Bug fixes
Fix a bug that hid the search dialog's close button when the editor was read-only.
- 6.2.218 Oct 2022
Release notes2 sources agree
Open source →Bug fixes
When
literalis off, \n, \r, and \t escapes are now also supported in replacement text.Make sure search dialog inputs don't get treated as form fields when the editor is created inside a form.
Fix a bug in
RegExpCursorthat would cause it to stop matching in the middle of a line when its current match position was equal to the length of the line. - 6.2.126 Sept 2022
Release notes2 sources agree
Open source →Bug fixes
By-word search queries will now skip any result that had word characters both before and after a match boundary.
- 6.2.025 Aug 2022
Release notes2 sources agree
Open source →New features
A new
wholeWordsearch query flag can be used to limit matches to whole words.SearchCursorandRegExpCursornow support atestparameter that can be used to ignore certain matches. - 6.1.016 Aug 2022
Release notes2 sources agree
Open source →Bug fixes
Fix an infinite loop when the match position of a
RegExpCursorended up in the middle of an UTF16 surrogate pair.New features
The
literalsearch option can now be set to make literal queries the default.The new
searchPanelOpenfunction can be used to find out whether the search panel is open for a given state. - 6.0.122 Jul 2022
Release notes2 sources agree
Open source →Bug fixes
findNextandfindPreviouswill now return to the current result (and scroll it into view) if no other matches are found. - 6.0.08 Jun 2022
Release notes2 sources agree
Open source →Bug fixes
Don't crash when a custom search panel doesn't have a field named 'search'.
Make sure replacements are announced to screen readers.
- 0.20.122 Apr 2022
Release notes2 sources agree
Open source →New features
It is now possible to disable backslash escapes in search queries with the
literaloption. - 0.20.020 Apr 2022
Release notes2 sources agree
Open source →Bug fixes
Make the
wholeWordsoption tohighlightSelectionMatchesdefault to false, as intended. - 0.19.104 Apr 2022
Release notes2 sources agree
Open source →Bug fixes
Make sure search matches are highlighted when scrolling new content into view.
- 0.19.93 Mar 2022
Release notes2 sources agree
Open source →New features
The selection-matching extension now accepts a
wholeWordsoption that makes it only highlight matches that span a whole word. Add SearchQuery.getCursorThe
SearchQueryclass now has agetCursormethod that allows external code to create a cursor for the query. - 0.19.814 Feb 2022
Release notes2 sources agree
Open source →Bug fixes
Fix a bug that caused the search panel to start open when configuring a state with the
search()extension. - 0.19.714 Feb 2022
Release notes2 sources agree
Open source →Breaking changes
searchConfigis deprecated in favor ofsearch(but will exist until next major release).New features
The new
searchfunction is now used to enable and configure the search extension. - 0.19.627 Jan 2022
Release notes2 sources agree
Open source →Bug fixes
Make
selectNextOccurrencescroll the newly selected range into view. - 0.19.516 Dec 2021
Release notes2 sources agree
Open source →Breaking changes
The search option
matchCasewas renamed tocaseSensitive(the old name will continue to work until the next breaking release).Bug fixes
openSearchPanelwill now update the search query to the current selection even if the panel was already open.New features
Client code can now pass a custom search panel creation function in the search configuration.
The
getSearchQueryfunction andsetSearchQueryeffect can now be used to inspect or change the current search query. - 0.19.42 Dec 2021
Release notes2 sources agree
Open source →Bug fixes
The search panel will no longer show the replace interface when the editor is read-only.
- 0.19.322 Nov 2021
Release notes2 sources agree
Open source →Bug fixes
Add
userEventannotations to search and replace transactions.Make sure the editor handles keys bound to
findNext/findPreviouseven when there are no matches, to avoid the browser's search interrupting users.New features
Add a
Symbol.iteratorproperty to the cursor types, so that they can be used withfor/of. - 0.19.216 Sept 2021
Release notes2 sources agree
Open source →Bug fixes
selectNextOccurrencewill now only select partial words if the current main selection hold a partial word.Explicitly set the button's type to prevent the browser from submitting forms wrapped around the editor.
- 0.19.16 Sept 2021
Release notes2 sources agree
Open source →Bug fixes
Make
highlightSelectionMatchesnot produce overlapping decorations, since those tend to just get unreadable.Make sure any existing search text is selected when opening the search panel. Add search config option to not match case when search panel is opened (#4)
New features
The
searchConfigfunction now takes amatchCaseoption that controls whether the search panel starts in case-sensitive mode. - 0.19.011 Aug 2021
Release notes2 sources agree
Open source →Bug fixes
Make sure to prevent the native Mod-d behavior so that the editor doesn't lose focus after selecting past the last occurrence.
- 0.18.427 May 2021
Release notes2 sources agree
Open source →New features
Initialize the search query to the current selection, when there is one, when opening the search dialog.
Add a
searchConfigfunction, supporting an option to put the search panel at the top of the editor. - 0.18.318 May 2021
Release notes2 sources agree
Open source →Bug fixes
Fix a bug where the first search command in a new editor wouldn't properly open the panel.
New features
New command
selectNextOccurrencethat selects the next occurrence of the selected word (bound to Mod-d in the search keymap). - 0.18.219 Mar 2021
Release notes2 sources agree
Open source →Bug fixes
The search interface and cursor will no longer include overlapping matches (aligning with what all other editors are doing).
New features
The package now exports a
RegExpCursorwhich is a search cursor that matches regular expression patterns.The search/replace interface now allows the user to use regular expressions.
The
SearchCursorclass now has anextOverlappingmethod that includes matches that start inside the previous match.Basic backslash escapes (\n, \r, \t, and \) are now accepted in string search patterns in the UI.
- 0.18.115 Mar 2021
Release notes2 sources agree
Open source →Bug fixes
Fix an issue where entering an invalid input in the goto-line dialog would submit a form and reload the page.
- 0.18.03 Mar 2021
- 0.17.16 Jan 2021
Release notes2 sources agree
Open source →New features
The package now also exports a CommonJS module.
- 0.17.029 Dec 2020