From 5c27fd3a6c564f387e27b8c3bdb0184538ab92e0 Mon Sep 17 00:00:00 2001 From: "nixvim-ci[bot]" <212996653+nixvim-ci[bot]@users.noreply.github.com> Date: Sun, 3 Aug 2025 12:16:38 +0000 Subject: [PATCH 1/5] flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'flake-parts': 'github:hercules-ci/flake-parts/644e0fc48951a860279da645ba77fe4a6e814c5e?narHash=sha256-TVcTNvOeWWk1DXljFxVRp%2BE0tzG1LhrVjOGGoMHuXio%3D' (2025-07-21) → 'github:hercules-ci/flake-parts/67df8c627c2c39c41dbec76a1f201929929ab0bd?narHash=sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM%3D' (2025-08-01) • Updated input 'nixpkgs': 'github:NixOS/nixpkgs/6027c30c8e9810896b92429f0092f624f7b1aace?narHash=sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg%3D' (2025-07-25) → 'github:NixOS/nixpkgs/7b6929d8b900de3142638310f8bc40cff4f2c507?narHash=sha256-S30TWshtDmNlU30u842RidFUraKj1f2dd4nrKRHm3gE%3D' (2025-08-02) • Updated input 'nuschtosSearch': 'github:NuschtOS/search/40987cc1a24feba378438d691f87c52819f7bd75?narHash=sha256-Pmpke0JtLRzgdlwDC5a%2BaiLVZ11JPUO5Bcqkj0nHE/k%3D' (2025-07-25) → 'github:NuschtOS/search/2a65adaf2c0c428efb0f4a2bc406aab466e96a06?narHash=sha256-Pmpke0JtLRzgdlwDC5a%2BaiLVZ11JPUO5Bcqkj0nHE/k%3D' (2025-07-29) --- flake.lock | 16 ++++++++-------- version-info.toml | 2 +- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/flake.lock b/flake.lock index 4b7c4bb5..e698b6a9 100644 --- a/flake.lock +++ b/flake.lock @@ -7,11 +7,11 @@ ] }, "locked": { - "lastModified": 1753121425, - "narHash": "sha256-TVcTNvOeWWk1DXljFxVRp+E0tzG1LhrVjOGGoMHuXio=", + "lastModified": 1754091436, + "narHash": "sha256-XKqDMN1/Qj1DKivQvscI4vmHfDfvYR2pfuFOJiCeewM=", "owner": "hercules-ci", "repo": "flake-parts", - "rev": "644e0fc48951a860279da645ba77fe4a6e814c5e", + "rev": "67df8c627c2c39c41dbec76a1f201929929ab0bd", "type": "github" }, "original": { @@ -66,11 +66,11 @@ }, "nixpkgs": { "locked": { - "lastModified": 1753432016, - "narHash": "sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg=", + "lastModified": 1754151594, + "narHash": "sha256-S30TWshtDmNlU30u842RidFUraKj1f2dd4nrKRHm3gE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6027c30c8e9810896b92429f0092f624f7b1aace", + "rev": "7b6929d8b900de3142638310f8bc40cff4f2c507", "type": "github" }, "original": { @@ -89,11 +89,11 @@ ] }, "locked": { - "lastModified": 1753450833, + "lastModified": 1753771532, "narHash": "sha256-Pmpke0JtLRzgdlwDC5a+aiLVZ11JPUO5Bcqkj0nHE/k=", "owner": "NuschtOS", "repo": "search", - "rev": "40987cc1a24feba378438d691f87c52819f7bd75", + "rev": "2a65adaf2c0c428efb0f4a2bc406aab466e96a06", "type": "github" }, "original": { diff --git a/version-info.toml b/version-info.toml index 52cbc153..42505fa1 100644 --- a/version-info.toml +++ b/version-info.toml @@ -1,6 +1,6 @@ # DO NOT MODIFY! # This file was generated by ci/version-info/default.nix -nixpkgs_rev = "6027c30c8e9810896b92429f0092f624f7b1aace" +nixpkgs_rev = "7b6929d8b900de3142638310f8bc40cff4f2c507" release = "25.11" unstable = true From 56500e62b69056184c4bb8120dbf525a364fb3c0 Mon Sep 17 00:00:00 2001 From: "nixvim-ci[bot]" <212996653+nixvim-ci[bot]@users.noreply.github.com> Date: Sun, 3 Aug 2025 12:16:53 +0000 Subject: [PATCH 2/5] flake/dev/flake.lock: Update MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Flake lock file updates: • Updated input 'dev-nixpkgs': 'github:NixOS/nixpkgs/6027c30c8e9810896b92429f0092f624f7b1aace?narHash=sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg%3D' (2025-07-25) → 'github:NixOS/nixpkgs/7b6929d8b900de3142638310f8bc40cff4f2c507?narHash=sha256-S30TWshtDmNlU30u842RidFUraKj1f2dd4nrKRHm3gE%3D' (2025-08-02) • Updated input 'home-manager': 'github:nix-community/home-manager/a7b7c6f520b51f3577bd6b7a7493d2cdbcb22ec6?narHash=sha256-5i5%2B9pPq80C37a/xqepLRYMHNw8CSh1S7o0ps%2Bkkl3k%3D' (2025-07-28) → 'github:nix-community/home-manager/e6e2f43a62b7dbc8aa8b1adb7101b0d8b9395445?narHash=sha256-Sp3FRM6xNwNtGzYH/HByjzJYHSQvwsW%2BlDMMZNF43PQ%3D' (2025-08-02) • Updated input 'treefmt-nix': 'github:numtide/treefmt-nix/2673921c03d6e75fdf4aa93e025772608d1482cf?narHash=sha256-Bv9h1AJegLI8uAhiJ1sZ4XAndYxhgf38tMgCQwiEpmc%3D' (2025-07-25) → 'github:numtide/treefmt-nix/58bd4da459f0a39e506847109a2a5cfceb837796?narHash=sha256-ONcNxdSiPyJ9qavMPJYAXDNBzYobHRxw0WbT38lKbwU%3D' (2025-08-01) --- flake/dev/flake.lock | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/flake/dev/flake.lock b/flake/dev/flake.lock index 64272a5d..cd23dc1a 100644 --- a/flake/dev/flake.lock +++ b/flake/dev/flake.lock @@ -2,11 +2,11 @@ "nodes": { "dev-nixpkgs": { "locked": { - "lastModified": 1753432016, - "narHash": "sha256-cnL5WWn/xkZoyH/03NNUS7QgW5vI7D1i74g48qplCvg=", + "lastModified": 1754151594, + "narHash": "sha256-S30TWshtDmNlU30u842RidFUraKj1f2dd4nrKRHm3gE=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "6027c30c8e9810896b92429f0092f624f7b1aace", + "rev": "7b6929d8b900de3142638310f8bc40cff4f2c507", "type": "github" }, "original": { @@ -104,11 +104,11 @@ ] }, "locked": { - "lastModified": 1753693456, - "narHash": "sha256-5i5+9pPq80C37a/xqepLRYMHNw8CSh1S7o0ps+kkl3k=", + "lastModified": 1754174776, + "narHash": "sha256-Sp3FRM6xNwNtGzYH/HByjzJYHSQvwsW+lDMMZNF43PQ=", "owner": "nix-community", "repo": "home-manager", - "rev": "a7b7c6f520b51f3577bd6b7a7493d2cdbcb22ec6", + "rev": "e6e2f43a62b7dbc8aa8b1adb7101b0d8b9395445", "type": "github" }, "original": { @@ -155,11 +155,11 @@ ] }, "locked": { - "lastModified": 1753439394, - "narHash": "sha256-Bv9h1AJegLI8uAhiJ1sZ4XAndYxhgf38tMgCQwiEpmc=", + "lastModified": 1754061284, + "narHash": "sha256-ONcNxdSiPyJ9qavMPJYAXDNBzYobHRxw0WbT38lKbwU=", "owner": "numtide", "repo": "treefmt-nix", - "rev": "2673921c03d6e75fdf4aa93e025772608d1482cf", + "rev": "58bd4da459f0a39e506847109a2a5cfceb837796", "type": "github" }, "original": { From e76ebb7819b641c24f4cac62727e929b47b08a2e Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Thu, 31 Jul 2025 15:45:56 +0200 Subject: [PATCH 3/5] tests/plugins/dap-view: update default config --- .../plugins/by-name/dap-view/default.nix | 145 +++++++++++++----- 1 file changed, 107 insertions(+), 38 deletions(-) diff --git a/tests/test-sources/plugins/by-name/dap-view/default.nix b/tests/test-sources/plugins/by-name/dap-view/default.nix index b89fede6..601ec300 100644 --- a/tests/test-sources/plugins/by-name/dap-view/default.nix +++ b/tests/test-sources/plugins/by-name/dap-view/default.nix @@ -18,52 +18,121 @@ "repl" ]; default_section = "watches"; - headers = { - breakpoints = "Breakpoints [B]"; - scopes = "Scopes [S]"; - exceptions = "Exceptions [E]"; - watches = "Watches [W]"; - threads = "Threads [T]"; - repl = "REPL [R]"; - console = "Console [C]"; + base_sections = { + breakpoints = { + keymap = "B"; + label = "Breakpoints [B]"; + short_label = " [B]"; + action.__raw = '' + function() + views.switch_to_view("breakpoints") + end + ''; + }; + scopes = { + keymap = "S"; + label = "Scopes [S]"; + short_label = "󰂥 [S]"; + action.__raw = '' + function() + views.switch_to_view("scopes") + end + ''; + }; + exceptions = { + keymap = "E"; + label = "Exceptions [E]"; + short_label = "󰢃 [E]"; + action.__raw = '' + function() + views.switch_to_view("exceptions") + end + ''; + }; + watches = { + keymap = "W"; + label = "Watches [W]"; + short_label = "󰛐 [W]"; + action.__raw = '' + function() + views.switch_to_view("watches") + end + ''; + }; + threads = { + keymap = "T"; + label = "Threads [T]"; + short_label = "󱉯 [T]"; + action.__raw = '' + function() + views.switch_to_view("threads") + end + ''; + }; + repl = { + keymap = "R"; + label = "REPL [R]"; + short_label = "󰯃 [R]"; + action.__raw = '' + function() + require("dap-view.repl").show() + end + ''; + }; + console = { + keymap = "C"; + label = "Console [C]"; + short_label = "󰆍 [C]"; + action.__raw = '' + function() + require("dap-view.term").show() + end + ''; + }; + }; + custom_sections = { }; + controls = { + enabled = false; + position = "right"; + buttons = [ + "play" + "step_into" + "step_over" + "step_out" + "step_back" + "run_last" + "terminate" + "disconnect" + ]; + icons = { + pause = ""; + play = ""; + step_into = ""; + step_over = ""; + step_out = ""; + step_back = ""; + run_last = ""; + terminate = ""; + disconnect = ""; + }; + custom_buttons = { }; }; - # TODO: Enable after plugin update - # controls = { - # enabled = false; - # position = "right"; - # buttons = [ - # "play" - # "step_into" - # "step_over" - # "step_out" - # "step_back" - # "run_last" - # "terminate" - # "disconnect" - # ]; - # icons = { - # pause = ""; - # play = ""; - # step_into = ""; - # step_over = ""; - # step_out = ""; - # step_back = ""; - # run_last = ""; - # terminate = ""; - # disconnect = ""; - # }; - # custom_buttons = { }; - # }; }; windows = { - height = 12; + height = 0.25; + position = "below"; terminal = { + width = 0.5; position = "left"; - hide = { }; + hide = [ ]; start_hidden = false; }; }; - switchbuf = "usetab;newtab"; + help = { + border = null; + }; + switchbuf = "usetab"; + auto_toggle = false; }; }; }; From 550c2573bb1c25c696d45c6f073066c293cb3af3 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Thu, 31 Jul 2025 16:19:49 +0200 Subject: [PATCH 4/5] plugins/quarto: fix by enforcing enabling otter when settings.codeRunner is enabled See https://github.com/quarto-dev/quarto-nvim/issues/187 --- plugins/by-name/otter/default.nix | 4 ++ plugins/by-name/quarto/default.nix | 11 +++- .../plugins/by-name/quarto/default.nix | 65 ++++++++++++------- 3 files changed, 54 insertions(+), 26 deletions(-) diff --git a/plugins/by-name/otter/default.nix b/plugins/by-name/otter/default.nix index fd841b83..34feed28 100644 --- a/plugins/by-name/otter/default.nix +++ b/plugins/by-name/otter/default.nix @@ -12,6 +12,10 @@ lib.nixvim.plugins.mkNeovimPlugin { maintainers = [ lib.maintainers.HeitorAugustoLN ]; + # `require("otter").setup()` must run **BEFORE** quarto + # https://github.com/quarto-dev/quarto-nvim/issues/187 + configLocation = lib.mkOrder 900 "extraConfigLua"; + imports = [ # TODO: introduced 2024-06-29; remove after 24.11 (lib.mkRemovedOptionModule diff --git a/plugins/by-name/quarto/default.nix b/plugins/by-name/quarto/default.nix index 50413eae..77c628d0 100644 --- a/plugins/by-name/quarto/default.nix +++ b/plugins/by-name/quarto/default.nix @@ -1,4 +1,4 @@ -{ lib, pkgs, ... }: +{ lib, config, ... }: let inherit (lib.nixvim) defaultNullOpts; inherit (lib) types; @@ -99,4 +99,13 @@ lib.nixvim.plugins.mkNeovimPlugin { default_method = "vim-slime"; }; }; + + extraConfig = cfg: { + assertions = lib.nixvim.mkAssertions "plugins.quarto" { + assertion = (cfg.settings.codeRunner.enable or false) -> config.plugins.otter.enable; + message = '' + Quarto requires `plugins.otter` to be enabled when `settings.codeRunner.enable` is true. + ''; + }; + }; } diff --git a/tests/test-sources/plugins/by-name/quarto/default.nix b/tests/test-sources/plugins/by-name/quarto/default.nix index 45d036d1..d28c1837 100644 --- a/tests/test-sources/plugins/by-name/quarto/default.nix +++ b/tests/test-sources/plugins/by-name/quarto/default.nix @@ -1,6 +1,13 @@ { empty = { - plugins.quarto.enable = true; + plugins = { + quarto.enable = true; + otter.enable = true; + treesitter = { + enable = true; + settings.highlight.enable = true; + }; + }; }; defaults = { @@ -39,36 +46,44 @@ }; example = { - plugins.quarto = { - enable = true; + plugins = { + otter.enable = true; + treesitter = { + enable = true; + settings.highlight.enable = true; + }; - settings = { - debug = true; - closePreviewOnExit = false; - lspFeatures = { - enabled = true; - chunks = "curly"; - languages = [ - "r" - "python" - "julia" - ]; - diagnostics = { + quarto = { + enable = true; + + settings = { + debug = true; + closePreviewOnExit = false; + lspFeatures = { enabled = true; - triggers = [ "BufWritePost" ]; + chunks = "curly"; + languages = [ + "r" + "python" + "julia" + ]; + diagnostics = { + enabled = true; + triggers = [ "BufWritePost" ]; + }; + completion = { + enabled = true; + }; }; - completion = { + codeRunner = { enabled = true; + default_method = "molten"; + ft_runners = { + python = "molten"; + }; + never_run = [ "yaml" ]; }; }; - codeRunner = { - enabled = true; - default_method = "molten"; - ft_runners = { - python = "molten"; - }; - never_run = [ "yaml" ]; - }; }; }; }; From 80398d2a59dd3573b3bbcd518e8b09b8c7ecfb81 Mon Sep 17 00:00:00 2001 From: Gaetan Lepage Date: Mon, 4 Aug 2025 01:44:16 +0200 Subject: [PATCH 5/5] flake/dev/fmt: add docs/mdbook/highlight.js to ignore list --- flake/dev/fmt.nix | 1 + 1 file changed, 1 insertion(+) diff --git a/flake/dev/fmt.nix b/flake/dev/fmt.nix index e3733497..7c2610d1 100644 --- a/flake/dev/fmt.nix +++ b/flake/dev/fmt.nix @@ -57,6 +57,7 @@ "**.scm" "**.svg" "**/man/*.5" + "docs/mdbook/highlight.js" # Those files are generated by pytest-regression, which then `diff`s them. # Formatting them will make the tests fail. "docs/gfm-alerts-to-admonitions/tests/**/*.yml"