Why Use NeoVim?
- I want to edit code remotely on a very lightweight machine over SSH
- I want to learn something new
- I don’t want to buy into Microsoft+Github ecosystem (see https://fosstodon.org/@[email protected]/111565769547027729)
Installing NeoVim
See instructions here - I wanted to make it available globally on my system:
Grabbing the AppImage
Adding to Shell PATH
I use ZSH so I want to add nvim to my ~/.zshrc
:
export PATH=/opt/nvim/bin:$PATH
I can reload my zsh config with source ~/.zshrc
or open a new terminal.
LazyVim
LazyVim is a package of neovim plugins
Installing LazyVim for the First Time
Essentially we want to follow the instructions from LazyVim in the official lazyvim installation docs :
Back up the existing neovim stuff
Clone the project
Remove the existing git folder and reinitialise ready to store in our own git project
Using which-key
which-key
allows you to navigate around the different menus and settings inside neovim and access plugins etc. By default it is mapped to <space>
when not in editing mode.
Mason
Mason is used for managing language server runtimes. Access it by typing <space> c m
LazyExtras
use the command :LazyExtras
to install a bunch of language runtimes out of the box without the need to use mason or do any manual config
”AI Assistant” Support
Using LSP-AI
Using with Termux
See termux nerd installer tool