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)
- Add a picker showing files changed in VCS (#5645)
- Use a temporary file for writes (#9236, #10339, #10790)
- Allow cycling through LSP signature-help signatures with
A-n/A-p(#9974, #10654, #10655) - Use tree-sitter when finding matching brackets and closest pairs (#8294, #10613, #10777)
- Auto-save all buffers after a delay (#10899, #11047)
Commands:
select_all_siblings(A-a) - select all siblings of each selection (87c4161)select_all_children(A-I) - select all children of each selection (fa67c5c):read- insert the contents of the given file at each selection (#10447)
Usability improvements:
- Support scrolling popup contents using the mouse (#10053)
- Sort the jumplist picker so that most recent items come first (#10095)
- Improve
goto_file's (gf) automatic path detection strategy (#9065) - Respect language server definition order in code action menu (#9590)
- Allow using a count with
goto_next_buffer(gn) andgoto_previous_buffer(gp) (#10463) - Improve the positioning of popups (#10257, #10573)
- Reset all changes overlapped by selections in
:reset-diff-change(#10728) - Await pending writes in the
suspendcommand (C-z) (#10797) - Remove special handling of line ending characters in
replace(r) (#10786) - Use the selected register as a history register for
rename_symbol(<space>r) (#10932) - Use the configured insert-mode cursor for prompt entry (#10945)
- Add tilted quotes to the matching brackets list (#10971)
- Prevent improper files like
/dev/urandomfrom being used as file arguments (#10733) - Allow multiple language servers to provide
:lsp-workspace-commands (#10176, #11105) - Trim output of commands executed through
:pipe(#10952)
Fixes:
- Use
lldb-dapinstead oflldb-vscodein default DAP configuration (#10091) - Fix creation of uneven splits when closing windows (#10004)
- Avoid setting a register in
delete_selection_noyank, fixing the command's use in command sequences (#10050, #10148) - Fix jump alphabet config resetting when using
:config-reload(#10156) - Overlay LSP unnecessary/deprecated diagnostic tag highlights onto regular diagnostic highlights (#10084)
- Fix crash on LSP text edits with invalid ranges (#9649)
- Handle partial failure when sending multiple LSP
textDocument/didSavenotifications (#10168) - Fix off-by-one error for completion-replace option (#10279)
- Fix mouse right-click selection behavior (#10067)
- Fix scrolling to the end within a popup (#10181)
- Fix jump label highlight locations when jumping in non-ascii text (#10317)
- Fix crashes from tree-sitter query captures that return non-grapheme aligned ranges (#10310)
- Include VCS change in
mi/matextobject infobox (#10496) - Override crossterm's support for
NO_COLOR(#10514) - Respect mode when starting a search (#10505)
- Simplify first-in-line computation for indent queries (#10527)
- Ignore .svn version controlled files in file pickers (#10536)
- Fix overloading language servers with
completionItem/resolverequests (38ee845, #10873) - Specify direction for
select_next_sibling/select_prev_sibling(#10542) - Fix restarting language servers (#10614)
- Don't stop at the first URL in
goto_file(#10622) - Fix overflows in window size calculations for small terminals (#10620)
- Allow missing or empty completion lists in DAP (#10332)
- Revert statusline refactor that could cause the statusline to blank out on files with long paths (#10642)
- Synchronize files after writing (#10735)
- Avoid
cnormfor cursor-type detection in certain terminals (#10769) - Reset inlay hints when stopping or restarting a language server (#10741)
- Fix logic for updating
--versionwhen development VCS HEAD changes (#10896) - Set a max value for the count (#10930)
- Deserialize number IDs in DAP module types (#10943)
- Fix the behavior of
jump_backwordswhen the jumplist is at capacity (#10968) - Fix injection layer heritage tracking for reused tree-sitter injection layers (#1098)
- Fix pluralization of "buffers" in the statusline for
:q,:q!,:wq(#11018) - Declare LSP formatting client capabilities (#11064)
- Commit uncommitted changes before attempting undo/earlier (#11090)
- Expand tilde for selected paths in
goto_file(#10964) - Commit undo checkpoints before
:write[-all], fixing the modification indicator (#11062)
Themes:
- Add jump label styles to
nightfox(#10052) - Add jump label styles to Solarized themes (#10056)
- Add jump label styles to
cyan_light(#10058) - Add jump label styles to
onelight(#10061) - Add
flexoki-darkandflexoki-light(#10002) - Add default theme keys for LSP diagnostics tags to existing themes (#10064)
- Add jump label styles to base16 themes (#10076)
- Dim primary selection in
kanagawa(#10094, #10500) - Add jump label styles to tokyonight themes (#10106)
- Add jump label styles to papercolor themes (#10104)
- Add jump label styles to Darcula themes (#10116)
- Add jump label styles to
autumn(#10134) - Add jump label styles to Ayu themes (#10133)
- Add jump label styles to
dark_high_contrast(#10133) - Update material themes (#10290)
- Add jump label styles to
varua(#10299) - Add ruler style to
adwaita-dark(#10260) - Remove
ui.highlighteffects fromsolarized_dark(#10261) - Fix statusline color in material themes (#10308)
- Brighten
nordselection highlight (#10307) - Add inlay-hint styles to monokai themes (#10334)
- Add bufferline and cursorline colors to
vim_dark_high_contrast(#10444) - Switch themes with foreground rulers to background (#10309)
- Fix statusline colors for
everblush(#10394) - Use
yellow1forgruvboxwarning diagnostics (#10506) - Add jump label styles to Modus themes (#10538)
- Refactor
dark_plusand switch maintainers (#10543, #10574) - Add debug highlights to
dark_plus(#10593) - Fix per-mode cursor colors in the default theme (#10608)
- Add
tagandattributehighlights todark_high_contrast(#10705) - Improve readability of virtual text with
noctistheme (#10910) - Sync
catppuccinthemes with upstream (#10954) - Improve jump colors for
github_darkthemes (#10946) …