Releases: ayamir/nvimdots
v4.0.0
SUMMARY
This release is not backwards-compatible since Neovim 0.10 has been officially released. While many changes have occurred since the last release, here are a few notable ones:
- The license has officially been changed to the BSD 3-Clause License. It allows you almost unlimited freedom with the software so long as you include the BSD copyright and license notice in it.
- The install scripts no longer support Neovim 0.7, and that branch is no longer maintained. The 0.8 branch is also deprecated.
- The LSP inlay hints feature has been implemented and is enabled by default. Disable it in your user settings by specifying
settings["lsp_inlayhints"] = false
. - The wiki pages and
dotstutor
have been significantly updated. Check them out! - NixOS support has been extensively refactored. Refer to the wiki page and relevant PRs for details.
- Performance restrictions for Treesitter have been relaxed, as incremental parsing is now supported in 0.10. Please kindly report any performance issues encountered, as testing has been limited to a few devices.
- The built-in completion engine has updated its completion parameters. See #1279 for details.
- cmp-buffer will now provide completion results from the texts in all opened buffers.
- Go development experience has been greatly improved. See #1226 for details.
- Horizontal terminals will no longer obscure nvim-tree.
<C-e>
for open-in-place inside nvim-tree has been disabled.- nvim-cmp will no longer pre-select any items, and the selected candidate won't be completed by default until you've accepted it (e.g., by pressing
<CR>
). - trouble.nvim
v3
is supported. - The icon library has been overhauled to support dropbar.nvim.
- indent-blankline.nvim now provides support on a per-language basis. See #1283 for details.
- LuaSnip now supports ECMAScript Regexes. Check the wiki for details.
- Format timeout is now configurable using
settings["format_timeout"]
. - advanced-git-search.nvim and search.nvim have been introduced, while nvim-colorizer.lua has been replaced by nvim-highlight-colors. Check out
:Tutor dots
for introductory tutorials on them!
Caution
The keymaps for Telescope have been changed. See #1303 (comment) for the rationale behind this.
Check out the "What's Changed" section and the tracking issue for minor updates.
What's Changed
- feat: implement inlay virtual text for rust and go by @ClSlaid in #759
- workaroud for watchfile problem by @fecet in #871
- chore(neodim): remove pin commit (#1139 #1138) by @CharlesChiuGit in #1142
- revert: reintroduce
diffview
andwilder
by @ayamir in #1216 - chore: cleanup and minor syntax improvements by @Jint-lzxy in #1217
- feat(cmp): more completion candidates from opened buffers. by @mjkx5 in #1219
- chore(plugins): tidying up by @Jint-lzxy in #1221
- fix: use init for vim plugins config. by @ayamir in #1222
- docs: mention the experimental nature of the 0.10 branch by @ayamir in #1215
- fix(todo-comment): add missing keywords by @CharlesChiuGit in #1225
- fix(options): remove options managed by
vim-sleuth
by @Jint-lzxy in #1229 - fix(rustaceanvim): use
init
for its config by @Jint-lzxy in #1231 - feat!: improve go development experience by @ayamir in #1226
- fix: inlay_hint error by @Mythos-404 in #1236
- fix(lualine): disable default separators for custom separator by @Jint-lzxy in #1233
- fix: prevent horizontal terminal from obscuring
nvim-tree
by @ayamir in #1237 - pref: disable
<C-e>
for open-in-place inside nvim-tree by @ayamir in #1238 - fix(lua_ls): disable diagnostics for undefined-field by @ayamir in #1239
- feat(catppuccin): remove all styles of
@property
by @Jint-lzxy in #1240 - Improve nixos by @misumisumi in #1212
- fix(dashboard_image): replace predefined dashboard_image with user defined image instead of extending it by @csyJoy in #1244
- chore: minor patches by @CharlesChiuGit in #1248
- fix: set cmp preselect to none. by @ayamir in #1247
- Fix/nixos by @misumisumi in #1250
- Fixed 'direrctory' typo in UI. by @Ohkthx in #1254
- fix: set rustaceanvim version to ^4 by @mjkx5 in #1261
- feat(events): make changes only locally for FileType autocmds by @Jint-lzxy in #1263
- chore: update install scripts for nvim 0.10 stable. by @ayamir in #1271
- Update crates.nvim option name from
src
tocompletion
by @fioncat in #1272 - chore: replace deprecated apis by @ayamir in #1266
- fix toggleterm auto-exit on Windows by @CharlesChiuGit in #1267
- fix: utilize
ts-context
inglance
preview window by @mjkx5 in #1265 - Chore: unify the way when get option by @ayamir in #1269
- fix(0.10): minor cleanup by @Jint-lzxy in #1276
- feat(scripts): update frequently used functions by @Jint-lzxy in #1277
- feat(docs): support v0.10 by @Jint-lzxy in #1278
- feat: support new options by @Jint-lzxy in #1279
- feat(trouble)!: v3 support by @Jint-lzxy in #1281
- refactor: overhaul the icon library by @Jint-lzxy in #1282
- feat(lsp): correctly configure diagnostic-signs by @Jint-lzxy in #1280
- feat: disable more plugins for RO (buf|file)types by @Jint-lzxy in #1284
- fix(alpha): cannot cast
string
tointeger
for winheight by @Jint-lzxy in #1285 - feat(ibl): support per-language indent config by @Jint-lzxy in #1287
- feat(ibl): more language nodes by @Jint-lzxy in #1288
- feat(luasnip): support ECMAScript regexes by @Jint-lzxy in #1291
- feat(core): use the lua API to set options by @Jint-lzxy in #1292
- feat: include several new plugins by @CharlesChiuGit in #1235
- feat: better way to check if the (T|G)UI is running by @Jint-lzxy in #1297
- chore(global): cleanup legacy code by @Jint-lzxy in #1296
- feat: reduce the use of direct syscalls by @Jint-lzxy in #1294
- fix(events): avoid name clashes by @Jint-lzxy in #1295
- Feat/telescope collections keymaps by @CharlesChiuGit in #1299
- fix(gitsigns): upstream breaking changes by @Jint-lzxy in #1300
- fix(core): missing leading path separator by @Jint-lzxy in #1301
- feat(treesitter): lessened performance restrictions by @Jint-lzxy in #1305
- feat(nixos): add mergeLazyLock option by @misumisumi in #1310
- fix: cmp snippets source selecting issue by @CharlesChiuGit in #1309
- fix(cmp): occasional inability to select completion items by @Jint-lzxy in #1315
- feat: credit all collaborators as copyright holders by @Jint-lzxy in https://github.co...
v3.6.0
SUMMARY
This is a backward-incompatible release. We've fixed some known issues, improved workflow, and refactored our plugins including removing, replacing, and introducing new plugins to make nvimdots
stronger. Of course, you can add the removed plugins back freely for your own config if you depend on them.
- Plugins Modifications
- Removed (infrequently used, or overkilled, or long-time-no-updates)
rainbowhxch/accelerated-jk.nvim
max397574/better-escape.nvim
sindrets/diffview.nvim
abecodes/tabout.nvim
edluffy/specs.nvim
- Replaced (more powerful, or higher performance)
junegunn/vim-easy-align
toechasnovski/mini.align
RRethy/vim-illuminate
totzachar/local-highlight.nvim
gelguy/wilder.nvim
tohrsh7th/cmp-cmdline
- Added (more intuitive, or more extensive)
folke/neoconf.nvim
for pre project customlsp
configurationtpope/vim-sleuth
for smart tab sizenvim-pack/nvim-spectre
for project-level plain text search and replacemrjones2014/smart-splits.nvim
for smart window split and resize working with terminal multiplexers (kitty, wezterm, and tmux)folke/todo-comments.nvim
for highlight of TODO, NOTE, etcnvim-neotest/nvim-nio
for dependency ofnvim-dap-ui
- Removed (infrequently used, or overkilled, or long-time-no-updates)
- Keymaps Modifications
n|<A-j>
andn|<A-k>
are mapped to resize window vertically.n|<A-h>
andn|<A-l>
are mapped to resize window horizontally.n|<A-i>
andn|<A-o>
are mapped to switch opened buffers/tabs.n|<A-S-i>
andn|<A-S-o>
are mapped to move opened buffers/tabs.n|<leader>Ss
,n|<leader>Sp
,v|<leader>Sp
andn|<leader>Sf
are mapped to project-level text search and replace, you can use<C-p>
to check the detailed descriptions.n|<leader>Wh
,n|<leader>Wj
,n|<leader>Wk
andn|<leader>Wl
are mapped to move splitted windows.n|<leader>ld
ton|<leader>lx
forlsp: Line diagnostic
.n|<leader>ci
ton|gci
forlsp: Show incoming calls
.n|<leader>co
ton|gco
forlsp: Show outcoming calls
.n|<leader>cc
ton|<leader>C
forjump: Goto two chars
.n|<leader>G
ton|<leader>gG
forgit: Open git-fugitive
.n|<leader>g
ton|<leader>gg
forgit: Open lazygit
.n|<leader>tr
ton|<leader>ll
forlsp: Show lsp references
.n|<leader>td
ton|<leader>ld
forlsp: Show document diagnostics
.n|<leader>tw
ton|<leader>lw
forlsp: Show workspace diagnostics
.n|<leader>tq
ton|<leader>lq
forlsp: Show quickfix list
.n|<leader>tl
ton|<leader>lL
forlsp: Show loclist
.n|<leader>fn
ton|<leader>bn
forbuffer: New
.- All of
gitsigns.nvim
related mappings which begin with<leader>h
are changed to begin with<leader>g
. n|<leader>gd
,n|<leader>gD
,n|<A-[>
,n|<A-]>
,n|<A-;>
,n|<A-'>
,n|gea
,n|<A-S-j>
,n|<A-S-k>
,i|<A-l>
andi|<A-h>
are unmapped, they are free now!
- You can set the
dashboard_image
easily inlua/user/settings.lua
and check the details in wiki. - You can search selected content using
v|<leader>fs
in telescope. - You can see icon and description text for different keymap prefix groups (git, fuzzy find, debug, etc).
- All opened buffers share the same
lualine
which makes ui more concise and clearer. - The install scripts are supporting 0.10 branch now.
debugpy
works on windows properly now.
Thanks for @Jint-lzxy, @CharlesChiuGit, @aarnphm, @ClSlaid, @Cyberczy, @csyJoy, @Cheny-chui for repo maintenance and enhancement!
Thanks for users who made feedback and joined our discussions!
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- feat(script): skip dependency installation by default by @Jint-lzxy in #1114
- fix(cmp): don't auto select the first completion candidate by @ayamir in #1118
- fix: input delay in terminal mode by @ayamir in #1119
- feat: make startup image configurable in
settings.lua
. by @ayamir in #1123 - fix(sniprun): more lazy load cmds by @Jint-lzxy in #1130
- chore(catppuccin): split
dap
anddap_ui
integrations by @Jint-lzxy in #1129 - Update dots.tutor for macOS key. by @Cheny-chui in #1133
- fix(bufferline): use
BufDel %d
instead ofbdelete! %d
by @Cyberczy in #1136 - patch: remove rust-tools.nvim by @ClSlaid in #1140
- fix(bufferline): avoid unnecessary user interaction by @Jint-lzxy in #1143
- fix(rust): respect user configs by @Jint-lzxy in #1145
- fix(keymap): never map
<leader>
to<Nop>
by @Jint-lzxy in #1146 - fix(telescope): remove telescope folding hack since PR with fix has been merged upstream by @Cyberczy in #1150
- fix(rust): follow upstream changes by @Jint-lzxy in #1151
- fix(utils): respect
o:background
by @Jint-lzxy in #1152 - Register readable prefix for grouped keymap settings by @Cyberczy in #1134
- chore(ci): bump deps versions by @Cyberczy in #1159
- fix(scrollview): omit the
scrollview_
prefix by @Cyberczy in #1162 - feat: make diffview configurable. by @ayamir in #1170
- chore(ci): bump deps versions by @Cyberczy in #1173
- feat(ci): use dependabot to bump deps versions by @Cyberczy in #1174
- Revert "feat(ci): use dependabot to bump deps versions (#1174)" by @ayamir in #1176
- feat: search with selection text. by @ayamir in #1175
- fix: eliminate warning in formatting.lua. by @ayamir in #1180
- feat!: pin
none-ls
until upstream deprecation is finished by @CharlesChiuGit in #1184 - chore(none-ls): add option to suppress warning by @CharlesChiuGit in #1186
- chore(none-ls): pin
none-ls
to the correct commit to allows the suppression option to work properly by @csyJoy in #1187 - fix: deprecate rustfmt for none-ls. by @ayamir in #1190
- feat: support nightly branch for install script. by @ayamir in #1192
- feat(ui): enable global statusline, disable all extension. by @ayamir in #1197
- fix: make debugpy work normally on windows. by @ayamir in #1205
- refactor(plugins): iterate plugins by @ayamir in #1198
New Contributors
- @Cheny-chui made their first contribution in #1133
Full Changelog: v3.5.0...v3.6.0
v3.5.0
SUMMARY
This is a maintenance release. We've fixed some known issues, adjusted some plugins based on upstream changes, and added several new features. Among all the commits, the major changes are:
- The previous version of telescope-frecency.nvim used a SQLite3 database to store timestamps and file records. But now it has switched to using native Lua bytecode to store them, so you can now completely remove the frecency SQLite3 database (default located at
vim.fn.stdpath("data") .. "/file_frecency.sqlite3"
) and even SQLite3 itself, if you wish. - The
Neovim
icon has been added to the icons library (and can be accessed viarequire("modules.utils.icons").get("misc").Neovim
). Please make sure you have installed NF >v3.1.0 to display this icon correctly. - We now support formatting only the changed lines (defined by your version control system). Please check the settings option
format_modifications_only
for more information. - You can now define GUI and Neovide preferences separately under the user directory (a.k.a.
lua/user/settings.lua
). Please see their corresponding entries for more information. - clever-f.vim has been replaced with flash.nvim. Please see PR #926 and its brief annotation for more information.
- symbols-outline.nvim has been replaced with aerial.nvim. Please see PR #1059 and issue #1058 for more information, as well as the motivation for doing so.
- The legacy (vim) syntax engine has been completely disabled, as Treesitter can now do everything the old regex colorizer did (#1062).
- We now support fidget.nvim(v2).
- PR #1091 reintroduced
nvim-bqf
. :Telescope colorscheme
now supports real-time preview of the selected colorscheme.
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- fix(ibl): remove top level scope definition (
chunk
) by @Jint-lzxy in #1024 - fixup!: disable sqlite explicitly to eliminate warning. by @ayamir in #1027
- feat: support formatting changed lines only by @ayamir in #1028
- fix(keymap): use
<C-w>
with hjkl to navigate undert
mode. by @ayamir in #1029 - fix(pack): erroneous searcher for user configs by @Jint-lzxy in #1032
- feat: customized
neovide
andgui
config by @ayamir in #1033 - chore(gui-settings): more annotations and minor cleanup by @Jint-lzxy in #1035
- fix(lualine): automatically load theme for the active colorscheme by @ayamir in #1031
- fix: check
type(value)==table
before recursion. by @ayamir in #1039 - fix(keymap): make all completion-related keymaps silent by @Jint-lzxy in #1046
- fix(scripts): typo by @Jint-lzxy in #1045
- feat(plugins): add
flash.nvim
to replaceclever-f.vim
by @YuCao16 in #926 - fix: auto apply formatter args set in
user/configs/formatters
. by @ayamir in #1051 - fix(neovide): neovide is not set up correctly because of
ipairs
by @csyJoy in #1052 - chore(core): correct some ambiguous comments by @Jint-lzxy in #1054
- docs(lspsaga): fix broken links by @Jint-lzxy in #1055
- refactor: use aerial to provide outline. by @ayamir in #1059
- feat(treesitter): use ts-indent and disable legacy syntax engine by @Jint-lzxy in #1062
- feat(fidget)!: support v2 by @Jint-lzxy in #1068
- feat(ts-context-commentstring)!: setup as a plugin by @Jint-lzxy in #1067
- feat(icon): use
neovim
icon in nerdfont v3.1.0 by @CharlesChiuGit in #1072 - perf(ts-context): limit
max_lines
to 3 by @Jint-lzxy in #1075 - feat(icons): add
Neovim
(U+E6AE) by @Jint-lzxy in #1082 - feat(telescope): support live preview of currently selected colorscheme by @Cyberczy in #1085
- feat(plugins): migrate from
null-ls
tonone-ls
by @Jint-lzxy in #1088 - fix(rainbow-delimiters): ping commit until author fix it. ( #1092 ) by @CharlesChiuGit in #1093
- feat(plugins): add
nvim-bqf
by @Jint-lzxy in #1091 - chore(rainbow-delimiters): update to latest master by @CharlesChiuGit in #1096
New Contributors
Full Changelog: v3.4.1...v3.5.0
v3.4.1
SUMMARY
This is a maintenance release.
- You can now define treesitter parsers that will be installed during bootstrap in user/
settings.lua
. - Removed
sqlite.lua
(telescope-frecency). Please follow the documentation if you encounter issues when migrating the database. - Added gofumpt and goimports (for Go) to the list of general-purpose servers that will be installed during bootstrap.
- Some preset colorschemes have been removed. (#993)
- toggleterm's keymaps now respect
v:count
. - Supported
indent-blankline
v3.
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- fix(install): change user settings during installation by @ayamir in 98e020b
- fix(indent-blankline): error caused by BufReadPost event by @ayamir in 0ce5f35
- fix: change the preset
lua/user
tolua/user_template
by @popjdh in #986 - chore(CI): bump deps versions by @Jint-lzxy in #987
- fix(scripts): consider extreme cases by @Jint-lzxy in #988
- chore(settings): move the config of treesitter to core.settings by @justforlxz in #990
- chore: keep code styles and descriptions consistent by @Jint-lzxy in #991
- feat(plugins)!: remove some preset colorschemes by @ayamir in #993
- feat(null_ls_deps): add
gofumpt
andgopls
by @cherrot in #996 - fix(neodim): pin to v2.0 by @Jint-lzxy in #1003
- fix(ToggleTerm/keymap): respect
v:count
by @ayamir in #1012 - feat(ibl): support
indent-blankline
v3 by @CharlesChiuGit in #1011 - fix(nixos): Add go lang. by @misumisumi in #1016
- refactor(telescope-frecency)!: remove support for
sqlite.lua
by @CharlesChiuGit in #1019 - chore(CI): bump deps versions by @Jint-lzxy in #1020
New Contributors
- @popjdh made their first contribution in #986
- @justforlxz made their first contribution in #990
Full Changelog: v3.4.0...v3.4.1
v3.4.0
SUMMARY
This release mainly aimed at enhancing user customization experience. The description here is rather concise because you can find almost everything you would like to know (with examples) in Wiki: Usage. Feel free to open an issue if you need help!
What's Changed
- refactor (user custom): Proposal for enhancing user customization experience by @misumisumi in #931
- fix(utils): Changed to be able to refer to default settings proposed … by @misumisumi in #973
Full Changelog: v3.3.0...v3.4.0
v3.3.0
❄️ NixOS Support
This update implemented support for NixOS (and other compatible systems as well, via home-manager). Please have a look at the new wiki page (Wiki: NixOS Support) for more information. For those "technical details", some related issues/PRs may be helpful: #886 #906 and #908.
A big Thanks to @misumisumi, @aarnphm and @vollowx for making this happen!
Miscallaneous
Plugin & Setting updates.
• Added symbols-outline.nvim to replace Lspsaga outline
(for better UI consistency and avoid too fast plugin iterations);
• Added glance.nvim to replace Lspsaga *_definitions
(same as above).
• Implemented a switch to conveniently control copilot inside settings.lua
(#930).
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- fix(dap-keymap): local-mapping issues on nvim nightly by @Jint-lzxy in #907
- fix(rainbow_delims): follow healthcheck suggestions by @Jint-lzxy in #911
- fix: only disable autoclose for specific filetypes by @ayamir in #916
- fix(toggleterm):
start_in_insert
not working by @Jint-lzxy in #919 - bufferline: disable enforce_regular_tabs to fix unique name not working by @YuCao16 in #925
- feat(plugins): add
symbols-outline.nvim
by @Jint-lzxy in #921 - feat(plugins): add
Glance.nvim
by @Jint-lzxy in #920 - revert(autoclose): temporal fix for regression introduced by #916 by @Jint-lzxy in #935
- fix(rainbow_delims): specify thresholds for all fts by @Jint-lzxy in #934
- feat: add setting for copilot enable or not. by @ayamir in #930
- feat: multi window support for hop by @fecet in #936
- fix(cmp): add missing category
latex_symbols
by @Jint-lzxy in #942 - feat(lspsaga): make codeaction effective linewise by @Jint-lzxy in #943
- feat(rust): introduce autoclose for operator< by @Jint-lzxy in #944
- feat!: implement NixOS support by @misumisumi in #906
New Contributors
Full Changelog: v3.2.0...v3.3.0
v3.2.0
Make debugging in Neovim great again
This is just a maintenance release w/ regular housekeeping and bug fixes. But there's one thing I want to mention here - improved debugging experience. (We assume you have already read and understood :h dap.txt
).
- We now support integrated terminals right inside neovim! This addresses many previous issues like #416, #440, and #592. To use the terminal, move your cursor to the buffer named
[dap-terminal] <profile-name>
(bottom left corner), enter insert mode and use that like a normal terminal (stdin
andstdout
are connected to that buffer if supported).- Note that since delve currently does NOT support IO redirection, Go programs need to be explicitly attached to an external debugger to directly interact with delve. (Details: mfussenegger/nvim-dap#987)
- While debugging,
K
(responsible forrequire('dapui').eval()
, evaluate expression under cursor/selection) is set as a session-local keymap (mode:n|v
) when a session initiates. - There's a new entry in
settings.lua
, namelydap_deps
. This is almost similar to the two above, mainly providing a centralized place to manage your debug adaptors (clients). They'll be installed and configured during bootstrap (unless the corresponding user config, with the same name, is provided inmodules/configs/tool/dap/clients/
). Refer to the following for more information. - Users may supply their customized configurations in
modules/configs/tool/dap/clients/
. The fname*.lua
MUST match the name insettings.lua
. Check this link for all supported DAPs, and take a look at other files in this folder for examples.- Caveat: To set up your clients correctly, you should at least understand
:h dap.txt
or things may work in unexpected ways. Simply copying other configs is usually not enough.
- Caveat: To set up your clients correctly, you should at least understand
- Since configuring dap requires non-trivial amount of work, we wrote several setups (for
C-family
languages,Go
andPython
) that work out-of-the-box and should cover most use cases. If you have any questions regarding setting up your debug client, feel free to open an issue for this.
Miscallaneous
Due to the rapid plugin iterations, these changes are made. Refer to upstream CHANGELOG
s for more information.
- Due to upstream policy changes, please make sure you have a Rust Toolchain installed via
rustup
. Otherwise, unexpected things may happen. More info: https://www.rust-lang.org/tools/install. - There's a new usercmd
:NullLsToggle
to toggle Null-ls sources (Similar toLspStop
/LspStart
). - Fixed input delay while typing (cmp-related issue).
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- chore(assets): put
dots.tutor
under the rtp by @Jint-lzxy in #837 - feat(catppuccin): add
nvim-treehopper
support by @Jint-lzxy in #841 - workaround(lsp-signature)!: fix input delay of nvim-cmp by @Jint-lzxy in #840
- perf(lualine): more efficient
has_git
checks by @Jint-lzxy in #838 - fix(ui): sync lazy's colorscheme with settings. by @ayamir in #849
- chore(plugins): update plugins with maintained fork. by @ayamir in #848
- migrate: install
rustfmt
fromrustup
(#842) by @CharlesChiuGit in #845 - fix(null-ls): specify
rustfmt
manually by @Jint-lzxy in #852 - feat(catppuccin): use upstream nvchad style by @nullchilly in #855
- feat(lspsaga): support v0.3 by @Jint-lzxy in #857
- feat(ui)!: improve user experience wrt transparent bg by @Jint-lzxy in #865
- perf!: consolidated updates to address performance issues by @Jint-lzxy in #868
- perf(pack): update
nvim-bufdel
lazy-loading events. by @CharlesChiuGit in #874 - feat(null-ls): usercmd
:NullLsToggle
to toggle sources by @Jint-lzxy in #872 - feat(lspsaga): enable titles for Nvim >=0.9 by @Jint-lzxy in #875
- fix(lspkind):
TypeParams
shall becolors.blue
(FNC) by @Jint-lzxy in #883 - chore(treesitter): cleanup by @Jint-lzxy in #891
- perf(lsp_signature): fix input delay by @Jint-lzxy in #890
- feat(lualine): add icon for PyEnv by @Jint-lzxy in #892
- fix(provider): leave provider specifications to user by @misumisumi in #887
- perf(lspsaga): align options with official doc and update config by @CharlesChiuGit in #898
- feat(dap)!: support integrated terminals (io in neovim) by @Jint-lzxy in #877
- fix(dap-keymap): properly create and destroy keymaps by @Jint-lzxy in #902
- fix(dap-keymap): simplify keymap implementation by @Jint-lzxy in #905
New Contributors
- @nullchilly made their first contribution in #855
- @misumisumi made their first contribution in #887
Full Changelog: v3.1.0...v3.2.0
v3.1.0
SUMMARY
This release mainly brings about a (new) tidy and unified UI while maintaining backward compatibility. (List of changes made: #698)
In addition to this, other changes include:
- Improved user experience for the DAPs (#777).
- The default
Python
LSP has changed frompyright
topylsp
. When installingpylsp
for the first time, we will also install its dependencies, so do NOT exitnvim
until the installation is successful.pyright
can be removed fromMason
now. - Replaced rmagatti/auto-session with olimorris/persisted.nvim to provide more powerful session management.
- Enabled the
ghost_text
feature of nvim-cmp. - Enabled signs support for nvim-scrollview (#808).
FormatToggle
has its own keymap! -<A-f>
.settings.lua
:- Now format disabled dirs may contain |regexps| (#813);
- Notification after format is now configurable. Entry for this:
format_notify
; - Live diagnostics are now configurable. Entries for this:
diagnostics_virtual_text
anddiagnostics_level
.
- All executables will now be searched on
$PATH
. However, using full path(s) is still recommended and is potentially faster. - Now LSP-related keymaps will only be registered during
LspAttach
. - Reorganized custom comparators for nvim-cmp to provide a well-sorted completion list. (nvim-cmp, #746)
- Maximum number of stacked messages for fidget is now limited to
3
for each registered server.
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- fix(lsp): set default python lsp to
pylsp
, avoid high CPU load caused byjedi
. by @ayamir in #724 - fix(auto-session): fix command names by @Jint-lzxy in #728
- feat(cmp): enable
experimental.ghost_text
by @Jint-lzxy in #733 - chore(keymap): lsp keymap should effective at
LspAttach
event by @Groveer in #735 - fix(catppuccin): use transparent background for
TroubleNormal
by @Groveer in #737 - feat(neodim): support v2 by @Jint-lzxy in #739
- chore(wsl): use Windows native way to yank and paste. by @ayamir in #736
- feat!: use executables on
$PATH
by @Groveer in #738 - feat(cmp): reimplement comparators for completion entries by @ayamir in #746
- feat: load
SessionLens
manually via user command by @ayamir in #745 - fix(vim_fn): check return values of
vim.fn
against 1 by @Jint-lzxy in #747 - pref(keymap): move gitsigns's keymap to
keymap/ui.lua
by @Groveer in #748 - feat: add
FormatToggle
keymap (#750) by @Groveer in #751 - feat: make the notification after format configurable. by @ayamir in #754
- fix(neodim): prevent
blend_color=NONE
when set trans_bg to true, close #758 by @CharlesChiuGit in #760 - fix: adapt to cmp interface change, set max_view_entries instead. by @ayamir in #768
- fix: merge shada after VimLeave, #612. by @ayamir in #769
- feat: set default config for pylsp. by @ayamir in #770
- feat(ui)!: unify UI components: cmp, wilder, floats by @Jint-lzxy in #772
- chore(lsp): set lower pylsp severity by @fecet in #774
- chore(pylsp): cleanup by @Jint-lzxy in #775
- feat: make live diagnostics level configurable by @ayamir in #776
- fix: correct path for pylsp plugins on windows, close #778. by @ayamir in #779
- perf: find path efficiently for clangd argus, close #765. by @ayamir in #780
- fix(lsp): inform user for pylsp plugin install failures by @Jint-lzxy in #782
- pref(cmp): reduce max entry count to 150 by @Jint-lzxy in #785
- feat(ui)!: unify UI component
telescope
by @Jint-lzxy in #783 - fix(cmp.async): regression (
throttle.sync
) by @Jint-lzxy in #794 - feat(fidget): limit maximum number of stacked messages by @Jint-lzxy in #796
- pref(fidget): use
legacy
branch before complete refactor by @Jint-lzxy in #795 - refactor: make debug functionality better. by @ayamir in #777
- pref(bigfile): upstream changes by @Jint-lzxy in #799
- feat(ui)!: unify UI component
nvim-tree
by @volpan in #800 - feat(ui): unify UI component indent-blankline by @Jint-lzxy in #803
- fix(settings): enable most features by default by @Jint-lzxy in #804
- fix(ui): telescope ui not adapt transparent background by @Groveer in #807
- feat(scrollview): enable signs support by @Jint-lzxy in #808
- feat(CI): add Luacheck for code linting by @Jint-lzxy in #809
- feat: use persisted to provide more powerful session management. by @ayamir in #810
- feat(formatting): format disabled dirs may contain regexps by @Jint-lzxy in #813
- fix(ts-context): always call
setup
on start (#828) by @Saafo in #830 - feat(ui)!: unify other UI components by @volpan in #833
- fix(options): correct scroll behaviors of (h)splits by @Jint-lzxy in #835
- feat(utils): auto-refresh builtin palette on
ColorScheme
by @Jint-lzxy in #831
Full Changelog: v3.0.0...v3.1.0
v3.0.0
This release mainly targeted Release v3.0.0 · ryanoasis/nerd-fonts.
- Please update your installed nerd font(s) to v3.0.0 so that the icons can be rendered properly.
- Starting from v3.0.0, please use the
Mono
variant (Nerd Font Mono or NFM) as your GUI font. - Added setting entry
diagnostics_virtual_text
. You can turn off live LSP diagnostics on the right side of the code here. - New plugin nvim-treesitter-context.
pright
is now replaced withjedi_language_server
. Please open:Mason
and manually uninstallpright
(place your cursor onpright
and press X)
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- feat: add setting option for inline_diagnostic_virtual_text. by @ayamir in #706
- feat(nvim-treesitter): add nvim-treesitter-context by @Saafo in #707
- chore(settings): replace
pright
withjedi_language_server
. by @ayamir in #713 - fix(icons)!: update icon codepoints by @Jint-lzxy in #447
Full Changelog: v2.3.0...v3.0.0
v2.3.0
SUMMARY
This release mainly targets NVIM v0.9
's updates: #627. Although we haven't completed all the to-dos yet, all updates that would directly affect user experience have been completed (#680 (comment)).
Breaking Changes
- The
0.7
branch has been deprecated and will not receive any support from now on. Please update your Neovim build as soon as possible. - The
0.8
branch will continue to receive major bug fixes, but will not accept any new features. As always, we recommend using the latest build when applicable. - We now support defining multi-mode keymaps at once. Refer to #603 for more information.
- The behavior of handling continuous user input has changed - which-key.nvim will only take over user input after
timeoutlen
has passed. More information: #625. - Initial support for LSP Semantic Tokens has been implemented. You may sometimes observe incorrect syntax highlightings - this is expected. Please wait until #676 is merged, this will consummate support for semantic tokens.
- Due to an upstream breaking change, we've made some changes to the appearance and operation (setup) of nvim-cmp. Please refer to #637.
- For new/modified options and their usage, have a look at the upstream release notes for more information.
- Now you may use
<A-s>
or:SudaWrite
to write files with administrator privileges. Windows users must installpsutils
so that this keymap/command could work properly. More information: #641.
Patches & New Features
- Fixed the issue where terminals (and shell bang
:!
) are unable to handle Unicode characters on Windows. - Now hop.nvim can be used in visual mode.
- Added/Modified several core keymaps. [view this patch]
- We now allow customization of
transparent_background
insettings.lua
. - Now auto-session will remember previously opened buffers.
Have a look at the "What's Changed" section for minor fixes.
What's Changed
- feat(lspsaga): support v0.2.9 by @Jint-lzxy in #601
- perf(icon): add cmp icons for
codeium
andtabnine
by @CharlesChiuGit in #600 - feat: multimode keymap by @fecet in #603
- fix: easyalign keymap by @fecet in #604
- feat: use hop in visual mode by @fecet in #607
- fix: copilot ignore indent by @fecet in #608
- fix(cmp): handle LuaSnip jump failures by @Jint-lzxy in #611
- refactor(keymap): convert single-mode to multi-mode where possible by @kang8 in #605
- Remove
popup.nvim
from dependencies oftelescope.nvim
by @hehelego in #613 - fix(luasnip): config
updateevents
toupdate_events
by @2nthony in #620 - fix(which-key): properly handle continuous user input by @Jint-lzxy in #625
- fix: use
with_noremap
in term mode exiting by @huge-pancake in #629 - feat!: add initial support for lsp semantic tokens by @Jint-lzxy in #633
- feat(utils): use neovim builtin to get highlights by @Jint-lzxy in #632
- feat(scripts): support v0.9 by @Jint-lzxy in #630
- feat(options): support new options shipped with v0.9 by @Jint-lzxy in #631
- fix(cmp): support dynamic
kind_text
from cmp source:treesitter
, fix #624 #634 by @CharlesChiuGit in #637 - fix: remove deprecated options for nvim-tree. by @ayamir in #645
- chore(kind_text): cleanup by @Jint-lzxy in #648
- feat(alpha): add custom highlight groups by @Jint-lzxy in #650
- fix: write file with sudo by @ayamir in #641
- minor patch by @CharlesChiuGit in #652
- Perf: minor migrate to 0.9 by @CharlesChiuGit in #655
- chore(mapping): cleanup by @Jint-lzxy in #657
- fix(icon): update invalid cmp icon by @CharlesChiuGit in #665
- chore/lspsaga_move by @CharlesChiuGit in #667
- fix: paint word boundary in python by @fecet in #669
- fix(bufferline):
show_buffer_default_icon
is now deprecate by @CharlesChiuGit in #673 - feat(formatting): notify users for files under disabled dirs by @Jint-lzxy in #678
- fix(font-encoding): fix invalid characters on windows, fix #639 by @CharlesChiuGit in #659
- feat(settings): allow customization of
transparent_background
by @AngelontheRoad in #687 - fix(bufferline): use defaults for
get_element_icon
by @Jint-lzxy in #685 - feat(scripts): abort for nvim v0.7 and its antecedent by @Jint-lzxy in #686
- feat(auto-session): remember opened buffers by @Saafo in #688
- fix(catppuccin): properly detect
g:colors_name
by @Jint-lzxy in #695
New Contributors
- @fecet made their first contribution in #603
- @kang8 made their first contribution in #605
- @hehelego made their first contribution in #613
- @2nthony made their first contribution in #620
- @huge-pancake made their first contribution in #629
- @Saafo made their first contribution in #688
Full Changelog: v2.2.1...v2.3.0