Checked against all prior [plugins]-style issues (open and closed, searched for "dap"/"neotest" — zero hits) to confirm this doesn't overlap #312 or earlier suggestions.
The gap
lua/config/lsp.lua enables seven language servers — luals, pyright+pyrefly, clangd, ts_ls, rust_analyzer, gopls, sourcekit — and lua/config/plugin_config.lua/plugins.lua layer on conform.nvim (formatting) and nvim-lint (linting) for most of the same languages. That's a deliberately polyglot, LSP-heavy setup. But there is no debug adapter and no test-runner integration anywhere in the config (grep -ri "dap\|neotest\|debugger" lua/ returns nothing) — running or stepping through code still means dropping to an external terminal.
1. mfussenegger/nvim-dap + rcarriga/nvim-dap-ui
Core DAP client plus the standard UI (breakpoints, scopes/variables, stack frames, REPL). Per-language adapters are a separate, incremental install (nvim-dap-python for pyright/pyrefly, codelldb for rust_analyzer/clangd, delve config for gopls, vscode-js-debug for ts_ls) so this can be adopted one language at a time rather than all at once. Ties directly into the existing snacks.nvim install, which already ships an optional dap-aware layout helper.
2. nvim-neotest/neotest
Unified test-running UI (run nearest test / file / suite, inline pass/fail signs, summary panel) with per-language adapters (neotest-python, neotest-rust, neotest-go, neotest-jest/neotest-vitest). Complements conform.nvim/nvim-lint — those check style and correctness statically, neotest is the missing piece that actually executes the test suite, and reuses the same "small adapter per language" adoption path as nvim-dap above.
Recommended action
Not urgent, no forcing function — flagging because it's the one workflow area a 7-language config has left completely untouched. If adopted, nvim-dap-ui and neotest's summary panel both want a sidebar; worth deciding up front whether either reuses snacks.nvim's window/layout primitives (already installed) instead of adding a second floating-window library.
Checked against all prior
[plugins]-style issues (open and closed, searched for "dap"/"neotest" — zero hits) to confirm this doesn't overlap #312 or earlier suggestions.The gap
lua/config/lsp.luaenables seven language servers —luals,pyright+pyrefly,clangd,ts_ls,rust_analyzer,gopls,sourcekit— andlua/config/plugin_config.lua/plugins.lualayer onconform.nvim(formatting) andnvim-lint(linting) for most of the same languages. That's a deliberately polyglot, LSP-heavy setup. But there is no debug adapter and no test-runner integration anywhere in the config (grep -ri "dap\|neotest\|debugger" lua/returns nothing) — running or stepping through code still means dropping to an external terminal.1.
mfussenegger/nvim-dap+rcarriga/nvim-dap-uiCore DAP client plus the standard UI (breakpoints, scopes/variables, stack frames, REPL). Per-language adapters are a separate, incremental install (
nvim-dap-pythonfor pyright/pyrefly,codelldbfor rust_analyzer/clangd,delveconfig for gopls,vscode-js-debugfor ts_ls) so this can be adopted one language at a time rather than all at once. Ties directly into the existingsnacks.nviminstall, which already ships an optionaldap-aware layout helper.2.
nvim-neotest/neotestUnified test-running UI (run nearest test / file / suite, inline pass/fail signs, summary panel) with per-language adapters (
neotest-python,neotest-rust,neotest-go,neotest-jest/neotest-vitest). Complementsconform.nvim/nvim-lint— those check style and correctness statically,neotestis the missing piece that actually executes the test suite, and reuses the same "small adapter per language" adoption path asnvim-dapabove.Recommended action
Not urgent, no forcing function — flagging because it's the one workflow area a 7-language config has left completely untouched. If adopted,
nvim-dap-uiandneotest's summary panel both want a sidebar; worth deciding up front whether either reusessnacks.nvim's window/layout primitives (already installed) instead of adding a second floating-window library.