52 lines
2.1 KiB
Markdown
52 lines
2.1 KiB
Markdown
# neovim config
|
|
I like neovim.
|
|
|
|
My goal with this repo was a relatively hands-free installation of nvim and everything needed to turn it into a decent everyday editor. It's not as feature-rich as something like VS code, but it should serve as a good lightweight alternative for most things I need to do.
|
|
|
|
**Note:** I recently gave this repo a major overhaul because I wanted autocomplete, better LSP support, and for nvim to feel like an actual editor. To view the old version of the config, you can view the `legacy` tag in this git repo
|
|
|
|
## requirements
|
|
* Neovim 0.12+
|
|
* npm installed globally
|
|
* tree-sitter cli (see [here](https://github.com/tree-sitter/tree-sitter/blob/master/crates/cli/README.md))
|
|
* Git, a C compiler, `curl`, `tar`, and `unzip` on your `$PATH`
|
|
|
|
See:
|
|
* https://github.com/folke/lazy.nvim#%EF%B8%8F-requirements
|
|
* https://github.com/nvim-treesitter/nvim-treesitter#requirements
|
|
* https://github.com/mason-org/mason.nvim#requirements
|
|
* https://github.com/mason-org/mason-lspconfig.nvim#requirements
|
|
* https://cmp.saghen.dev/installation#requirements
|
|
|
|
|
|
## installation
|
|
Everything required here is handled in my [install script](https://gitea.jovan04.com/evan/linux-post-install). If you want to install just this config manually:
|
|
```bash
|
|
# install neovim 0.12+
|
|
curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux-x86_64.tar.gz
|
|
sudo rm -rf /opt/nvim-linux-x86_64
|
|
sudo tar -C /opt -xzf nvim-linux-x86_64.tar.gz
|
|
rm nvim-linux-x86_64.tar.gz
|
|
|
|
# add /opt/nvim-linux-x86_64/bin/ to your $PATH
|
|
# (put this in your shell's .rc file)
|
|
export PATH="$PATH:/opt/nvim-linux-x86_64/bin"
|
|
|
|
# install tree-sitter CLI
|
|
curl -LO https://github.com/tree-sitter/tree-sitter/releases/latest/download/tree-sitter-cli-linux-x64.zip
|
|
sudo unzip ./tree-sitter-cli-linux-x64.zip -d /opt/nvim-linux-x86_64/bin/
|
|
rm ./tree-sitter-cli-linux-x64.zip
|
|
|
|
# clone this repo to your nvim config
|
|
git clone https://gitea.jovan04.com/evan/neovim-config ~/.config/nvim
|
|
```
|
|
|
|
## includes
|
|
- Lazy.nvim plugin manager
|
|
- treesitter syntax highlighting and autoindent
|
|
- nvim-lspconfig
|
|
- mason.nvim & mason-lspconfig language server manager
|
|
- blink.cmp autocompletions
|
|
- keybindings (mostly LSP-related)
|
|
|