added odin to overseer

This commit is contained in:
2026-09-07 19:52:06 -06:00
parent 41c41862a7
commit cbcd262024
2 changed files with 113 additions and 6 deletions
+20 -6
View File
@@ -58,7 +58,7 @@ CSS, JSON, YAML, Markdown, SQL, Dockerfile, Python.
| LSP | nvim-lspconfig + Mason (`gopls`, `zls`, `lua_ls`, `ts_ls`, `html`, `cssls`, `jsonls`, `yamlls`, `marksman`, `sqlls`, `dockerls`, `pyright`/`ruff`) |
| Completion | blink.cmp (LazyVim default; SQL routed to dadbod) |
| Formatting | conform.nvim via LazyVim's format pipeline |
| Debugging | nvim-dap + delve (Go), codelldb (Zig/C/C++) |
| Debugging | nvim-dap + delve (Go), codelldb (Zig/C/C++/Odin) |
| Testing | neotest (Go, Python, Zig) with in-buffer pass/fail signs |
| Coverage | nvim-coverage (Go) |
| Task running | overseer.nvim (+ user templates) |
@@ -143,9 +143,13 @@ Works in Go, Python, and Zig buffers; results show as signs in the gutter.
### Debugging (DAP, `<leader>d`)
Go uses delve; Zig/C/C++ use codelldb. Zig launch configs build with debug
symbols first, then run (`Launch (zig build)` prompts for the exe under
`zig-out/bin`; `Launch (current file)` compiles the open file).
Go uses delve; Zig/C/C++/Odin use codelldb. Zig launch configs build with
debug symbols first, then run (`Launch (zig build)` prompts for the exe under
`zig-out/bin`; `Launch (current file)` compiles the open file). Odin offers
`Launch (make build-debug)` (desi_explorer-style monorepo — runs
`make -C gui build-debug` and points at `bin/desi_explorer` with the repo's
`GUI_ENV_FILE`), `Launch (odin build .)` (plain debug `odin build`), and
`Launch (current file)`.
| Key | Action |
|-----|--------|
| `<leader>db` | Toggle breakpoint |
@@ -270,7 +274,7 @@ symbols first, then run (`Launch (zig build)` prompts for the exe under
│ │ ├── lspconfig.lua # Per-server LSP config (gopls, zls, …)
│ │ ├── treesitter.lua # Parsers
│ │ ├── formatting.lua # conform.nvim
│ │ ├── dap.lua # Debugging (Go via delve, Zig via codelldb)
│ │ ├── dap.lua # Debugging (Go via delve, Zig/C/C++/Odin via codelldb)
│ │ ├── neotest.lua # Test runner (go/python/zig)
│ │ ├── go-coverage.lua # Go coverage signs
│ │ ├── overseer.lua # Task runner
@@ -284,7 +288,7 @@ symbols first, then run (`Launch (zig build)` prompts for the exe under
│ │ ├── performance.lua # treesitter large-file guard
│ │ ├── theme.lua # catppuccin
│ │ └── zig.lua # Zig ft plugin (toolchain wired across files)
│ └── overseer/template/user/ # go_*, zig_{build,run,test} task templates
│ └── overseer/template/user/ # go_*, odin_{build,run,test}, zig_{build,run,test} task templates
```
## Zig notes
@@ -296,6 +300,16 @@ symbols first, then run (`Launch (zig build)` prompts for the exe under
- Debugging needs `codelldb` (`:MasonInstall codelldb` if it doesn't
auto-install). Builds use `-O Debug` so symbols are present.
## Odin notes
- LSP is `ols` (Mason + `lua/plugins/lspconfig.lua`); formatting is `odinfmt`.
- Debugging uses **codelldb** with `-o:none -debug` builds, so real breakpoints,
locals/variables, and REPL evaluation work against Odin DWARF. The monorepo
launch config sets `GUI_ENV_FILE` for you, matching `make run`.
- In desi_explorer, `make -C gui build-debug` must finish before
`Launch (make build-debug)` — the config builds first, so breakpoints set in
`gui/src/*.odin` before launching are hit reliably.
## Troubleshooting
- **LSP not attaching:** `:checkhealth lsp` — confirm the server appears and is