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

57 lines
2.8 KiB
Markdown

# ❄️ My Personal Neovim Setup ❄️
My Nix-based Neovim configuration. For when you have an unhealthy obsession for declarativity and configurability.
![screenshot](images/desktop.png)
## Usage
Option 1: Clone and run
```bash
git clone https://github.com/fred-drake/neovim.git
nix run .#
```
Option 2: Run directly
```bash
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