A lightweight and mordern neovim configuration for my personal usage.
![image](https://private-user-images.githubusercontent.com/8613196/256857863-26a60b9a-caa6-41e2-ab26-9695de968df4.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQyOTc1MTksIm5iZiI6MTcyNDI5NzIxOSwicGF0aCI6Ii84NjEzMTk2LzI1Njg1Nzg2My0yNmE2MGI5YS1jYWE2LTQxZTItYWIyNi05Njk1ZGU5NjhkZjQucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgyMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MjJUMDMyNjU5WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9ZTEwODFjMDA2YjYwYTkxZmNjZDFmM2E3ZTJhZTk1ZTY4NjIzMWYxMjVjZTNjZGViYmRhOTUwZDU1ZTRmZDExMyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.jH515UQmFaM2c7gYGvs-R7MZZK7RYDl-1zNQEu3wgTs)
- Neovim >= 0.8.0 (needs to be built with LuaJIT)
- Git >= 2.19.0 (for partial clones support)
- Nerd Font (for statusline or file explorer plugins icons)
git clone https://github.com/zhaohongxuan/nvim ~/.config/nvim --depth 1
~/.config/nvim (main*) » tree xuan@xuans
.
├── README.md
├── init.lua
├── lazy-lock.json
└── lua
├── core
│ ├── autocmds.lua
│ ├── keymaps.lua
│ └── options.lua
└── plugins
├── configs
│ ├── alpha-nvim.lua
│ ├── autopairs.lua
│ ├── bufferline.lua
│ ├── catppuccin.lua
│ ├── cmp.lua
│ ├── comment.lua
│ ├── gitsigns.lua
│ ├── hop.lua
│ ├── lsp.lua
│ ├── lualine.lua
│ ├── nvim-tree.lua
│ ├── telescope.lua
│ └── treesitter.lua
└── init.lua
5 directories, 20 files
- the
init.lua
is the entrance of the nvim configuration - the
plugins-setup.lua
contains all plugins init - the
keymaps.lua
contains all keymap
- Neovim Theme schema via tokyonight
- Plugin management via Lazy.nvim.
- Code completion via nvim-cmp.
- Auto pair via nvim-autopairs
- Language server protocol (LSP) support via nvim-lspconfig.
- Git integration via vim-signs.
- Fuzzy searching via Telescope.
- Snazzy buffer line via bufferline
- Code commenting via vim-commentary.
- Smarter and faster matching pair management (add, replace or delete) via vim-sandwich.
- Fast buffer jump via hop.nvim.
- Toggle terminal during edit session via toggleterm
- Beautiful statusline via lualine.nvim.
- File tree explorer via nvim-tree.lua.
- Code highlighting via nvim-treesitter.
TBD
- Performance
![image](https://private-user-images.githubusercontent.com/8613196/256863915-0af80d8e-668a-4fc2-accf-9aa36e5c4a8a.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQyOTc1MTksIm5iZiI6MTcyNDI5NzIxOSwicGF0aCI6Ii84NjEzMTk2LzI1Njg2MzkxNS0wYWY4MGQ4ZS02NjhhLTRmYzItYWNjZi05YWEzNmU1YzRhOGEucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgyMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MjJUMDMyNjU5WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9NGRjNWQxOTMxYWNhZGZiMzQ4ODVjM2NlY2U2MWM5NmZkYjM5ZmY1YWI2ZmYyNmQwNGJkZDMwNjVhNzljYjU0NSZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.NNZyt03lIJsQbqpMrSiHsPU8yendournxD-BtVk9p8Q)
![image](https://private-user-images.githubusercontent.com/8613196/256861808-2763f951-1a9b-4d6a-9bf2-f1b36e233093.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MjQyOTc1MTksIm5iZiI6MTcyNDI5NzIxOSwicGF0aCI6Ii84NjEzMTk2LzI1Njg2MTgwOC0yNzYzZjk1MS0xYTliLTRkNmEtOWJmMi1mMWIzNmUyMzMwOTMucG5nP1gtQW16LUFsZ29yaXRobT1BV1M0LUhNQUMtU0hBMjU2JlgtQW16LUNyZWRlbnRpYWw9QUtJQVZDT0RZTFNBNTNQUUs0WkElMkYyMDI0MDgyMiUyRnVzLWVhc3QtMSUyRnMzJTJGYXdzNF9yZXF1ZXN0JlgtQW16LURhdGU9MjAyNDA4MjJUMDMyNjU5WiZYLUFtei1FeHBpcmVzPTMwMCZYLUFtei1TaWduYXR1cmU9Yzk0MjNkMjNkZTgwNWI0NmM3YTMyNWY5ZTFmZjU2MzY4Y2ZlMDgwYmYzYjUwNGVlNGM4NjJmMWExYzcwMDJjYyZYLUFtei1TaWduZWRIZWFkZXJzPWhvc3QmYWN0b3JfaWQ9MCZrZXlfaWQ9MCZyZXBvX2lkPTAifQ.7VCv8UX2QsNoA4UB0UbkmFCRDYDqoh0_ZAUUk-Ta4zA)