Neovim
This guide will help you install Neovim and plugins that I use. I frequently work with terminals and I find Vim really helpful when editing code and text without needing a GUI. However, I didn’t have the time and motivation to learn VimScript, but then I heard about Neovim. I have some experience with Lua so I thought that I might give it a try, and this is the result. Note that I am not an experienced Neovim (and Lua) user so expect that there will be occasional bugs.
Platform Compatibility
This setup has been tested on the following platforms:
- Arch Linux
- Fedora Workstation 39/40/41/42
- Kali Linux WSL
- Fedora Linux 42 WSL
- Linux Mint 21
- Termux Android Terminal Emulator
Requirements
- Neovim v0.11.2+
- Git
- gcc or clang
- make
- NodeJS
- Tree-sitter
- composer (Optional; only needed for PHP LSPs and linters)
- .NET SDK (Optional; only needed for
omnisharpLSP.)
Installation
Automatic Customization Guide
- Install the requirements.
- Run the installer.
- Using curl:
bash <(curl -sSf https://raw.githubusercontent.com/Chris1320/SetupGuides-Neovim/main/install) - Using wget:
bash <(wget -q -O - https://raw.githubusercontent.com/Chris1320/SetupGuides-Neovim/main/install)
- Using curl:
- Run
nvimand wait for Lazy to install the plugins. - Check for errors by running
:checkhealth.
Manual Customization Guide
-
Install the requirements.
-
Clone the repository.
git clone https://github.com/Chris1320/SetupGuides-Neovim.git -
Copy the contents of src/ to your
~/.config/nvim/. The directory must look like this:$ tree ~/.config/nvim/ /home/<user>/.config/nvim/ ├── init.lua └── lua ├── config │ ├── autocmds.lua │ ├── keymaps.lua │ ├── lazy.lua │ ├── misc.lua │ ├── options.lua │ └── vars.lua └── plugins └── <plugin-name>.lua 4 directories, 33 files -
Run
nvim. lazy.nvim will now update, install, and compile the plugins. -
To check if everything is installed correctly, enter
:checkhealth.