nvim-config/README.md

80 lines
1.9 KiB
Markdown

# Neovim config
This repo contains my Neovim config only.
You still need Neovim and a few system tools installed.
It is meant to work after a plain git clone plus the bootstrap script.
## Fastest setup
```bash
git clone https://git.sailorpunisher.com/sailor/nvim-config.git ~/nvim-config
sh ~/nvim-config/bootstrap.sh
nvim
```
`bootstrap.sh` installs the dependencies for your distro, then installs the config.
If you already have the repo cloned and only want to refresh the config:
```bash
sh ~/.config/nvim/install.sh
```
## What gets installed
- `git`
- `neovim`
- `nodejs` + `npm` (for Mason / `bashls` / TypeScript / JSON / YAML LSPs)
- `ripgrep`
- `fd`
## Debian / Ubuntu
```bash
sudo apt update
sudo apt install -y git neovim nodejs npm ripgrep fd-find
```
Then run:
```bash
sh ~/nvim-config/bootstrap.sh
```
## Arch Linux
```bash
sudo pacman -S --needed git neovim nodejs npm ripgrep fd
```
Then run:
```bash
sh ~/nvim-config/bootstrap.sh
```
## Gentoo
```bash
sudo mkdir -p /etc/portage/package.use
printf '%s\n' 'net-libs/nodejs npm' | sudo tee /etc/portage/package.use/nvim-config-nodejs
sudo emerge --ask dev-vcs/git app-editors/neovim net-libs/nodejs sys-apps/ripgrep
```
Then run:
```bash
sh ~/nvim-config/bootstrap.sh
```
If `sys-apps/fd` is unavailable or its distfile is broken, the bootstrap script will try `cargo install fd-find` and place `fd` in `/usr/local/bin`.
## Notes
- First run downloads plugins through `lazy.nvim`.
- The config lives in `~/.config/nvim`.
- Out of the box it covers C, C++, Rust, Bash, Lua, JSON, YAML, Markdown, JavaScript, TypeScript, and GLSL.
- Shader extensions like `.vert`, `.frag`, `.comp`, `.geom`, `.rgen`, `.rchit`, `.rmiss`, `.rint`, and `.rcall` are treated as GLSL.
- `nodejs`/`npm` are required so Mason can install the JS/TS/YAML/JSON tooling.
- On Gentoo, `fd` is installed by Portage if possible; otherwise the bootstrap script falls back to `cargo install fd-find`.