# Helix changelog > A post-modern modal text editor. - Vendor: Helix - Category: Developer Tools - Official site: https://helix-editor.com - Tracked by: What's New (https://whatsnew.fyi/product/helix) - Harvested from: GitHub (helix-editor/helix) - Entries below: 10 (newest first) What's New is an index, not a publisher: every entry below links to the vendor's own release notes, which are the authoritative source. Entries are labelled where they are hand-curated sample data, pre-releases, or drawn from a secondary source such as a developer blog. ## Releases ### 25.07.1 - Date: 2025-07-18 - Version: 25.07.1 - Original notes: https://github.com/helix-editor/helix/releases/tag/25.07.1 - Permalink: https://whatsnew.fyi/product/helix/releases/25.07.1 This is a patch release which lowers the GLIBC requirements of the release artifacts published to GitHub ([#13983](https://github.com/helix-editor/helix/pull/13983)) ### 25.07 - Date: 2025-07-15 - Version: 25.07 - Original notes: https://github.com/helix-editor/helix/releases/tag/25.07 - Permalink: https://whatsnew.fyi/product/helix/releases/25.07 As always, a big thank you to all of the contributors! This release saw changes from 195 contributors. Breaking changes: * The parsing of the command line has been rewritten and now supports flags and expansions ([#12527](https://github.com/helix-editor/helix/pull/12527), [#13018](https://github.com/helix-editor/helix/pull/13018), [9574e55](https://github.com/helix-editor/helix/commit/9574e55), [2d4c2a1](https://github.com/helix-editor/helix/commit/2d4c2a1), [#13192](https://github.com/helix-editor/helix/pull/13192), [67f1fe2](https://github.com/helix-editor/helix/commit/67f1fe2), [#13466](https://github.com/helix-editor/helix/pull/13466), [#13467](https://github.com/helix-editor/helix/pull/13467), [#13840](https://github.com/helix-editor/helix/pull/13840)) * Quoting and spaces are now handled differently. This can break existing keymaps which use typable commands, in particular `:sh`, `:set-option` or `:toggle-option`. * The `:rsort` command has been removed. Use the reverse flag instead: `:sort --reverse` Features: * Add a picker which explores directories ([#11285](https://github.com/helix-editor/helix/pull/11285), [d4aed40](https://github.com/helix-editor/helix/commit/d4aed40)) * Allow cycling through multiple LSP Hover responses with `A-n`/`A-p` ([#10122](https://github.com/helix-editor/helix/pull/10122), [2367b20](https://github.com/helix-editor/helix/commit/2367b20)) * Add support for incomplete LSP completions ([5c1f3f8](https://github.com/helix-editor/helix/commit/5c1f3f8)) * Add support for EditorConfig ([#13056](https://github.com/helix-editor/helix/pull/13056), [#13443](https://github.com/helix-editor/helix/pull/13443)) * Add support for LSP document colors ([#12308](https://github.com/helix-editor/helix/pull/12308), [d43de14](https://github.com/helix-editor/helix/commit/d43de14), [47cdd23](https://github.com/helix-editor/helix/commit/47cdd23), [ba54b6a](https://github.com/helix-editor/helix/commit/ba54b6a), [#13188](https://github.com/helix-editor/helix/pull/13188)) * Support expansions in external formatter arguments ([#13429](https://github.com/helix-editor/helix/pull/13429)) * Switch out the highlighter for the `tree-house` crate ([#12972](https://github.com/helix-editor/helix/pull/12972), [09bc67a](https://github.com/helix-editor/helix/commit/09bc67a), [a7c3a43](https://github.com/helix-editor/helix/commit/a7c3a43), [3ceae88](https://github.com/helix-editor/helix/commit/3ceae88), [05ae617](https://github.com/helix-editor/helix/commit/05ae617), [5a1dcc2](https://github.com/helix-editor/helix/commit/5a1dcc2), [ebf96bd](https://github.com/helix-editor/helix/commit/ebf96bd), [#13644](https://github.com/helix-editor/helix/pull/13644), [b1f4717](https://github.com/helix-editor/helix/commit/b1f4717), [7410fe3](https://github.com/helix-editor/helix/commit/7410fe3), [633c5fb](https://github.com/helix-editor/helix/commit/633c5fb), [362e97e](https://github.com/helix-editor/helix/commit/362e97e), [#13828](https://github.com/helix-editor/helix/pull/13828), [6fd1efd](https://github.com/helix-editor/helix/commit/6fd1efd)) * This fixes a number of highlighter bugs. * Locals like parameter highlights are now highlighted even when the definition is not in view. * Markdown is now injected into rust doc comments (`///` and `//!`). * Add support for the DAP `startDebugging` reverse request ([#13403](https://github.com/helix-editor/helix/pull/13403)) Commands: * Add `copy_between_registers` for interactive copying between two registers ([066e938](https://github.com/helix-editor/helix/commit/066e938)) * Add `extend_to_file_{start,end}`, select-mode variants of `goto_file_{start,end}` ([#11767](https://github.com/helix-editor/helix/pull/11767)) * Add `:!` alias for `:sh` and `:|` for `:pipe` ([#13263](https://github.com/helix-editor/helix/pull/13263)) * Add `goto_column` and `extend_to_column` ([#13440](https://github.com/helix-editor/helix/pull/13440)) * Add an `--insensitive`/`-i` flag to the `:sort` comma _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/25.07]_ ### 25.01.1 - Date: 2025-01-19 - Version: 25.01.1 - Original notes: https://github.com/helix-editor/helix/releases/tag/25.01.1 - Permalink: https://whatsnew.fyi/product/helix/releases/25.01.1 25.01.1 is a patch release focusing on fixing bugs and panics from changes in 25.01. Usability improvements: * Run external formatters from the document's directory ([#12315](https://github.com/helix-editor/helix/pull/12315)) Fixes: * Fix blank buffer picker preview on doc with no views ([917174e](https://github.com/helix-editor/helix/commit/917174e)) * Fix `join_selections` behavior on tabs ([#12452](https://github.com/helix-editor/helix/pull/12452)) * Fix recognition for color LSP completion hex codes for some language servers ([#12501](https://github.com/helix-editor/helix/pull/12501)) * Fix offsets to selections updated by `open_below`/`open_above` (`o`/`O`) in multi-cursor scenarios ([#12465](https://github.com/helix-editor/helix/pull/12465)) * Fix offsets to selections updated by `insert_newline` when trimming whitespace in multi-cursor scenarios ([4bd17e5](https://github.com/helix-editor/helix/commit/4bd17e5)) * Fix panic in path completion from resolving variables like `${HOME:-$HOME}` ([#12556](https://github.com/helix-editor/helix/pull/12556)) * Prevent line comment continuation when using `change_selection` (`c`) on a line above a comment ([#12575](https://github.com/helix-editor/helix/pull/12575)) Themes: * Update `onelight` ([#12399](https://github.com/helix-editor/helix/pull/12399)) * Add cursorline color to iceberg themes ([#12404](https://github.com/helix-editor/helix/pull/12404)) * Update `special`, `ui.text.directory` and `ui.virtual.wrap` in `dark_plus` ([#12530](https://github.com/helix-editor/helix/pull/12530)) New languages: * CodeQL ([#12470](https://github.com/helix-editor/helix/pull/12470)) * Gren ([#12525](https://github.com/helix-editor/helix/pull/12525)) Updated languages and queries: * Fix Teal LSP name ([#12395](https://github.com/helix-editor/helix/pull/12395)) * Highlight `:` in Rust as a delimiter ([#12408](https://github.com/helix-editor/helix/pull/12408)) * Update Swift highlights ([#12409](https://github.com/helix-editor/helix/pull/12409)) * Highlight JSX attributes as `@attribute` ([#12416](https://github.com/helix-editor/helix/pull/12416)) * Improve markdown heading highlights ([#12417](https://github.com/helix-editor/helix/pull/12417)) * Add comment tokens configuration for JSONC ([b26903c](https://github.com/helix-editor/helix/commit/b26903c)) * Highlight the never type `!` as a type in Rust ([#12485](https://github.com/helix-editor/helix/pull/12485)) * Expand builtin function highlights for ECMA languages, Rust and Haskell ([#12488](https://github.com/helix-editor/helix/pull/12488)) * Recognize `.clang-tidy` as YAML ([#12498](https://github.com/helix-editor/helix/pull/12498)) * Update MATLAB grammar and indent queries ([#12518](https://github.com/helix-editor/helix/pull/12518)) * Recognize `rockspec` as Lua ([#12516](https://github.com/helix-editor/helix/pull/12516)) * Add `///` to Dart comment tokens configuration ([99d33c7](https://github.com/helix-editor/helix/commit/99d33c7)) * Update Solidity grammar and queries ([#12457](https://github.com/helix-editor/helix/pull/12457)) * Update Spade grammar and queries ([#12583](https://github.com/helix-editor/helix/pull/12583)) * Re-enable Hare fetching and building by default ([#11507](https://github.com/helix-editor/helix/pull/11507)) Packaging: * `--version` now prints a leading zero for single-digit months, for example `25.01` (03f35af) * Pin the Ubuntu GitHub Actions runners used for releases to `ubuntu-22.04` ([#12464](https://github.com/helix-editor/helix/pull/12464)) * Produce a Debian package (`.deb` file) in the release GitHub Actions workflow ([#12453](https://github.com/helix-editor/helix/pull/12453)) ### 25.01 - Date: 2025-01-03 - Version: 25.01 - Original notes: https://github.com/helix-editor/helix/releases/tag/25.01 - Permalink: https://whatsnew.fyi/product/helix/releases/25.01 As always, a big thank you to all of the contributors! This release saw changes from 171 contributors. Breaking changes: * The `editor.lsp.display-messages` key now controls messages sent with the LSP `window/showMessage` notification rather than progress messages. If you want to enable progress messages you should now enable the `editor.lsp.display-progress-messages` key instead. ([#5535](https://github.com/helix-editor/helix/pull/5535)) Features: * Big refactor for `Picker`s ([#9647](https://github.com/helix-editor/helix/pull/9647), [#11209](https://github.com/helix-editor/helix/pull/11209), [#11216](https://github.com/helix-editor/helix/pull/11216), [#11211](https://github.com/helix-editor/helix/pull/11211), [#11343](https://github.com/helix-editor/helix/pull/11343), [#11406](https://github.com/helix-editor/helix/pull/11406)) * Use a table layout and allow filtering by column * Reimplement `global_search` to allow changing the query dynamically * Add an alternative "inline" display for LSP diagnostics ([#6417](https://github.com/helix-editor/helix/pull/6417), [#11815](https://github.com/helix-editor/helix/pull/11815)) * Support defining keybindings as macros ([#4709](https://github.com/helix-editor/helix/pull/4709)) * Continue line comments in `o`/`O` and on `` in insert mode ([#10996](https://github.com/helix-editor/helix/pull/10996), [#12213](https://github.com/helix-editor/helix/pull/12213), [#12215](https://github.com/helix-editor/helix/pull/12215)) * Allow configuring and switching clipboard providers at runtime ([#10839](https://github.com/helix-editor/helix/pull/10839), [b855cd0](https://github.com/helix-editor/helix/commit/b855cd0), [467fad5](https://github.com/helix-editor/helix/commit/467fad5), [191b0f0](https://github.com/helix-editor/helix/commit/191b0f0)) * Add support for path completion ([#2608](https://github.com/helix-editor/helix/pull/2608)) * Support bindings with the Super (Cmd/Win/Meta) modifier ([#6592](https://github.com/helix-editor/helix/pull/6592)) * Support rendering and jumping between tabstops in snippet completions ([#9801](https://github.com/helix-editor/helix/pull/9801)) * Allow theming directory completions ([#12205](https://github.com/helix-editor/helix/pull/12205), [#12295](https://github.com/helix-editor/helix/pull/12295)) Commands: * Add commands to move within snake_case or camelCase words ([#8147](https://github.com/helix-editor/helix/pull/8147)) * Add `search_selection_detect_word_boundaries` ([#12126](https://github.com/helix-editor/helix/pull/12126)) * This command takes the `*` key in normal and select mode, replacing `search_selection` which was moved to `A-*`. Usability improvements: * Add `:edit` and `:e` aliases for `:open` ([#11186](https://github.com/helix-editor/helix/pull/11186), [#11196](https://github.com/helix-editor/helix/pull/11196)) * Trim trailing newline from pipe command outputs when the input doesn't have a trailing newline ([#11183](https://github.com/helix-editor/helix/pull/11183), [4f63a46](https://github.com/helix-editor/helix/commit/4f63a46)) * Add `:mv` alias for `:move` ([#11256](https://github.com/helix-editor/helix/pull/11256)) * Return document display name instead of absolute path from the `%` special register ([#11275](https://github.com/helix-editor/helix/pull/11275)) * Track view position on a per-view instead of per-document basis ([#10559](https://github.com/helix-editor/helix/pull/10559)) * Improve scrolloff calculation to leave a gap in the middle ([#11323](https://github.com/helix-editor/helix/pull/11323)) * Show a popup for stderr printed by failed `:sh` commands ([#11239](https://github.com/helix-editor/helix/pull/11239)) * Add statusline errors when nothing is selected with `s`, `K`, `A-K` ([#11370](https://github.com/helix-editor/helix/pull/11370)) * Add `.svn` as a workspace root marker ([#11429](https://github.com/helix-editor/helix/pull/11429)) * Trim the end of `:sh` outputs ([#11161](https://github.com/helix-edi _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/25.01]_ ### 24.07 - Date: 2024-07-14 - Version: 24.07 - Original notes: https://github.com/helix-editor/helix/releases/tag/24.07 - Permalink: https://whatsnew.fyi/product/helix/releases/24.07 Thanks to all of the contributors! This release has changes from 160 contributors. Breaking changes: Features: - Add a textobject for entries/elements of list-like things ([#8150](https://github.com/helix-editor/helix/pull/8150)) - Add a picker showing files changed in VCS ([#5645](https://github.com/helix-editor/helix/pull/5645)) - Use a temporary file for writes ([#9236](https://github.com/helix-editor/helix/pull/9236), [#10339](https://github.com/helix-editor/helix/pull/10339), [#10790](https://github.com/helix-editor/helix/pull/10790)) - Allow cycling through LSP signature-help signatures with `A-n`/`A-p` ([#9974](https://github.com/helix-editor/helix/pull/9974), [#10654](https://github.com/helix-editor/helix/pull/10654), [#10655](https://github.com/helix-editor/helix/pull/10655)) - Use tree-sitter when finding matching brackets and closest pairs ([#8294](https://github.com/helix-editor/helix/pull/8294), [#10613](https://github.com/helix-editor/helix/pull/10613), [#10777](https://github.com/helix-editor/helix/pull/10777)) - Auto-save all buffers after a delay ([#10899](https://github.com/helix-editor/helix/pull/10899), [#11047](https://github.com/helix-editor/helix/pull/11047)) Commands: - `select_all_siblings` (`A-a`) - select all siblings of each selection ([87c4161](https://github.com/helix-editor/helix/commit/87c4161)) - `select_all_children` (`A-I`) - select all children of each selection ([fa67c5c](https://github.com/helix-editor/helix/commit/fa67c5c)) - `:read` - insert the contents of the given file at each selection ([#10447](https://github.com/helix-editor/helix/pull/10447)) Usability improvements: - Support scrolling popup contents using the mouse ([#10053](https://github.com/helix-editor/helix/pull/10053)) - Sort the jumplist picker so that most recent items come first ([#10095](https://github.com/helix-editor/helix/pull/10095)) - Improve `goto_file`'s (`gf`) automatic path detection strategy ([#9065](https://github.com/helix-editor/helix/pull/9065)) - Respect language server definition order in code action menu ([#9590](https://github.com/helix-editor/helix/pull/9590)) - Allow using a count with `goto_next_buffer` (`gn`) and `goto_previous_buffer` (`gp`) ([#10463](https://github.com/helix-editor/helix/pull/10463)) - Improve the positioning of popups ([#10257](https://github.com/helix-editor/helix/pull/10257), [#10573](https://github.com/helix-editor/helix/pull/10573)) - Reset all changes overlapped by selections in `:reset-diff-change` ([#10728](https://github.com/helix-editor/helix/pull/10728)) - Await pending writes in the `suspend` command (`C-z`) ([#10797](https://github.com/helix-editor/helix/pull/10797)) - Remove special handling of line ending characters in `replace` (`r`) ([#10786](https://github.com/helix-editor/helix/pull/10786)) - Use the selected register as a history register for `rename_symbol` (`r`) ([#10932](https://github.com/helix-editor/helix/pull/10932)) - Use the configured insert-mode cursor for prompt entry ([#10945](https://github.com/helix-editor/helix/pull/10945)) - Add tilted quotes to the matching brackets list ([#10971](https://github.com/helix-editor/helix/pull/10971)) - Prevent improper files like `/dev/urandom` from being used as file arguments ([#10733](https://github.com/helix-editor/helix/pull/10733)) - Allow multiple language servers to provide `:lsp-workspace-command`s ([#10176](https://github.com/helix-editor/helix/pull/10176), [#11105](https://github.com/helix-editor/helix/pull/11105)) - Trim output of commands executed through `:pipe` ([#10952](https://github.com/helix-editor/helix/pull/10952)) Fixes: - Use `lldb-dap` instead of `lldb-vscode` in default DAP configuration ([#10091](https://github.com/helix-editor/helix/pull/10091)) - Fix creation of uneven splits when closing windows ([#10004](https://github.com/helix-editor/helix/pull/10004)) - Avoid setting a register in `delete_selection_noyank`, fixing the command's use in command sequences ([#10050](h _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/24.07]_ ### 24.03 - Date: 2024-03-30 - Version: 24.03 - Original notes: https://github.com/helix-editor/helix/releases/tag/24.03 - Permalink: https://whatsnew.fyi/product/helix/releases/24.03 As always, a big thank you to all of the contributors! This release saw changes from 125 contributors. Breaking changes: - `suffix` file-types in the `file-types` key in language configuration have been removed ([#8006](https://github.com/helix-editor/helix/pull/8006)) - The `file-types` key in language configuration no longer matches full filenames without a glob pattern ([#8006](https://github.com/helix-editor/helix/pull/8006)) Features: - Open URLs with the `goto_file` command ([#5820](https://github.com/helix-editor/helix/pull/5820)) - Support drawing a border around popups and menus ([#4313](https://github.com/helix-editor/helix/pull/4313), [#9508](https://github.com/helix-editor/helix/pull/9508)) - Track long lived diagnostic sources like Clippy or `rustc` ([#6447](https://github.com/helix-editor/helix/pull/6447), [#9280](https://github.com/helix-editor/helix/pull/9280)) - This improves the handling of diagnostics from sources that only update the diagnostic positions on save. - Add support for LSP `window/showDocument` requests ([#8865](https://github.com/helix-editor/helix/pull/8865)) - Refactor ad-hoc hooks to use a new generic event system ([#8021](https://github.com/helix-editor/helix/pull/8021), [#9668](https://github.com/helix-editor/helix/pull/9668), [#9660](https://github.com/helix-editor/helix/pull/9660)) - This improves the behavior of autocompletions. For example navigating in insert mode no longer automatically triggers completions. - Allow using globs in the language configuration `file-types` key ([#8006](https://github.com/helix-editor/helix/pull/8006)) - Allow specifying required roots for situational LSP activation ([#8696](https://github.com/helix-editor/helix/pull/8696)) - Extend selections using mouse clicks in select mode ([#5436](https://github.com/helix-editor/helix/pull/5436)) - Toggle block comments ([#4718](https://github.com/helix-editor/helix/pull/4718), [#9894](https://github.com/helix-editor/helix/pull/9894)) - Support LSP diagnostic tags ([#9780](https://github.com/helix-editor/helix/pull/9780)) - Add a `file-absolute-path` statusline element ([#4535](https://github.com/helix-editor/helix/pull/4535)) - Cross injection layers in tree-sitter motions (`A-p`/`A-o`/`A-i`/`A-n`) ([#5176](https://github.com/helix-editor/helix/pull/5176)) - Add a Amp-editor-like jumping command ([#8875](https://github.com/helix-editor/helix/pull/8875)) Commands: - `:move` - move buffers with LSP support ([#8584](https://github.com/helix-editor/helix/pull/8584)) - Also see [#8949](https://github.com/helix-editor/helix/pull/8949) which made path changes conform to the LSP spec and fixed the behavior of this command. - `page_cursor_up`, `page_cursor_down`, `page_cursor_half_up`, `page_cursor_half_down` - commands for scrolling the cursor and page together ([#8015](https://github.com/helix-editor/helix/pull/8015)) - `:yank-diagnostic` - yank the diagnostic(s) under the primary cursor ([#9640](https://github.com/helix-editor/helix/pull/9640)) - `select_line_above` / `select_line_below` - extend or shrink a selection based on the direction and anchor ([#9080](https://github.com/helix-editor/helix/pull/9080)) Usability improvements: - Make `roots` key of `[[language]]` entries in `languages.toml` configuration optional ([#8803](https://github.com/helix-editor/helix/pull/8803)) - Exit select mode in commands that modify the buffer ([#8689](https://github.com/helix-editor/helix/pull/8689)) - Use crossterm cursor when out of focus ([#6858](https://github.com/helix-editor/helix/pull/6858), [#8934](https://github.com/helix-editor/helix/pull/8934)) - Join empty lines with only one space in `join_selections` ([#8989](https://github.com/helix-editor/helix/pull/8989)) - Introduce a hybrid tree-sitter and contextual indentation heuristic ([#8307](https://github.com/helix-editor/helix/pull/8307)) - Allow configuring the indentation heuristic ([#8307](https://github.com/helix-editor/helix/pull/8307)) - Check for _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/24.03]_ ### 23.10 - Date: 2023-10-25 - Version: 23.10 - Original notes: https://github.com/helix-editor/helix/releases/tag/23.10 - Permalink: https://whatsnew.fyi/product/helix/releases/23.10 A big shout out to all the contributors! We had 118 contributors in this release. Breaking changes: - Support multiple language servers per language ([#2507](https://github.com/helix-editor/helix/pull/2507)) - This is a breaking change to language configuration Features: - Support multiple language servers per language ([#2507](https://github.com/helix-editor/helix/pull/2507), [#7082](https://github.com/helix-editor/helix/pull/7082), [#7286](https://github.com/helix-editor/helix/pull/7286), [#8374](https://github.com/helix-editor/helix/pull/8374)) - Add a statusline element for the selected register ([#7222](https://github.com/helix-editor/helix/pull/7222)) - Add `%`, `#`, `.`, `*` and `+` special registers ([#6985](https://github.com/helix-editor/helix/pull/6985)) - Add initial support for LSP DidChangeWatchedFiles notifications ([#7665](https://github.com/helix-editor/helix/pull/7665)) - Search buffer contents in `global_search` ([#5652](https://github.com/helix-editor/helix/pull/5652)) - Add a "smart tab" command that intelligently jumps the cursor on tab ([#4443](https://github.com/helix-editor/helix/pull/4443)) - Add a statusline element for whether a file is read-only ([#7222](https://github.com/helix-editor/helix/pull/7222), [#7875](https://github.com/helix-editor/helix/pull/7875)) - Syntax highlight regex prompts ([#7738](https://github.com/helix-editor/helix/pull/7738)) - Allow defining alignment in indent queries ([#5355](https://github.com/helix-editor/helix/pull/5355)) - Show visual feedback in `surround_replace` ([#7588](https://github.com/helix-editor/helix/pull/7588)) - Switch to Nucleo for fuzzy matching ([#7814](https://github.com/helix-editor/helix/pull/7814), [#8148](https://github.com/helix-editor/helix/pull/8148), [#8192](https://github.com/helix-editor/helix/pull/8192), [#8194](https://github.com/helix-editor/helix/pull/8194)) - Insert a trailing newline on write ([#8157](https://github.com/helix-editor/helix/pull/8157)) - Add a `-w`/`--working-dir` CLI flag for specifying a working directory on startup ([#8223](https://github.com/helix-editor/helix/pull/8223), [#8498](https://github.com/helix-editor/helix/pull/8498), [#8520](https://github.com/helix-editor/helix/pull/8520)) - Accept a `+N` CLI argument to set the first file's line number ([#8521](https://github.com/helix-editor/helix/pull/8521)) - Accept Helix-specific ignore files in `.helix/ignore` and `~/.config/helix/ignore` ([#8099](https://github.com/helix-editor/helix/pull/8099)) Commands: - `merge_selections` (`A-minus`) - merge all selections into one selection that covers all ranges ([#7053](https://github.com/helix-editor/helix/pull/7053)) - `move_prev_long_word_end` and `extend_prev_long_word_end` - move/extend to the end of the previous WORD ([#6905](https://github.com/helix-editor/helix/pull/6905)) - `reverse_selection_contents` - swaps the values of each selection so they are reversed ([#7329](https://github.com/helix-editor/helix/pull/7329)) - Add `:rl` and `:rla` aliases for `:reload` and `:reload-all` ([#7158](https://github.com/helix-editor/helix/pull/7158)) - `yank_joined` - join the selections and yank to the selected register ([#7195](https://github.com/helix-editor/helix/pull/7195)) - `:write-all!` (`:wa!`) - forcibly write all buffers to disk and create any necessary subdirectories ([#7577](https://github.com/helix-editor/helix/pull/7577)) - `:redraw` - clear re-render the UI ([#6949](https://github.com/helix-editor/helix/pull/6949)) - `:tree-sitter-highlight-name` - show the theme scope name of the highlight under the cursor ([#8170](https://github.com/helix-editor/helix/pull/8170)) Usability improvements: - Allow cycling option values at runtime ([#4411](https://github.com/helix-editor/helix/pull/4411), [#7240](https://github.com/helix-editor/helix/pull/7240), [#7877](https://github.com/helix-editor/helix/pull/7877)) - Exit gracefully on termination signals ([#7236](https://github.com/helix-editor/helix/pull/7236)) - _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/23.10]_ ### 23.05 - Date: 2023-05-18 - Version: 23.05 - Original notes: https://github.com/helix-editor/helix/releases/tag/23.05 - Permalink: https://whatsnew.fyi/product/helix/releases/23.05 23.05 is a smaller release focusing on fixes. There were 88 contributors in this release. Thank you all! Features: - Add a config option to exclude declaration from LSP references request ([#6886](https://github.com/helix-editor/helix/pull/6886)) - Enable injecting languages based on their file extension and shebang ([#3970](https://github.com/helix-editor/helix/pull/3970)) - Sort the buffer picker by most recent access ([#2980](https://github.com/helix-editor/helix/pull/2980)) - Perform syntax highlighting in the picker asynchronously ([#7028](https://github.com/helix-editor/helix/pull/7028)) Commands: - `:update` is now aliased as `:u` ([#6835](https://github.com/helix-editor/helix/pull/6835)) - Add `extend_to_first_nonwhitespace` which acts the same as `goto_first_nonwhitespace` but always extends ([#6837](https://github.com/helix-editor/helix/pull/6837)) - Add `:clear-register` for clearing the given register or all registers ([#5695](https://github.com/helix-editor/helix/pull/5695)) - Add `:write-buffer-close` and `:write-buffer-close!` ([#6947](https://github.com/helix-editor/helix/pull/6947)) Fixes: - Normalize LSP workspace paths ([#6517](https://github.com/helix-editor/helix/pull/6517)) - Robustly handle invalid LSP ranges ([#6512](https://github.com/helix-editor/helix/pull/6512)) - Fix line number display for LSP goto pickers ([#6559](https://github.com/helix-editor/helix/pull/6559)) - Fix toggling of `soft-wrap.enable` option ([#6656](https://github.com/helix-editor/helix/pull/6656), [58e457a](https://github.com/helix-editor/helix/commit/58e457a), [#6742](https://github.com/helix-editor/helix/pull/6742)) - Handle `workspace/configuration` requests from stopped language servers ([#6693](https://github.com/helix-editor/helix/pull/6693)) - Fix possible crash from opening the jumplist picker ([#6672](https://github.com/helix-editor/helix/pull/6672)) - Fix theme preview returning to current theme on line and word deletions ([#6694](https://github.com/helix-editor/helix/pull/6694)) - Re-run crate build scripts on changes to revision and grammar repositories ([#6743](https://github.com/helix-editor/helix/pull/6743)) - Fix crash on opening from suspended state ([#6764](https://github.com/helix-editor/helix/pull/6764)) - Fix unwrap bug in DAP ([#6786](https://github.com/helix-editor/helix/pull/6786)) - Always build tree-sitter parsers with C++14 and C11 ([#6792](https://github.com/helix-editor/helix/pull/6792), [#6834](https://github.com/helix-editor/helix/pull/6834), [#6845](https://github.com/helix-editor/helix/pull/6845)) - Exit with a non-zero statuscode when tree-sitter parser builds fail ([#6795](https://github.com/helix-editor/helix/pull/6795)) - Flip symbol range in LSP goto commands ([#6794](https://github.com/helix-editor/helix/pull/6794)) - Fix runtime toggling of the `mouse` option ([#6675](https://github.com/helix-editor/helix/pull/6675)) - Fix panic in inlay hint computation when view anchor is out of bounds ([#6883](https://github.com/helix-editor/helix/pull/6883)) - Significantly improve performance of git discovery on slow file systems ([#6890](https://github.com/helix-editor/helix/pull/6890)) - Downgrade gix log level to info ([#6915](https://github.com/helix-editor/helix/pull/6915)) - Conserve BOM and properly support saving UTF16 files ([#6497](https://github.com/helix-editor/helix/pull/6497)) - Correctly handle completion re-request ([#6594](https://github.com/helix-editor/helix/pull/6594)) - Fix offset encoding in LSP `didChange` notifications ([#6921](https://github.com/helix-editor/helix/pull/6921)) - Change `gix` logging level to info ([#6915](https://github.com/helix-editor/helix/pull/6915)) - Improve error message when writes fail because parent directories do not exist ([#7014](https://github.com/helix-editor/helix/pull/7014)) - Replace DAP variables popup instead of pushing more popups ([#7034](https://github.com/helix-editor/helix/pull/7034)) - Disable tree-sitter for files after parsing f _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/23.05]_ ### 23.03 - Date: 2023-03-31 - Version: 23.03 - Original notes: https://github.com/helix-editor/helix/releases/tag/23.03 - Permalink: https://whatsnew.fyi/product/helix/releases/23.03 23.03 brings some long-awaited and exciting features. Thank you to everyone involved! This release saw changes from 102 contributors. For the full log, check out the [git log](https://github.com/helix-editor/helix/compare/22.12..23.03). Also check out the [release notes](https://helix-editor.com/news/release-23-03-highlights/) for more commentary on larger features. Breaking changes: - Select diagnostic range in `goto_*_diag` commands ([#4713](https://github.com/helix-editor/helix/pull/4713), [#5164](https://github.com/helix-editor/helix/pull/5164), [#6193](https://github.com/helix-editor/helix/pull/6193)) - Remove jump behavior from `increment`/`decrement` ([#4123](https://github.com/helix-editor/helix/pull/4123), [#5929](https://github.com/helix-editor/helix/pull/5929)) - Select change range in `goto_*_change` commands ([#5206](https://github.com/helix-editor/helix/pull/5206)) - Split file modification indicator from filename statusline elements ([#4731](https://github.com/helix-editor/helix/pull/4731), [#6036](https://github.com/helix-editor/helix/pull/6036)) - Jump to symbol ranges in LSP goto commands ([#5986](https://github.com/helix-editor/helix/pull/5986)) - Workspace detection now stops at the first `.helix/` directory (merging multiple `.helix/languages.toml` configurations is no longer supported) ([#5748](https://github.com/helix-editor/helix/pull/5748)) Features: - Dynamic workspace symbol picker ([#5055](https://github.com/helix-editor/helix/pull/5055)) - Soft-wrap ([#5420](https://github.com/helix-editor/helix/pull/5420), [#5786](https://github.com/helix-editor/helix/pull/5786), [#5893](https://github.com/helix-editor/helix/pull/5893), [#6142](https://github.com/helix-editor/helix/pull/6142), [#6440](https://github.com/helix-editor/helix/pull/6440)) - Initial support for LSP snippet completions ([#5864](https://github.com/helix-editor/helix/pull/5864), [b1f7528](https://github.com/helix-editor/helix/commit/b1f7528), [#6263](https://github.com/helix-editor/helix/pull/6263), [bbf4800](https://github.com/helix-editor/helix/commit/bbf4800), [90348b8](https://github.com/helix-editor/helix/commit/90348b8), [f87299f](https://github.com/helix-editor/helix/commit/f87299f), [#6371](https://github.com/helix-editor/helix/pull/6371), [9fe3adc](https://github.com/helix-editor/helix/commit/9fe3adc)) - Add a statusline element for showing the current version control HEAD ([#5682](https://github.com/helix-editor/helix/pull/5682)) - Display LSP type hints ([#5420](https://github.com/helix-editor/helix/pull/5420), [#5934](https://github.com/helix-editor/helix/pull/5934), [#6312](https://github.com/helix-editor/helix/pull/6312)) - Enable the Kitty keyboard protocol on terminals with support ([#4939](https://github.com/helix-editor/helix/pull/4939), [#6170](https://github.com/helix-editor/helix/pull/6170), [#6194](https://github.com/helix-editor/helix/pull/6194), [#6438](https://github.com/helix-editor/helix/pull/6438)) - Add a statusline element for the basename of the current file ([#5318](https://github.com/helix-editor/helix/pull/5318)) - Add substring matching syntax for the picker ([#5658](https://github.com/helix-editor/helix/pull/5658)) - Support LSP `textDocument/prepareRename` ([#6103](https://github.com/helix-editor/helix/pull/6103)) - Allow multiple runtime directories with priorities ([#5411](https://github.com/helix-editor/helix/pull/5411)) - Allow configuring whether to insert or replace completions ([#5728](https://github.com/helix-editor/helix/pull/5728)) - Allow per-workspace config file `.helix/config.toml` ([#5748](https://github.com/helix-editor/helix/pull/5748)) - Add `workspace-lsp-roots` config option to support multiple LSP roots for use with monorepos ([#5748](https://github.com/helix-editor/helix/pull/5748)) Commands: - `:pipe-to` which pipes selections into a shell command and ignores output ([#4931](https://github.com/helix-editor/helix/pull/4931)) - `merge_consecutive_selections` (`A-_`) combines _[Truncated at 4000 characters — full notes: https://github.com/helix-editor/helix/releases/tag/23.03]_ ### 22.12 - Date: 2022-12-07 - Version: 22.12 - Original notes: https://github.com/helix-editor/helix/releases/tag/22.12 - Permalink: https://whatsnew.fyi/product/helix/releases/22.12 [22.12 CHANGELOG](https://github.com/helix-editor/helix/blob/master/CHANGELOG.md#2212-2022-12-06) [22.12 Release notes](https://helix-editor.com/news/release-22-12-highlights/)