.github/workflows | ||
assets | ||
docs | ||
modules | ||
.envrc | ||
.gitignore | ||
flake.lock | ||
flake.nix | ||
LICENSE | ||
README.md |
neovim-flake
A highly configurable nix flake for neovim.
Documentation
See the neovim-flake Manual for documentation, available options, and release notes.
If you want to dive right into trying neovim-flake you can get a fully featured configuration with nix
language support by running:
nix run github:notashelf/neovim-flake
Help
You can create an issue on the issue tracker to ask questions or report bugs. I am not yet on spaces like matrix or IRC, so please use the issue tracker for now.
Philosophy
The philosophy behind this flake configuration is to create an eaesily configurable and reproducible neovim environment. While it does sacrifice in size (which I know some users will find disagreeable), it offers a lot of flexibility and configurability. It is also very easy to add your own plugins and configuration. Whether you are a developer, writer, or live coder (see tidal cycles below!), quickly craft a config that suits every project's need. Think of it like a distribution of Neovim that takes advantage of pinning vim plugins and third party dependencies (such as tree-sitter grammars, language servers, and more).
As a result, one should never get a broken config when setting options. If setting multiple options results in a broken neovim, file an issue! Each plugin knows when another plugin which allows for smart configuration of keybindings and automatic setup of things like completion sources and languages.
Credit
This configuration is based on a few other configurations, including:
- @sioodmy's dotfiles
- @wiltaylor's neovim-flake
- @jordanisaacs's neovim-flake
- @gvolpe's neovim-flake
I am grateful for their work and inspiration.