It all started with this video: 0 to LSP : Neovim RC From Scratch
This is my personal LUA-based configuration for Neovim that I use on a daily basis as Python, Rust, and other languages - (not Java, for that I use IntelliJ). This setup is the product of continuous enhancements based on what I have found in configurations shared by other users. It is an ongoing project that may evolve with time as I come across new plugins, refine mappings, or refactor configuration files. Feel free to fork this repository and adapt it to your own needs.
- Install latest NeoVIM version or Ubuntu
- Clone this repository into
~/.config/nvim
: - Install ripgrep into your OS. It is required by some Telescope plugin searching modes.
- Open neovim, then close it, then open it again (packer should be installed)
- Waka is going to ask you for your API key... if you don't use it, delete the line on
packer.lua
- Run :Mason to select the linters/lsp/dap to use
This is my first time setting up this repo, so I never really tried the instructions above. If you run into any trouble, just let me know.
Take a look at each file inside the folder after/pluging/
and at remap.lua
https://github.com/rose-pine/neovim
- Telescope
Highly extendable fuzzy finder over lists
- Nerdtree
Nice file system explorer with lateral tab
- Lazy Git
Nice UI to control your git repo
- Harpoon
Switch between files very fast
- Undo Tree
Undo with superpowers. I don't use it very much... but when I do use, I'm so happy to have it.
- Fugitive
Git commands... but I rather use lazygit
- [LSP]
Many lsp configurations... I use MASON to simplify things
- Wakatime
Plugin to track the time you spent on projects/languages... great tool to have fun with
- Treesitter
Tree file explorer (nice lateral menu)
- Cellular Automaton
visual effect on your ide
- Zen Mode
Make it feel like you are really focusing on something
sudo apt-get install software-properties-common
sudo add-apt-repository ppa:neovim-ppa/unstable
sudo apt-get update
sudo apt-get install neovim
Below plugins seem nice, but I still haven't try they
- Aerial
Code outline window for skimming and quick navigation
- WhichKey
Displays a popup with possible key bindings of the command you started typing
- Nvim-jdtls
Extensions for the built-in LSP support in Neovim for eclipse.jdt.ls
- Nvim-dap
Debug Adapter Protocol client implementation for Neovim
- Others...