Simple but featured. Focused on ergonomics, mnemonics and consistency.
Cherry pick the lines you need and totally understand.
Always a WIP 🏗
For the colorscheme, check arctic.nvim. For more showcases, check showcases section below.
- Beautiful colorscheme with my own arctic.nvim
- Nvim builtin LSP client configured by nvim-lspconfig
- Treesitter support nvim-treesitter
- Powerful auto-completion backed by nvim-cmp
- Blazing fast fuzzy finder by integrating fzf.vim and telescope.nvim
- Fully Git integration with vim-fugitive, gitsigns.nvim, vim-flog, etc
- Consolidated code formatting with conform.nvim
- Modern fold with nvim-ufo
- Better quickfix window with nvim-bqf
- Comprehensive statusline with lualine.nvim
- Better glance at search information with nvim-hlslens
- Snippet engine with LuaSnip
- Smart code comment with Comment.nvim
- Undo history visualizer with undotree
- Improved code search via vim-grepper, vim-asterisk, etc
- Enhanced text objects with targets.vim, etc
- File explorer with oil.nvim
- Markdown preview with markdown-preview.nvim
- ...
I'm a minimalist, adhering to the KISS principle and embracing the philosophy of "do one thing and do it better". I only install and use plugins that are absolutely essential. I dislike those all-in-one plugins. I prefer plugins that enhance the native functionality of Vim and strongly avoid those that modify Vim's original features. For functionalities that can be implemented with just a few lines of code, I prefer to implement them myself, such as LSP progress, lightbulb and indent guide.
To see all the plugins I am using 👉 plugins
I assign the key mappings rationally aiming to make them efficient and easy to remember.
-
Multiple leader keys
In addition to
<Space>
that is the general leader key,,
serves as the leader key for git, while<BS>
functions as the leader key for toggling. -
Mnemonic
Key bindings are organized using mnemonic prefixes like
<Leader>b
for buffer,<Leader>f
for fuzzy finder,<Leader>w
for window, and so forth. -
Consistent
Similar functionalities have the same key binding throughout my dotfiles. For example,
,
and.
for moving tabs in both kitty and Neovim.
Blazing fast fuzzy finder via fzf.vim and telescope.nvim
Use fzf
for the performance-critical operations such as files finder and grep, and telescope
for interacting with other plugins such as nvim-navbuddy due to its great ecosystem.
fuzzy-finder.mp4
Ultimate fold with nvim-ufo
Now the fold is asynchronous and powered by LSP with a customizable appearance for the folded line and peek window.
ufo-demo.mp4
Enhanced quickfix window with nvim-bqf
Equip the quickfix with a preview window and an interactive filter (backed by fzf
), and introduce many convenient actions for quickfix.