Commit graph nvimConfig/modules/module
Author SHA1 Message Date
Daniel
180c3e4f55 feat: add Harper grammar checker LSP 2026-07-27 01:09:25 +00:00
Daniel
92bd53feea fix: add ripgrep to always category and revert shellHook to use rg 2026-07-27 00:30:10 +00:00
Daniel
5c35787c68 fix: remove broken luaPackages.magick from markdown cat packages 2026-07-27 00:24:33 +00:00
Daniel
2dc7227a0e fix: remove vscDebugger from default R packages (not in CRAN/rPackages) 2026-07-27 00:21:18 +00:00
Daniel
c85925b4f7 Merge remote-tracking branch 'origin/refactor/quant-eco-workflow-improvements' into refactor/quant-eco-workflow-improvements 2026-07-27 00:18:06 +00:00
Daniel
d45d85e5bc chore: remove Stata tree-sitter parser from default parser list 2026-07-27 00:16:50 +00:00
copilot-swe-agent[bot]
f4b960c604
docs: clarify Nix laziness comment 2026-07-27 00:11:43 +00:00
copilot-swe-agent[bot]
259b3d65b8
fix: use valid Nix comment syntax in modules 2026-07-27 00:10:59 +00:00
Daniel
3f2ab6ef96 fix: address R1 (image.nvim backend) + C4 (cat-gate consistency)
Tackles the two outstanding items from the post-fix consistency
pass on top of `df2f776`.

* R1 -- plugin/27_image.lua: removed the explicit `backend = "auto"`
  line. image.nvim's setup() does not accept "auto" / "none" as
  literal values; the practical default is to leave `backend` unset,
  letting image.nvim auto-detect the right graphics protocol
  (kitty / wezterm / iterm / sixel) at runtime and falling back to
  no rendering on unsupported terminals. Inline comment explains the
  omission so a future reader doesn't "fix" it back.

* C4 -- modules/module/specs/plugins.nix:
  - Removed `nvim-dap`, `nvim-dap-ui`, `nvim-dap-virtual-text`,
    and `image-nvim` from `config.specs.utils-lazy`. They are R- and
    Markdown-specific, not general utility plugins, so they should
    not depend on `utils=true`.
  - Added a new `config.specs.r-lazy` spec carrying those same four
    plugins, gated by `cats.r`. Users with `r=true` and `utils=false`
    now get a working R debugger (via vscDebugger) and in-buffer
    image rendering for plots.
  - Added `image-nvim` to the existing `config.specs.markdown-lazy`
    so users with `markdown=true` and no other cats still see inline
    plots in Quarto / Markdown documents. nixCats dedups packages
    by pname, so `image-nvim` appears once on the runtime path even
    when both `r` and `markdown` are on.

These two changes close the real correctness bugs surfaced by the
consistency review: `plugin/26_dap.lua` and `plugin/27_image.lua`'s
cat-gated `Config.add(...)` calls previously depended on
`utils=true` resolving the four packages, leaving `r=true` (or
`markdown=true`) only users without DAP / image-nvim even though the
Lua gate let the setup function proceed.

Files: 2 modified. Local verification (`nix flake check --no-build`)
still required before merging PR #12.
2026-07-26 06:47:58 +00:00
Daniel
7f01be59d7 refactor: improve Neovim/Nix config for quant econ workflow
Consolidates a multi-pass refactor and a set of workflow integrations
tailored to a quantitative economics research workflow (R / Python /
Quarto / LaTeX heavy, reproducibility-conscious). The existing terminal
setup is preserved (snacks.nvim was deliberately not adopted).

=== Structural refactors ===
* Replace the `_G.Config` global with a proper `require('config')` Lua
  module. `_G.Config` is kept only as a backward-compatible alias.
* Split the monolithic `plugin/10_keymap.lua` into domain-specific
  files under `lua/keymap/` (core, helpers, leader, terminal, repl).
* Harden `lua/nix_smart_send.lua` `send_repl`: only skip forward on
  comment nodes, and return cleanly when there is no next sibling.
* Add a filetype-aware REPL dispatcher in `lua/keymap/repl.lua`:
  pure R scripts -> R.nvim, .qmd/.Rmd chunks -> quarto.runner,
  everything else -> vim-slime. Prefer `quarto.runner.run_line()`
  when available and fall back to `run_cell()`.
* Add R Treesitter text objects (function / call / assignment) for
  faster motion when sending code to the REPL.
* Add `+Send` and `+Debug` leader-clue groups for the new prefixes.

=== LSP and tooling ===
* Register `yamlls` for Quarto YAML frontmatter (`plugin/25_lsp.lua`).
* Register `texlab` and add `vimtex` for a real `.tex` workflow
  (`plugin/25_lsp.lua` + new `plugin/28_latex.lua`).
* Wire `nvim-dap` with an R adapter backed by `vscDebugger`
  (new `plugin/26_dap.lua`, gated to the `r` cat).
* Add `image-nvim` for in-editor plots, gated to the `r`/`markdown`
  cats (new `plugin/27_image.lua`).
* Wire `lintr` into `nvim-lint` for R / Quarto (`plugin/22_languages.lua`).
* Add Treesitter parsers for `stata`, `matlab`, `bibtex` for completeness.

=== Nix updates ===
* Pin `python313Packages.pylatexenc` -> `python3Packages.pylatexenc`
  so the markdown cat survives nixpkgs Python default shifts.
* Add `texlab`, `imagemagick`, `luaPackages.magick` to the markdown
  cat so `image.nvim` has a working backend.
* Add `vscDebugger` and `lintr` to the R package list.

=== Misc ===
* Prefer the R.nvim v1.0 Lua API (`require('r.run').send_line()` /
  `send_selection()`); keep `<Plug>` mappings as a fallback so older
  downstream builds don't regress.
* Use `alejandra` (already installed) as the nixd / nil_ls formatter.

Files: 14 modified, 5 added (953 insertions, 490 deletions).

Local verification before merge:
1. `nix flake check --no-build`
2. `nvim --headless -u NONE -l tests/init.lua`
3. Open a `.qmd` -> confirm `yamlls` attaches and `image.nvim` renders.
4. Open an `.R` -> `<leader>db`, `<leader>dc` confirm DAP loads.
5. Open a `.tex` -> confirm `texlab` + `vimtex` are active.
2026-07-26 06:35:52 +00:00
0ea9b249ed Fixed syntax highlighting 2026-07-24 16:28:07 +10:00
cd1e524eb8 testing 2026-07-24 15:35:40 +10:00
5269e76608 updates 2026-07-24 15:04:12 +10:00
aec9110e70 hopefully R fix 2026-05-24 00:01:12 +10:00
62f456ed46 hopefully R fix 2026-05-23 23:54:07 +10:00
458332a141 hopefully R fix 2026-05-23 23:44:56 +10:00
740f86ad7b hopefully R fix 2026-05-23 23:41:48 +10:00
d218b05d48 hopefully R fix 2026-05-23 23:38:18 +10:00
db610620b3 large refactor 2026-05-23 21:59:54 +10:00
a0ba90c4d2 refactor package installation 2026-05-23 20:15:23 +10:00
74600519a5 Simplified codebase 2026-05-21 18:45:36 +10:00
4d28d0d490 fix for codecompanion 2026-05-19 13:15:29 +10:00
8811591fe0 Move to bundled R.nvim + rnvimserver without override 2026-05-14 00:52:03 +10:00
1055522af9 moved r-nvim to flake build 2026-05-13 12:30:17 +10:00
07d2156dfb fixed R.nvim 2026-05-12 15:58:31 +10:00
copilot-swe-agent[bot]
eb06ab9655
fix: add quarto-nvim and otter-nvim to r spec plugins
Agent-Logs-Url: https://github.com/dwinkler1/nvimConfig/sessions/817f9c4f-efa7-4e6c-8f0f-c62bde6a606b

Co-authored-by: dwinkler1 <22460147+dwinkler1@users.noreply.github.com>
2026-04-29 06:49:04 +00:00
Daniel Winkler
aa39a3c207 robust treesitter setup for upcoming changes 2026-01-31 15:24:16 +11:00
Daniel Winkler
f0d0d3c4ec Make R_LIBS_USER overridable 2026-01-31 02:34:08 +11:00
Daniel Winkler
8d183d78ef More overrideable settings 2026-01-30 22:42:22 +11:00
Daniel Winkler
fbc508e5b8 testing default for override 2026-01-30 22:15:18 +11:00
Daniel Winkler
95981e7f87 fixed wrapper bin name 2026-01-30 21:30:49 +11:00
Daniel Winkler
8dc018f273 fix checks 2026-01-30 17:04:47 +11:00
Daniel Winkler
43c6cb3fcd remove conflicting vim alias 2026-01-30 16:57:40 +11:00
Daniel Winkler
3bad68566b small refactor 2026-01-30 16:05:54 +11:00
Daniel Winkler
94832c21aa Remove cmp-r (deprecated) 2026-01-30 15:46:29 +11:00
Daniel Winkler
91755583fd init wrapper-module config 2026-01-30 14:22:39 +11:00