This repo is no longer maintained. I have switched to a MacBook Pro so this New Repo will contain all my latest configs.
This is my personal Neovim config for Ubuntu systems. As a CS undergrad at Tsinghua currently the config is built around course projects, including Python, C/C++, and some Assembly code.
The config is purely written in Lua, as well as most plugins used. However I could not resist the quality of tpope's and other great Vimscript plugins, so I'm not strictly sticking to Lua for a specific plugin's language.
Attribute | Current Value |
---|---|
Version | Neovim 0.7.0 |
Linux System | Ubuntu 20.04 LTS on Windows 11 WSL |
I starred every plugin I use to show support. I recommend everyone else to do so as well.
- File Tree: nvim-tree.lua
- Status Line: lualine.nvim
- Buffer Line (Tab Bar): bufferline.nvim
- Better Syntax Highlighting: nvim-treesitter
- Paired Brackets: nvim-autopairs
- Rainbow-Colored Brackets: nvim-ts-rainbow
- Indentation
- Auto determine indent width of file: intent-o-matic
- Indentation guides: indent-blankline.nvim
- Start Page and Project Management: vim-startify
- Git Sign Column: gitsigns.nvim
- Project-scope Find and Replace: nvim-spectre
- Syntax-specific Commenting: Comment.nvim
- Fuzzy Finding: telescope.nvim
- Integrated Terminal: toggleterm.nvim
- Language Server Protocol (LSP):
- nvim-lspconfig: to enable LSP.
- nvim-lsp-installer: to install LSP servers.
- Autocompletion:
- nvim-cmp: basic completion plugin. Supported completion sources:
- cmp-nvim-lsp: completion from LSP server.
- cmp-buffer: completion from open buffers.
- cmp-path: completion from path of file system.
- cmp-calc: calculator.
- cmp-omni: omni-completion (for Vimtex).
- cmp-cmdline: command line completion.
- cmp-luasnip: snippet completion.
- cmp-nvim-lsp-signature-help: parameter types when calling a function.
- nvim-cmp: basic completion plugin. Supported completion sources:
- Snippets:
- LuaSnip: snippet engine
- friendly-snippets: snippet bank
- Markdown: markdown-preview.nvim
: vimtex
- RISC-V Assembly: riscv.vim
Colorscheme: onebuddy
- Show Color of Hex Value as Highlight: nvim-colorizer.lua
- Don't Change Window Layout When Closing Buffer: vim-bbye
- Choose Which Buffers to Close: close-buffers.vim
- Package Manager: packer.nvim
- Icons: nvim-web-devicons
- Lua Function Library: plenary.nvim
- Fix LSP Doc Highlight: FixCursorHold.nvim
- Speeding Up: impatient.nvim
- Colorscheme Utility: colorbuddy.nvim
- Faster Fuzzy Finding: telescope-fzf-native.nvim
tpope's Great Plugins
- vim-surround helps me quickly change the surrounding brackets /
environment.
- vim-repeat can repeat series of actions with
.
keystroke.
-
Debug tool: thinking about Vimspector or nvim-dap. Also heard about
termdebug
which seems to not need any plugins. -
Vimtex: forward and backward search