A well configured and structured Neovim.
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.
rainbowhxch/accelerated-jk.nvim
max397574/better-escape.nvim
sindrets/diffview.nvim
abecodes/tabout.nvim
edluffy/specs.nvim
junegunn/vim-easy-align
to echasnovski/mini.align
RRethy/vim-illuminate
to tzachar/local-highlight.nvim
gelguy/wilder.nvim
to hrsh7th/cmp-cmdline
folke/neoconf.nvim
for pre project custom lsp
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 of nvim-dap-ui
n|<A-j>
and n|<A-k>
are mapped to resize window vertically.n|<A-h>
and n|<A-l>
are mapped to resize window horizontally.n|<A-i>
and n|<A-o>
are mapped to switch opened buffers/tabs.n|<A-S-i>
and n|<A-S-o>
are mapped to move opened buffers/tabs.n|<leader>Ss
, n|<leader>Sp
, v|<leader>Sp
and n|<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
and n|<leader>Wl
are mapped to move splitted windows.n|<leader>ld
to n|<leader>lx
for lsp: Line diagnostic
.n|<leader>ci
to n|gci
for lsp: Show incoming calls
.n|<leader>co
to n|gco
for lsp: Show outcoming calls
.n|<leader>cc
to n|<leader>C
for jump: Goto two chars
.n|<leader>G
to n|<leader>gG
for git: Open git-fugitive
.n|<leader>g
to n|<leader>gg
for git: Open lazygit
.n|<leader>tr
to n|<leader>ll
for lsp: Show lsp references
.n|<leader>td
to n|<leader>ld
for lsp: Show document diagnostics
.n|<leader>tw
to n|<leader>lw
for lsp: Show workspace diagnostics
.n|<leader>tq
to n|<leader>lq
for lsp: Show quickfix list
.n|<leader>tl
to n|<leader>lL
for lsp: Show loclist
.n|<leader>fn
to n|<leader>bn
for buffer: New
.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>
and i|<A-h>
are unmapped, they are free now!dashboard_image
easily in lua/user/settings.lua
and check the details in wiki.v|<leader>fs
in telescope.lualine
which makes ui more concise and clearer.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.
settings.lua
. by @ayamir in https://github.com/ayamir/nvimdots/pull/1123
dap
and dap_ui
integrations by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1129
BufDel %d
instead of bdelete! %d
by @Cyberczy in https://github.com/ayamir/nvimdots/pull/1136
<leader>
to <Nop>
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1146
o:background
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1152
scrollview_
prefix by @Cyberczy in https://github.com/ayamir/nvimdots/pull/1162
none-ls
until upstream deprecation is finished by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/1184
none-ls
to the correct commit to allows the suppression option to work properly by @csyJoy in https://github.com/ayamir/nvimdots/pull/1187
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.5.0...v3.6.0
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:
vim.fn.stdpath("data") .. "/file_frecency.sqlite3"
) and even SQLite3 itself, if you wish.Neovim
icon has been added to the icons library (and can be accessed via require("modules.utils.icons").get("misc").Neovim
). Please make sure you have installed NF >v3.1.0 to display this icon correctly.
format_modifications_only
for more information.lua/user/settings.lua
). Please see their corresponding entries for more information.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.
chunk
) by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1024
<C-w>
with hjkl to navigate under t
mode. by @ayamir in https://github.com/ayamir/nvimdots/pull/1029
neovide
and gui
config by @ayamir in https://github.com/ayamir/nvimdots/pull/1033
type(value)==table
before recursion. by @ayamir in https://github.com/ayamir/nvimdots/pull/1039
flash.nvim
to replace clever-f.vim
by @YuCao16 in https://github.com/ayamir/nvimdots/pull/926
user/configs/formatters
. by @ayamir in https://github.com/ayamir/nvimdots/pull/1051
ipairs
by @csyJoy in https://github.com/ayamir/nvimdots/pull/1052
neovim
icon in nerdfont v3.1.0 by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/1072
max_lines
to 3 by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1075
Neovim
(U+E6AE) by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1082
null-ls
to none-ls
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1088
nvim-bqf
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/1091
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.4.1...v3.5.0
This is a maintenance release.
settings.lua
.sqlite.lua
(telescope-frecency). Please follow the documentation if you encounter issues when migrating the database.v:count
.indent-blankline
v3.Have a look at the "What's Changed" section for minor fixes.
lua/user
to lua/user_template
by @popjdh in https://github.com/ayamir/nvimdots/pull/986
gofumpt
and gopls
by @cherrot in https://github.com/ayamir/nvimdots/pull/996
v:count
by @ayamir in https://github.com/ayamir/nvimdots/pull/1012
indent-blankline
v3 by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/1011
sqlite.lua
by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/1019
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.4.0...v3.4.1
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!
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.3.0...v3.4.0
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.
start_in_insert
not working by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/919
symbols-outline.nvim
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/921
Glance.nvim
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/920
latex_symbols
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/942
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.2.0...v3.3.0
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
).
[dap-terminal] <profile-name>
(bottom left corner), enter insert mode and use that like a normal terminal (stdin
and stdout
are connected to that buffer if supported).
K
(responsible for require('dapui').eval()
, evaluate expression under cursor/selection) is set as a session-local keymap (mode: n|v
) when a session initiates.settings.lua
, namely dap_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 in modules/configs/tool/dap/clients/
). Refer to the following for more information.modules/configs/tool/dap/clients/
. The fname *.lua
MUST match the name in settings.lua
. Check this link for all supported DAPs, and take a look at other files in this folder for examples.
:h dap.txt
or things may work in unexpected ways. Simply copying other configs is usually not enough.C-family
languages, Go
and Python
) 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.
rustup
. Otherwise, unexpected things may happen. More info: https://www.rust-lang.org/tools/install.:NullLsToggle
to toggle Null-ls sources (Similar to LspStop
/LspStart
).Have a look at the "What's Changed" section for minor fixes.
dots.tutor
under the rtp by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/837
nvim-treehopper
support by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/841
has_git
checks by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/838
rustfmt
from rustup
(#842) by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/845
rustfmt
manually by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/852
nvim-bufdel
lazy-loading events. by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/874
:NullLsToggle
to toggle sources by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/872
TypeParams
shall be colors.blue
(FNC) by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/883
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.1.0...v3.2.0
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:
Python
LSP has changed from pyright
to pylsp
. When installing pylsp
for the first time, we will also install its dependencies, so do NOT exit nvim
until the installation is successful. pyright
can be removed from Mason
now.ghost_text
feature of nvim-cmp.FormatToggle
has its own keymap! - <A-f>
.settings.lua
:
format_notify
;diagnostics_virtual_text
and diagnostics_level
.$PATH
. However, using full path(s) is still recommended and is potentially faster.LspAttach
.3
for each registered server.Have a look at the "What's Changed" section for minor fixes.
pylsp
, avoid high CPU load caused by jedi
. by @ayamir in https://github.com/ayamir/nvimdots/pull/724
experimental.ghost_text
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/733
LspAttach
event by @Groveer in https://github.com/ayamir/nvimdots/pull/735
TroubleNormal
by @Groveer in https://github.com/ayamir/nvimdots/pull/737
$PATH
by @Groveer in https://github.com/ayamir/nvimdots/pull/738
SessionLens
manually via user command by @ayamir in https://github.com/ayamir/nvimdots/pull/745
vim.fn
against 1 by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/747
keymap/ui.lua
by @Groveer in https://github.com/ayamir/nvimdots/pull/748
FormatToggle
keymap (#750) by @Groveer in https://github.com/ayamir/nvimdots/pull/751
blend_color=NONE
when set trans_bg to true, close #758 by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/760
telescope
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/783
throttle.sync
) by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/794
legacy
branch before complete refactor by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/795
nvim-tree
by @volpan in https://github.com/ayamir/nvimdots/pull/800
setup
on start (#828) by @Saafo in https://github.com/ayamir/nvimdots/pull/830
ColorScheme
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/831
Full Changelog: https://github.com/ayamir/nvimdots/compare/v3.0.0...v3.1.0
This release mainly targeted Release v3.0.0 · ryanoasis/nerd-fonts.
Mono
variant (Nerd Font Mono or NFM) as your GUI font.
diagnostics_virtual_text
. You can turn off live LSP diagnostics on the right side of the code here.pright
is now replaced with jedi_language_server
. Please open :Mason
and manually uninstall pright
(place your cursor on pright
and press X)
Have a look at the "What's Changed" section for minor fixes.
pright
with jedi_language_server
. by @ayamir in https://github.com/ayamir/nvimdots/pull/713
Full Changelog: https://github.com/ayamir/nvimdots/compare/v2.3.0...v3.0.0
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 (https://github.com/ayamir/nvimdots/pull/680#issuecomment-1520007995).
0.7
branch has been deprecated and will not receive any support from now on. Please update your Neovim build as soon as possible.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.timeoutlen
has passed. More information: https://github.com/ayamir/nvimdots/pull/625.<A-s>
or :SudaWrite
to write files with administrator privileges. Windows users must install psutils
so that this keymap/command could work properly. More information: https://github.com/ayamir/nvimdots/pull/641.:!
) are unable to handle Unicode characters on Windows.transparent_background
in settings.lua
.Have a look at the "What's Changed" section for minor fixes.
codeium
and tabnine
by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/600
popup.nvim
from dependencies of telescope.nvim
by @hehelego in https://github.com/ayamir/nvimdots/pull/613
updateevents
to update_events
by @2nthony in https://github.com/ayamir/nvimdots/pull/620
with_noremap
in term mode exiting by @huge-pancake in https://github.com/ayamir/nvimdots/pull/629
kind_text
from cmp source: treesitter
, fix #624 #634 by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/637
show_buffer_default_icon
is now deprecate by @CharlesChiuGit in https://github.com/ayamir/nvimdots/pull/673
transparent_background
by @AngelontheRoad in https://github.com/ayamir/nvimdots/pull/687
get_element_icon
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/685
g:colors_name
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/695
Full Changelog: https://github.com/ayamir/nvimdots/compare/v2.2.1...v2.3.0
This release contains only bug fixes and performance optimizations. Namely:
cmp.close
was changed from <C-e>
to <C-w>
.
@variable.builtin
highlight group for catppuccin. (From fg = cp.red
to fg = cp.flamingo
)vim.schedule_wrap
)<Tab>
still calls LuaSnip outside of a snippet. (#588)Have a look at the "What's Changed" section for minor fixes.
pcall
for error handling by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/555
cmp.close
by @Jint-lzxy in https://github.com/ayamir/nvimdots/pull/598
Full Changelog: https://github.com/ayamir/nvimdots/compare/v2.2.0...v2.2.1