You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Personal Lua-based Neovim configuration used as a daily IDE for SRE/DevOps work and software development.
4
6
5
7
> **Disclaimer:** This configuration is based on and forked from [magidc/nvim-config](https://github.com/magidc/nvim-config). Credits to the original author for the foundational setup.
6
8
7
9
<br>
8
10
11
+
# Prerequisites
12
+
13
+
| Dependency | Version | Why |
14
+
|------------|---------|-----|
15
+
|[Neovim](https://github.com/neovim/neovim/wiki/Installing-Neovim)|**0.11+**| Native LSP API (`vim.lsp.config`, `after/lsp/`) |
16
+
|[ripgrep](https://github.com/BurntSushi/ripgrep)| any | Telescope live grep and file search |
17
+
| C compiler (`gcc` or `clang`) | any | Compiling treesitter parsers from source |
18
+
|[Node.js](https://nodejs.org/)| 18+ | Required by several LSP servers installed via mason: `bashls`, `eslint`, `jsonls`, `html`, `cssls`|
19
+
|[git](https://git-scm.com/)| any | lazy.nvim bootstrap and plugin installation |
2. Install [ripgrep](https://github.com/BurntSushi/ripgrep) — required by some [Telescope](https://github.com/nvim-telescope/telescope.nvim) search modes.
17
-
3. LSP servers, DAP adapters, linters and formatters are managed automatically by [mason.nvim](https://github.com/mason-org/mason.nvim) on first launch.
29
+
1. Ensure all [prerequisites](#prerequisites) are installed.
30
+
2. Launch Neovim — [lazy.nvim](https://github.com/folke/lazy.nvim) bootstraps itself on first start and installs all plugins.
31
+
3. LSP servers, DAP adapters, linters and formatters are installed automatically by [mason.nvim](https://github.com/mason-org/mason.nvim) on first launch.
18
32
19
33
<br>
20
34
@@ -30,6 +44,46 @@ Plugin-specific mappings live in `lua/plugins/configs/`. LSP mappings are define
│ │ ├── init.lua # Plugin list (lazy.nvim entry point)
73
+
│ │ └── configs/ # Per-plugin configuration files
74
+
│ ├── mappings.lua # Core key mappings
75
+
│ ├── settings.lua # Neovim options and active theme selection
76
+
│ └── theme.lua # Theme switcher logic
77
+
├── test/ # CI validation suite (see test/README.md)
78
+
│ ├── ci_validate.sh # Orchestrates all validation steps
79
+
│ ├── fixtures/ # Source files used as treesitter parse targets
80
+
│ └── *.lua # Headless validation scripts
81
+
└── .github/workflows/
82
+
└── validate.yml # GitHub Actions: build devcontainer + run test suite
83
+
```
84
+
85
+
<br>
86
+
33
87
# Tests
34
88
35
89
See [`test/README.md`](test/README.md) for the full test suite documentation — scripts, fixtures, what each validates, and how to run the pipeline locally.
0 commit comments