Files
fred-neovim/README.md
T
2024-10-03 22:37:42 -04:00

2.8 KiB

❄️ My Personal Neovim Setup ❄️

My Nix-based Neovim configuration. For when you have an unhealthy obsession for declarativity and configurability.

screenshot

Usage

Option 1: Clone and run

git clone https://github.com/fred-drake/neovim.git
nix run .#

Option 2: Run directly

nix run github:fred-drake/neovim#

Configurations

The default configuration performs editing without settings for any particular language or technology. The following configurations allow for CMP, LSP, Tree-Sitter and DAP in their respective language or technology stack:

  • Rust nix run github:fred-drake/neovim#rust
  • C# nix run github:fred-drake/neovim#csharp
  • Go nix run github:fred-drake/neovim#golang
  • Python nix run github:fred-drake/neovim#python

Technology Support

Technology Formatter Language Server Debugger Nix Configuration
Nix alejandra nil-ls, nixd default
Just just default
SQL sqlformat default
Lua stylua default
YAML yamlfmt yamllint, yamlls default
CSS prettier default
HTML prettier default
Javascript prettier default
Typescript prettier default
JSON prettier jsonls default
Markdown prettier marksman default
Ruby rubyfmt default
Terraform tofu_fmt default
TOML taplo taplo default
C# csharpier csharp-ls netcoredbg csharp
Go golines gopls delve golang
Python black, isort flake8, jedi, pylint, rope, mccabe dap-python python
Rust rustfmt clippy lldb rust

Things To Do

  • TODO: Change fzf to only allow git-level root if applicable