This commit is contained in:
isaacST08 2025-03-23 19:54:58 -06:00
commit d8829a9de9
41 changed files with 1031 additions and 337 deletions

View file

@ -36,7 +36,7 @@ jobs:
- name: Install Nix - name: Install Nix
uses: DeterminateSystems/nix-installer-action@main uses: DeterminateSystems/nix-installer-action@main
- uses: cachix/cachix-action@v15 - uses: cachix/cachix-action@v16
with: with:
authToken: ${{ secrets.CACHIX_TOKEN }} authToken: ${{ secrets.CACHIX_TOKEN }}
extraPullNames: nix-community extraPullNames: nix-community

View file

@ -13,7 +13,7 @@ jobs:
uses: actions/checkout@v4 uses: actions/checkout@v4
- name: "Delete old branches" - name: "Delete old branches"
uses: beatlabs/delete-old-branches-action@v0.0.10 uses: beatlabs/delete-old-branches-action@v0.0.11
with: with:
repo_token: "${{ secrets.GITHUB_TOKEN }}" repo_token: "${{ secrets.GITHUB_TOKEN }}"
date: "1 months ago" date: "1 months ago"

View file

@ -234,6 +234,7 @@ isMaximal: {
enable = false; enable = false;
cmp.enable = isMaximal; cmp.enable = isMaximal;
}; };
codecompanion-nvim.enable = false;
}; };
session = { session = {

View file

@ -67,7 +67,7 @@ of individual sections of configuration as needed. nvf provides helper functions
in the extended library, usually under `inputs.nvf.lib.nvim.dag` that you may in the extended library, usually under `inputs.nvf.lib.nvim.dag` that you may
use. use.
Please refer to the [DAG section](/index.xhtml#ch-dag-entries) in the nvf manual Please refer to the [DAG section](#ch-dag-entries) in the nvf manual
to find out more about the DAG system. to find out more about the DAG system.
::: :::

View file

@ -38,3 +38,22 @@ As of version **0.7**, we exposed an API for configuring lazy-loaded plugins via
}; };
} }
``` ```
## LazyFile event {#sec-lazyfile-event}
You can use the `LazyFile` user event to load a plugin when a file is opened:
```nix
{
config.vim.lazy.plugins = {
"aerial.nvim" = {
package = pkgs.vimPlugins.aerial-nvim;
event = [{event = "User"; pattern = "LazyFile";}];
# ...
};
};
}
```
You can consider `LazyFile` as an alias to
`["BufReadPost" "BufNewFile" "BufWritePre"]`

View file

@ -2,17 +2,25 @@
## Breaking changes ## Breaking changes
[Lspsaga documentation]: https://nvimdev.github.io/lspsaga/
- `git-conflict` keybinds are now prefixed with `<leader>` to avoid conflicting - `git-conflict` keybinds are now prefixed with `<leader>` to avoid conflicting
with builtins. with builtins.
- `alpha` is now configured with nix, default config removed. - `alpha` is now configured with nix, default config removed.
- Lspsaga module no longer ships default keybindings. The keybind format has
been changed by upstream, and old keybindings do not have equivalents under
the new API they provide. Please manually set your keybinds according to
[Lspsaga documentation] following the new API.
[NotAShelf](https://github.com/notashelf): [NotAShelf](https://github.com/notashelf):
[typst-preview.nvim]: https://github.com/chomosuke/typst-preview.nvim [typst-preview.nvim]: https://github.com/chomosuke/typst-preview.nvim
[render-markdown.nvim]: https://github.com/MeanderingProgrammer/render-markdown.nvim [render-markdown.nvim]: https://github.com/MeanderingProgrammer/render-markdown.nvim
[yanky.nvim]: https://github.com/gbprod/yanky.nvim [yanky.nvim]: https://github.com/gbprod/yanky.nvim
[yazi.nvim]: https://github.com/mikavilpas/yazi.nvim [yazi.nvim]: https://github.com/mikavilpas/yazi.nvim
[snacks.nvim]: https://github.com/folke/snacks.nvim
- Add [typst-preview.nvim] under - Add [typst-preview.nvim] under
`languages.typst.extensions.typst-preview-nvim`. `languages.typst.extensions.typst-preview-nvim`.
@ -62,6 +70,14 @@
- Add [yazi.nvim] as a companion plugin for Yazi, the terminal file manager. - Add [yazi.nvim] as a companion plugin for Yazi, the terminal file manager.
- Add [snacks.nvim] under `vim.utility.snacks-nvim` as a general-purpose utility
plugin.
- Move LSPSaga to `setupOpts` format, allowing freeform configuration in
`vim.lsp.lspsaga.setupOpts`.
- Lazyload Lspsaga and remove default keybindings for it.
[amadaluzia](https://github.com/amadaluzia): [amadaluzia](https://github.com/amadaluzia):
[haskell-tools.nvim]: https://github.com/MrcJkb/haskell-tools.nvim [haskell-tools.nvim]: https://github.com/MrcJkb/haskell-tools.nvim
@ -73,6 +89,7 @@
[blink.cmp]: https://github.com/saghen/blink.cmp [blink.cmp]: https://github.com/saghen/blink.cmp
- Add [blink.cmp] support. - Add [blink.cmp] support.
- Add `LazyFile` user event.
[diniamo](https://github.com/diniamo): [diniamo](https://github.com/diniamo):
@ -159,16 +176,20 @@
[thamenato](https://github.com/thamenato): [thamenato](https://github.com/thamenato):
[ruff]: (https://github.com/astral-sh/ruff) [ruff]: (https://github.com/astral-sh/ruff)
[cue]: (https://cuelang.org/)
- Add [ruff] as a formatter option in `vim.languages.python.format.type`. - Add [ruff] as a formatter option in `vim.languages.python.format.type`.
- Add [cue] support under `vim.languages.cue`.
[ARCIII](https://github.com/ArmandoCIII): [ARCIII](https://github.com/ArmandoCIII):
[leetcode.nvim]: https://github.com/kawre/leetcode.nvim [leetcode.nvim]: https://github.com/kawre/leetcode.nvim
[codecompanion-nvim]: https://github.com/olimorris/codecompanion.nvim
- Add `vim.languages.zig.dap` support through pkgs.lldb dap adapter. Code - Add `vim.languages.zig.dap` support through pkgs.lldb dap adapter. Code
Inspiration from `vim.languages.clang.dap` implementation. Inspiration from `vim.languages.clang.dap` implementation.
- Add [leetcode.nvim] plugin under `vim.utility.leetcode-nvim`. - Add [leetcode.nvim] plugin under `vim.utility.leetcode-nvim`.
- Add [codecompanion.nvim] plugin under `vim.assistant.codecompanion-nvim`.
[nezia1](https://github.com/nezia1): [nezia1](https://github.com/nezia1):
@ -226,6 +247,7 @@
- Add [blink.cmp] option to add - Add [blink.cmp] option to add
[friendly-snippets](https://github.com/rafamadriz/friendly-snippets) so [friendly-snippets](https://github.com/rafamadriz/friendly-snippets) so
blink.cmp can source snippets from it. blink.cmp can source snippets from it.
- Fix [blink.cmp] breaking when built-in sources were modified.
[TheColorman](https://github.com/TheColorman): [TheColorman](https://github.com/TheColorman):
@ -241,3 +263,16 @@
[BANanaD3V](https://github.com/BANanaD3V): [BANanaD3V](https://github.com/BANanaD3V):
- `alpha` is now configured with nix. - `alpha` is now configured with nix.
[viicslen](https://github.com/viicslen):
- Add `intelephense` language server support under
`vim.languages.php.lsp.server`
[Butzist](https://github.com/butzist):
- Add Helm chart support under `vim.languages.helm`.
[rice-cracker-dev](https://github.com/rice-cracker-dev):
- `eslint_d` now checks for configuration files to load.

45
flake.lock generated
View file

@ -5,11 +5,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1738453229, "lastModified": 1741352980,
"narHash": "sha256-7H9XgNiGLKN1G1CgRh0vUL4AheZSYzPm+zmZ7vxbJdo=", "narHash": "sha256-+u2UunDA4Cl5Fci3m7S643HzKmIDAe+fiXrLqYsR2fs=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "32ea77a06711b758da0ad9bd6a844c5740a87abd", "rev": "f4330d22f1c5d2ba72d3d22df5597d123fdb60a9",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -38,11 +38,11 @@
}, },
"mnw": { "mnw": {
"locked": { "locked": {
"lastModified": 1738852285, "lastModified": 1742255973,
"narHash": "sha256-8Y1uyE6gGHxdU0Vcx2CMg/dAmDSxJw19aAl3TKbbo54=", "narHash": "sha256-XfEGVKatTgEMMOVb4SNp1LYLQOSzzrFTDMVDTZFyMVE=",
"owner": "Gerg-L", "owner": "Gerg-L",
"repo": "mnw", "repo": "mnw",
"rev": "6ae73dc9cb72cea17bcc2e3d4670825f483e80e8", "rev": "b982dbd5e6d55d4438832b3567c09bc2a129649d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -62,11 +62,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1732053863, "lastModified": 1741118843,
"narHash": "sha256-DCIVdlb81Fct2uwzbtnawLBC/U03U2hqx8trqTJB7WA=", "narHash": "sha256-ggXU3RHv6NgWw+vc+HO4/9n0GPufhTIUjVuLci8Za8c=",
"owner": "oxalica", "owner": "oxalica",
"repo": "nil", "repo": "nil",
"rev": "2e24c9834e3bb5aa2a3701d3713b43a6fb106362", "rev": "577d160da311cc7f5042038456a0713e9863d09e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -77,11 +77,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1740303746, "lastModified": 1741865919,
"narHash": "sha256-XcdiWLEhjJkMxDLKQJ0CCivmYYCvA5MDxu9pMybM5kM=", "narHash": "sha256-4thdbnP6dlbdq+qZWTsm4ffAwoS8Tiq1YResB+RP6WE=",
"owner": "nixos", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "2d068ae5c6516b2d04562de50a58c682540de9bf", "rev": "573c650e8a14b2faa0041645ab18aed7e60f0c9a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -93,14 +93,17 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1738452942, "lastModified": 1740877520,
"narHash": "sha256-vJzFZGaCpnmo7I6i416HaBLpC+hvcURh/BQwROcGIp8=", "narHash": "sha256-oiwv/ZK/2FhGxrCkQkB83i7GnWXPPLzoqFHpDD3uYpk=",
"type": "tarball", "owner": "nix-community",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" "repo": "nixpkgs.lib",
"rev": "147dee35aab2193b174e4c0868bd80ead5ce755c",
"type": "github"
}, },
"original": { "original": {
"type": "tarball", "owner": "nix-community",
"url": "https://github.com/NixOS/nixpkgs/archive/072a6db25e947df2f31aab9eccd0ab75d5b2da11.tar.gz" "repo": "nixpkgs.lib",
"type": "github"
} }
}, },
"nmd": { "nmd": {
@ -138,11 +141,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1731983527, "lastModified": 1741055476,
"narHash": "sha256-JECaBgC0pQ91Hq3W4unH6K9to8s2Zl2sPNu7bLOv4ek=", "narHash": "sha256-52vwEV0oS2lCnx3c/alOFGglujZTLmObit7K8VblnS8=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "71287228d96e9568e1e70c6bbfa3f992d145947b", "rev": "aefb7017d710f150970299685e8d8b549d653649",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -5,6 +5,7 @@
git, git,
src, src,
version, version,
fetchpatch,
}: let }: let
blink-fuzzy-lib = rustPlatform.buildRustPackage { blink-fuzzy-lib = rustPlatform.buildRustPackage {
pname = "blink-fuzzy-lib"; pname = "blink-fuzzy-lib";
@ -13,11 +14,10 @@
# TODO: remove this if plugin stops using nightly rust # TODO: remove this if plugin stops using nightly rust
env.RUSTC_BOOTSTRAP = true; env.RUSTC_BOOTSTRAP = true;
useFetchCargoVendor = true;
cargoHash = "sha256-F1wh/TjYoiIbDY3J/prVF367MKk3vwM7LqOpRobOs7I=";
nativeBuildInputs = [git]; nativeBuildInputs = [git];
cargoLock = {
lockFile = "${src}/Cargo.lock";
allowBuiltinFetchGit = true;
};
}; };
libExt = libExt =
@ -34,5 +34,19 @@ in
preInstall = '' preInstall = ''
mkdir -p target/release mkdir -p target/release
ln -s ${blink-fuzzy-lib}/lib/libblink_cmp_fuzzy.${libExt} target/release/libblink_cmp_fuzzy.${libExt} ln -s ${blink-fuzzy-lib}/lib/libblink_cmp_fuzzy.${libExt} target/release/libblink_cmp_fuzzy.${libExt}
echo -n "nix" > target/release/version
''; '';
# Borrowed from nixpkgs
# TODO: Remove this patch when updating to next version
patches = [
(fetchpatch {
name = "blink-add-bypass-for-nix.patch";
url = "https://github.com/Saghen/blink.cmp/commit/6c83ef1ae34abd7ef9a32bfcd9595ac77b61037c.diff?full_index=1";
hash = "sha256-304F1gDDKVI1nXRvvQ0T1xBN+kHr3jdmwMMp8CNl+GU=";
})
];
# Module for reproducing issues
nvimSkipModule = ["repro"];
} }

View file

@ -0,0 +1,278 @@
{lib, ...}: let
inherit (lib.options) mkOption mkEnableOption;
inherit (lib.types) int str enum nullOr attrs;
inherit (lib.nvim.types) mkPluginSetupOption luaInline;
in {
options.vim.assistant = {
codecompanion-nvim = {
enable = mkEnableOption "complementary neovim plugin for codecompanion.nvim";
setupOpts = mkPluginSetupOption "codecompanion-nvim" {
opts = {
send_code = mkEnableOption "code from being sent to the LLM.";
log_level = mkOption {
type = enum ["DEBUG" "INFO" "ERROR" "TRACE"];
default = "ERROR";
description = "Change the level of logging.";
};
language = mkOption {
type = str;
default = "English";
description = "Specify which language an LLM should respond in.";
};
};
display = {
diff = {
enabled =
mkEnableOption ""
// {
default = true;
description = "a diff view to see the changes made by the LLM.";
};
close_chat_at = mkOption {
type = int;
default = 240;
description = ''
Close an open chat buffer if the
total columns of your display are less than...
'';
};
layout = mkOption {
type = enum ["vertical" "horizontal"];
default = "vertical";
description = "Type of split for default provider.";
};
provider = mkOption {
type = enum ["default" "mini_diff"];
default = "default";
description = "The preferred kind of provider.";
};
};
inline = {
layout = mkOption {
type = enum ["vertical" "horizontal" "buffer"];
default = "vertical";
description = "Customize how output is created in new buffer.";
};
};
chat = {
auto_scroll = mkEnableOption "automatic page scrolling.";
show_settings = mkEnableOption ''
LLM settings to appear at the top of the chat buffer.
'';
start_in_insert_mode = mkEnableOption ''
opening the chat buffer in insert mode.
'';
show_header_separator = mkEnableOption ''
header separators in the chat buffer.
Set this to false if you're using an
external markdown formatting plugin.
'';
show_references =
mkEnableOption ""
// {
default = true;
description = "references in the chat buffer.";
};
show_token_count =
mkEnableOption ""
// {
default = true;
description = "the token count for each response.";
};
intro_message = mkOption {
type = str;
default = "Welcome to CodeCompanion ! Press ? for options.";
description = "Message to appear in chat buffer.";
};
separator = mkOption {
type = str;
default = "";
description = ''
The separator between the
different messages in the chat buffer.
'';
};
icons = {
pinned_buffer = mkOption {
type = str;
default = " ";
description = "The icon to represent a pinned buffer.";
};
watched_buffer = mkOption {
type = str;
default = "👀 ";
description = "The icon to represent a watched buffer.";
};
};
};
action_palette = {
width = mkOption {
type = int;
default = 95;
description = "Width of the action palette.";
};
height = mkOption {
type = int;
default = 10;
description = "Height of the action palette.";
};
prompt = mkOption {
type = str;
default = "Prompt ";
description = "Prompt used for interactive LLM calls.";
};
provider = mkOption {
type = enum ["default" "telescope" "mini_pick"];
default = "default";
description = "Provider used for the action palette.";
};
opts = {
show_default_actions =
mkEnableOption ""
// {
default = true;
description = "showing default actions in the action palette.";
};
show_default_prompt_library =
mkEnableOption ""
// {
default = true;
description = ''
showing default prompt library in the action palette.
'';
};
};
};
};
adapters = mkOption {
type = nullOr luaInline;
default = null;
description = "An adapter is what connects Neovim to an LLM.";
};
strategies = {
chat = {
adapter = mkOption {
type = nullOr str;
default = null;
description = "Adapter used for the chat strategy.";
};
keymaps = mkOption {
type = nullOr attrs;
default = null;
description = "Define or override the default keymaps.";
};
variables = mkOption {
type = nullOr luaInline;
default = null;
description = ''
Define your own variables
to share specific content.
'';
};
slash_commands = mkOption {
type = nullOr luaInline;
default = null;
description = ''
Slash Commands (invoked with /) let you dynamically
insert context into the chat buffer,
such as file contents or date/time.
'';
};
tools = mkOption {
type = nullOr attrs;
default = null;
description = ''
Configure tools to perform specific
tasks when invoked by an LLM.
'';
};
roles = mkOption {
type = nullOr luaInline;
default = null;
description = ''
The chat buffer places user and LLM responses under a H2 header.
These can be customized in the configuration.
'';
};
};
inline = {
adapter = mkOption {
type = nullOr str;
default = null;
description = "Adapter used for the inline strategy.";
};
variables = mkOption {
type = nullOr luaInline;
default = null;
description = ''
Define your own variables
to share specific content.
'';
};
keymaps = {
accept_change = {
n = mkOption {
type = str;
default = "ga";
description = "Accept the suggested change.";
};
};
reject_change = {
n = mkOption {
type = str;
default = "gr";
description = "Reject the suggested change.";
};
};
};
};
};
prompt_library = mkOption {
type = nullOr attrs;
default = null;
description = ''
A prompt library is a collection of prompts
that can be used in the action palette.
'';
};
};
};
};
}

View file

@ -0,0 +1,27 @@
{
config,
lib,
...
}: let
inherit (lib.modules) mkIf;
cfg = config.vim.assistant.codecompanion-nvim;
in {
config = mkIf cfg.enable {
vim = {
startPlugins = [
"plenary-nvim"
];
lazy.plugins = {
codecompanion-nvim = {
package = "codecompanion-nvim";
setupModule = "codecompanion";
inherit (cfg) setupOpts;
};
};
treesitter.enable = true;
};
};
}

View file

@ -0,0 +1,6 @@
{
imports = [
./config.nix
./codecompanion-nvim.nix
];
}

View file

@ -37,6 +37,12 @@ in {
inherit (cfg) setupOpts; inherit (cfg) setupOpts;
after = mkIf cfg.cmp.enable "require('copilot_cmp').setup()"; after = mkIf cfg.cmp.enable "require('copilot_cmp').setup()";
event = [
{
event = "User";
pattern = "LazyFile";
}
];
cmd = ["Copilot" "CopilotAuth" "CopilotDetach" "CopilotPanel" "CopilotStop"]; cmd = ["Copilot" "CopilotAuth" "CopilotDetach" "CopilotPanel" "CopilotStop"];
keys = [ keys = [
(mkLuaKeymap ["n"] cfg.mappings.panel.accept (wrapPanelBinding ''require("copilot.panel").accept'' cfg.mappings.panel.accept) "[copilot] Accept suggestion" {}) (mkLuaKeymap ["n"] cfg.mappings.panel.accept (wrapPanelBinding ''require("copilot.panel").accept'' cfg.mappings.panel.accept) "[copilot] Accept suggestion" {})

View file

@ -2,5 +2,6 @@
imports = [ imports = [
./chatgpt ./chatgpt
./copilot ./copilot
./codecompanion
]; ];
} }

View file

@ -1,6 +1,6 @@
{lib, ...}: let {lib, ...}: let
inherit (lib.options) mkEnableOption mkOption literalMD; inherit (lib.options) mkEnableOption mkOption literalMD;
inherit (lib.types) listOf str either attrsOf submodule enum anything int nullOr; inherit (lib.types) bool listOf str either attrsOf submodule enum anything int nullOr;
inherit (lib.generators) mkLuaInline; inherit (lib.generators) mkLuaInline;
inherit (lib.nvim.types) mkPluginSetupOption luaInline pluginType; inherit (lib.nvim.types) mkPluginSetupOption luaInline pluginType;
inherit (lib.nvim.binds) mkMappingOption; inherit (lib.nvim.binds) mkMappingOption;
@ -21,8 +21,9 @@
freeformType = anything; freeformType = anything;
options = { options = {
module = mkOption { module = mkOption {
type = str; type = nullOr str;
description = "module of the provider"; default = null;
description = "Provider module.";
}; };
}; };
}; };
@ -40,7 +41,7 @@ in {
providers = mkOption { providers = mkOption {
type = attrsOf providerType; type = attrsOf providerType;
default = {}; default = {};
description = "Settings for completion providers"; description = "Settings for completion providers.";
}; };
transform_items = mkOption { transform_items = mkOption {
@ -63,6 +64,12 @@ in {
default = []; default = [];
description = "List of sources to enable for cmdline. Null means use default source list."; description = "List of sources to enable for cmdline. Null means use default source list.";
}; };
keymap = mkOption {
type = keymapType;
default = {};
description = "blink.cmp cmdline keymap";
};
}; };
completion = { completion = {
@ -74,6 +81,16 @@ in {
description = "Delay before auto show triggers"; description = "Delay before auto show triggers";
}; };
}; };
menu.auto_show = mkOption {
type = bool;
default = true;
description = ''
Manages the appearance of the completion menu. You may prevent the menu
from automatically showing by this option to `false` and manually showing
it with the show keymap command.
'';
};
}; };
keymap = mkOption { keymap = mkOption {
@ -103,7 +120,25 @@ in {
fuzzy = { fuzzy = {
prebuilt_binaries = { prebuilt_binaries = {
download = mkBool false '' download = mkBool false ''
Auto-downloads prebuilt binaries. Do not enable, it doesn't work on nix Auto-downloads prebuilt binaries.
::: .{warning}
Do not enable this option, as it does **not work** on Nix!
:::
'';
};
implementation = mkOption {
type = enum ["lua" "prefer_rust" "rust" "prefer_rust_with_warning"];
default = "prefer_rust";
description = ''
fuzzy matcher implementation for Blink.
* `"lua"`: slower, Lua native fuzzy matcher implementation
* `"rust": use the SIMD fuzzy matcher, 'frizbee'
* `"prefer_rust"`: use the rust implementation, but fall back to lua
* `"prefer_rust_with_warning"`: use the rust implementation, and fall back to lua
if it is not available after emitting a warning.
''; '';
}; };
}; };
@ -122,12 +157,14 @@ in {
sourcePlugins = let sourcePlugins = let
sourcePluginType = submodule { sourcePluginType = submodule {
options = { options = {
enable = mkEnableOption "this source";
package = mkOption { package = mkOption {
type = pluginType; type = pluginType;
description = '' description = ''
`blink-cmp` source plugin package. `blink-cmp` source plugin package.
''; '';
}; };
module = mkOption { module = mkOption {
type = str; type = str;
description = '' description = ''
@ -136,7 +173,6 @@ in {
Should be present in the source's documentation. Should be present in the source's documentation.
''; '';
}; };
enable = mkEnableOption "this source";
}; };
}; };
in in

View file

@ -6,8 +6,8 @@
inherit (lib.modules) mkIf; inherit (lib.modules) mkIf;
inherit (lib.strings) optionalString; inherit (lib.strings) optionalString;
inherit (lib.generators) mkLuaInline; inherit (lib.generators) mkLuaInline;
inherit (lib.attrsets) attrValues filterAttrs; inherit (lib.attrsets) attrValues filterAttrs mapAttrsToList;
inherit (lib.lists) map optional; inherit (lib.lists) map optional elem;
inherit (lib.nvim.lua) toLuaObject; inherit (lib.nvim.lua) toLuaObject;
inherit (builtins) concatStringsSep typeOf tryEval attrNames mapAttrs; inherit (builtins) concatStringsSep typeOf tryEval attrNames mapAttrs;
@ -24,7 +24,22 @@
enabledBlinkSources = filterAttrs (_source: definition: definition.enable) cfg.sourcePlugins; enabledBlinkSources = filterAttrs (_source: definition: definition.enable) cfg.sourcePlugins;
blinkSourcePlugins = map (definition: definition.package) (attrValues enabledBlinkSources); blinkSourcePlugins = map (definition: definition.package) (attrValues enabledBlinkSources);
blinkBuiltins = [
"path"
"lsp"
"snippets"
"buffer"
"omni"
];
in { in {
assertions =
mapAttrsToList (provider: definition: {
assertion = elem provider blinkBuiltins || definition.module != null;
message = "`config.vim.autocomplete.blink-cmp.setupOpts.sources.providers.${provider}.module` is `null`: non-builtin providers must set `module`.";
})
cfg.setupOpts.sources.providers;
vim = mkIf cfg.enable { vim = mkIf cfg.enable {
startPlugins = ["blink-compat"] ++ blinkSourcePlugins ++ (optional cfg.friendly-snippets.enable "friendly-snippets"); startPlugins = ["blink-compat"] ++ blinkSourcePlugins ++ (optional cfg.friendly-snippets.enable "friendly-snippets");
lazy.plugins = { lazy.plugins = {

View file

@ -60,12 +60,6 @@ in {
enableSharedCmpSources = true; enableSharedCmpSources = true;
nvim-cmp = { nvim-cmp = {
sources = {
nvim-cmp = null;
buffer = "[Buffer]";
path = "[Path]";
};
sourcePlugins = ["cmp-buffer" "cmp-path"]; sourcePlugins = ["cmp-buffer" "cmp-path"];
setupOpts = { setupOpts = {

View file

@ -98,14 +98,16 @@ in {
sources = mkOption { sources = mkOption {
type = attrsOf (nullOr str); type = attrsOf (nullOr str);
default = {}; default = {
nvim-cmp = null;
buffer = "[Buffer]";
path = "[Path]";
};
example = {
nvim-cmp = null;
buffer = "[Buffer]";
};
description = "The list of sources used by nvim-cmp"; description = "The list of sources used by nvim-cmp";
example = literalExpression ''
{
nvim-cmp = null;
buffer = "[Buffer]";
}
'';
}; };
sourcePlugins = mkOption { sourcePlugins = mkOption {

View file

@ -13,7 +13,7 @@ in {
vim = { vim = {
startPlugins = ["nvim-lint"]; startPlugins = ["nvim-lint"];
pluginRC.nvim-lint = entryAnywhere '' pluginRC.nvim-lint = entryAnywhere ''
require("lint").setup(${toLuaObject cfg.setupOpts}) require("lint").linters_by_ft = ${toLuaObject cfg.linters_by_ft}
''; '';
}; };
}; };

View file

@ -1,27 +1,25 @@
{lib, ...}: let {lib, ...}: let
inherit (lib.options) mkOption mkEnableOption; inherit (lib.options) mkOption mkEnableOption;
inherit (lib.types) attrsOf listOf str; inherit (lib.types) attrsOf listOf str;
inherit (lib.nvim.types) mkPluginSetupOption;
in { in {
options.vim.diagnostics.nvim-lint = { options.vim.diagnostics.nvim-lint = {
enable = mkEnableOption "asynchronous linter plugin for Neovim [nvim-lint]"; enable = mkEnableOption "asynchronous linter plugin for Neovim [nvim-lint]";
setupOpts = mkPluginSetupOption "nvim-lint" {
linters_by_ft = mkOption {
type = attrsOf (listOf str);
default = {};
example = {
text = ["vale"];
markdown = ["vale"];
};
description = '' # nvim-lint does not have a setup table.
Map of filetype to formatters. This option takes a set of linters_by_ft = mkOption {
`key = value` format where the `value` will be converted type = attrsOf (listOf str);
to its Lua equivalent. You are responsible for passing the default = {};
correct Nix data types to generate a correct Lua value that example = {
conform is able to accept. text = ["vale"];
''; markdown = ["vale"];
}; };
description = ''
Map of filetype to formatters. This option takes a set of `key = value`
format where the `value` will be converted to its Lua equivalent
through `toLuaObject. You are responsible for passing the correct Nix
data types to generate a correct Lua value that conform is able to
accept.
'';
}; };
}; };
} }

View file

@ -72,6 +72,16 @@
ls_sources, ls_sources,
null_ls.builtins.diagnostics.eslint_d.with({ null_ls.builtins.diagnostics.eslint_d.with({
command = "${getExe pkg}", command = "${getExe pkg}",
condition = function(utils)
return utils.root_has_file({
"eslint.config.js",
"eslint.config.mjs",
".eslintrc",
".eslintrc.json",
".eslintrc.js",
".eslintrc.yml",
})
end,
}) })
) )
''; '';

View file

@ -0,0 +1,51 @@
{
pkgs,
config,
lib,
...
}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.types) package;
inherit (lib.nvim.types) mkGrammarOption;
cfg = config.vim.languages.cue;
in {
options.vim.languages.cue = {
enable = mkEnableOption "CUE language support";
treesitter = {
enable = mkEnableOption "CUE treesitter" // {default = config.vim.languages.enableTreesitter;};
package = mkGrammarOption pkgs "cue";
};
lsp = {
enable = mkEnableOption "CUE LSP support" // {default = config.vim.languages.enableLSP;};
package = mkOption {
type = package;
default = pkgs.cue;
description = "cue lsp implementation";
};
};
};
config = mkIf cfg.enable (mkMerge [
(mkIf cfg.treesitter.enable {
vim.treesitter.enable = true;
vim.treesitter.grammars = [cfg.treesitter.package];
})
(mkIf cfg.lsp.enable {
vim.lsp.lspconfig.enable = true;
vim.lsp.lspconfig.sources.cue-lsp = ''
lspconfig.cue.setup {
capabilities = capabilities,
on_attach = default_on_attach,
cmd = {"${cfg.lsp.package}/bin/cue", "lsp"},
}
'';
})
]);
}

View file

@ -5,6 +5,8 @@ in {
./asm.nix ./asm.nix
./astro.nix ./astro.nix
./bash.nix ./bash.nix
./cue.nix
./dart.nix
./clang.nix ./clang.nix
./csharp.nix ./csharp.nix
./css.nix ./css.nix
@ -12,6 +14,10 @@ in {
./elixir.nix ./elixir.nix
./gleam.nix ./gleam.nix
./go.nix ./go.nix
./hcl.nix
./helm.nix
./kotlin.nix
./html.nix
./haskell.nix ./haskell.nix
./hcl.nix ./hcl.nix
./html.nix ./html.nix

View file

@ -0,0 +1,89 @@
{
pkgs,
config,
lib,
...
}: let
inherit (builtins) attrNames;
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.lists) isList;
inherit (lib.types) enum either listOf package str;
inherit (lib.nvim.types) mkGrammarOption;
inherit (lib.nvim.lua) expToLua;
cfg = config.vim.languages.helm;
yamlCfg = config.vim.languages.yaml;
helmCmd =
if isList cfg.lsp.package
then cfg.lsp.package
else ["${cfg.lsp.package}/bin/helm_ls" "serve"];
yamlCmd =
if isList yamlCfg.lsp.package
then builtins.elemAt yamlCfg.lsp.package 0
else "${yamlCfg.lsp.package}/bin/yaml-language-server";
defaultServer = "helm-ls";
servers = {
helm-ls = {
package = pkgs.helm-ls;
lspConfig = ''
lspconfig.helm_ls.setup {
capabilities = capabilities,
on_attach = default_on_attach,
cmd = ${expToLua helmCmd},
settings = {
['helm-ls'] = {
yamlls = {
path = "${yamlCmd}"
}
}
}
}
'';
};
};
in {
options.vim.languages.helm = {
enable = mkEnableOption "Helm language support";
treesitter = {
enable = mkEnableOption "Helm treesitter" // {default = config.vim.languages.enableTreesitter;};
package = mkGrammarOption pkgs "helm";
};
lsp = {
enable = mkEnableOption "Helm LSP support" // {default = config.vim.languages.enableLSP;};
server = mkOption {
description = "Helm LSP server to use";
type = enum (attrNames servers);
default = defaultServer;
};
package = mkOption {
description = "Helm LSP server package";
type = either package (listOf str);
default = servers.${cfg.lsp.server}.package;
};
};
};
config = mkIf cfg.enable (mkMerge [
(mkIf cfg.treesitter.enable {
vim.treesitter.enable = true;
vim.treesitter.grammars = [cfg.treesitter.package];
})
(mkIf cfg.lsp.enable {
vim.lsp.lspconfig.enable = true;
vim.lsp.lspconfig.sources.helm-lsp = servers.${cfg.lsp.server}.lspConfig;
})
{
# Enables filetype detection
vim.startPlugins = [pkgs.vimPlugins.vim-helm];
}
]);
}

View file

@ -64,6 +64,26 @@
} }
''; '';
}; };
intelephense = {
package = pkgs.intelephense;
lspConfig = ''
lspconfig.intelephense.setup{
capabilities = capabilities,
on_attach = default_on_attach,
cmd = ${
if isList cfg.lsp.package
then expToLua cfg.lsp.package
else ''
{
"${getExe cfg.lsp.package}",
"--stdio"
},
''
}
}
'';
};
}; };
in { in {
options.vim.languages.php = { options.vim.languages.php = {

View file

@ -72,6 +72,16 @@
ls_sources, ls_sources,
null_ls.builtins.diagnostics.eslint_d.with({ null_ls.builtins.diagnostics.eslint_d.with({
command = "${getExe pkg}", command = "${getExe pkg}",
condition = function(utils)
return utils.root_has_file({
"eslint.config.js",
"eslint.config.mjs",
".eslintrc",
".eslintrc.json",
".eslintrc.js",
".eslintrc.yml",
})
end,
}) })
) )
''; '';

View file

@ -123,6 +123,16 @@
ls_sources, ls_sources,
null_ls.builtins.diagnostics.eslint_d.with({ null_ls.builtins.diagnostics.eslint_d.with({
command = "${getExe pkg}", command = "${getExe pkg}",
condition = function(utils)
return utils.root_has_file({
"eslint.config.js",
"eslint.config.mjs",
".eslintrc",
".eslintrc.json",
".eslintrc.js",
".eslintrc.yml",
})
end,
}) })
) )
''; '';

View file

@ -14,14 +14,27 @@
cfg = config.vim.languages.yaml; cfg = config.vim.languages.yaml;
onAttach =
if config.vim.languages.helm.lsp.enable
then ''
on_attach = function(client, bufnr)
local filetype = vim.bo[bufnr].filetype
if filetype == "helm" then
client.stop()
end
end''
else "on_attach = default_on_attach";
defaultServer = "yaml-language-server"; defaultServer = "yaml-language-server";
servers = { servers = {
yaml-language-server = { yaml-language-server = {
package = pkgs.nodePackages.yaml-language-server; package = pkgs.nodePackages.yaml-language-server;
lspConfig = '' lspConfig = ''
lspconfig.yamlls.setup { lspconfig.yamlls.setup {
capabilities = capabilities; capabilities = capabilities,
on_attach = default_on_attach; ${onAttach},
cmd = ${ cmd = ${
if isList cfg.lsp.package if isList cfg.lsp.package
then expToLua cfg.lsp.package then expToLua cfg.lsp.package

View file

@ -3,51 +3,24 @@
lib, lib,
... ...
}: let }: let
inherit (lib.modules) mkIf mkMerge; inherit (lib.modules) mkIf mkDefault;
inherit (lib.strings) optionalString;
inherit (lib.nvim.dag) entryAnywhere;
inherit (lib.nvim.binds) addDescriptionsToMappings mkSetLuaBinding;
cfg = config.vim.lsp; cfg = config.vim.lsp;
self = import ./lspsaga.nix {inherit lib;};
mappingDefinitions = self.options.vim.lsp.lspsaga.mappings;
mappings = addDescriptionsToMappings cfg.lspsaga.mappings mappingDefinitions;
in { in {
config = mkIf (cfg.enable && cfg.lspsaga.enable) { config = mkIf (cfg.enable && cfg.lspsaga.enable) {
vim = { vim = {
startPlugins = ["lspsaga-nvim"]; lazy.plugins.lspsaga-nvim = {
package = "lspsaga-nvim";
setupModule = "lspsaga";
inherit (cfg.lspsaga) setupOpts;
maps = { event = ["LspAttach"];
visual = mkSetLuaBinding mappings.codeAction "require('lspsaga.codeaction').range_code_action";
normal = mkMerge [
(mkSetLuaBinding mappings.lspFinder "require('lspsaga.provider').lsp_finder")
(mkSetLuaBinding mappings.renderHoveredDoc "require('lspsaga.hover').render_hover_doc")
(mkSetLuaBinding mappings.smartScrollUp "function() require('lspsaga.action').smart_scroll_with_saga(-1) end")
(mkSetLuaBinding mappings.smartScrollDown "function() require('lspsaga.action').smart_scroll_with_saga(1) end")
(mkSetLuaBinding mappings.rename "require('lspsaga.rename').rename")
(mkSetLuaBinding mappings.previewDefinition "require('lspsaga.provider').preview_definition")
(mkSetLuaBinding mappings.showLineDiagnostics "require('lspsaga.diagnostic').show_line_diagnostics")
(mkSetLuaBinding mappings.showCursorDiagnostics "require('lspsaga.diagnostic').show_cursor_diagnostics")
(mkSetLuaBinding mappings.nextDiagnostic "require('lspsaga.diagnostic').navigate('next')")
(mkSetLuaBinding mappings.previousDiagnostic "require('lspsaga.diagnostic').navigate('prev')")
(mkSetLuaBinding mappings.codeAction "require('lspsaga.codeaction').code_action")
(mkIf (!cfg.lspSignature.enable) (mkSetLuaBinding mappings.signatureHelp "require('lspsaga.signaturehelp').signature_help"))
];
}; };
pluginRC.lspsaga = entryAnywhere '' # Optional dependencies, pretty useful to enhance default functionality of
require('lspsaga').init_lsp_saga({ # Lspsaga.
${optionalString config.vim.ui.borders.plugins.lspsaga.enable '' treesitter.enable = mkDefault true;
border_style = '${config.vim.ui.borders.plugins.lspsaga.style}', visuals.nvim-web-devicons.enable = mkDefault true;
''}
})
'';
}; };
}; };
} }

View file

@ -1,29 +1,32 @@
{lib, ...}: let {
inherit (lib.options) mkEnableOption; config,
inherit (lib.nvim.binds) mkMappingOption; lib,
...
}: let
inherit (lib.modules) mkRemovedOptionModule;
inherit (lib.options) mkOption mkEnableOption;
inherit (lib.nvim.types) borderType mkPluginSetupOption;
in { in {
imports = [
(mkRemovedOptionModule ["vim" "lsp" "lspsaga" "mappings"] ''
Lspsaga mappings have been removed from nvf, as the original author has made
very drastic changes to the API after taking back ownership, and the fork we
used is now archived. Please refer to Lspsaga documentation to add keybinds
for functionality you have used.
<https://nvimdev.github.io/lspsaga>
'')
];
options.vim.lsp.lspsaga = { options.vim.lsp.lspsaga = {
enable = mkEnableOption "LSP Saga"; enable = mkEnableOption "LSP Saga";
mappings = { setupOpts = mkPluginSetupOption "lspsaga" {
lspFinder = mkMappingOption "LSP Finder [LSPSaga]" "<leader>lf"; border_style = mkOption {
renderHoveredDoc = mkMappingOption "Rendered hovered docs [LSPSaga]" "<leader>lh"; type = borderType;
default = config.vim.ui.borders.globalStyle;
smartScrollUp = mkMappingOption "Smart scroll up [LSPSaga]" "<C-f>"; description = "Border type, see {command}`:help nvim_open_win`";
smartScrollDown = mkMappingOption "Smart scroll up [LSPSaga]" "<C-b>"; };
rename = mkMappingOption "Rename [LSPSaga]" "<leader>lr";
previewDefinition = mkMappingOption "Preview definition [LSPSaga]" "<leader>ld";
showLineDiagnostics = mkMappingOption "Show line diagnostics [LSPSaga]" "<leader>ll";
showCursorDiagnostics = mkMappingOption "Show cursor diagnostics [LSPSaga]" "<leader>lc";
nextDiagnostic = mkMappingOption "Next diagnostic [LSPSaga]" "<leader>ln";
previousDiagnostic = mkMappingOption "Previous diagnostic [LSPSaga]" "<leader>lp";
codeAction = mkMappingOption "Code action [LSPSaga]" "<leader>ca";
signatureHelp = mkMappingOption "Signature help [LSPSaga]" "<leader>ls";
}; };
}; };
} }

View file

@ -10,13 +10,13 @@
cfg = config.vim.minimap.minimap-vim; cfg = config.vim.minimap.minimap-vim;
in { in {
config = mkIf cfg.enable { config = mkIf cfg.enable {
vim.startPlugins = [ vim = {
pkgs.code-minimap startPlugins = ["minimap-vim"];
"minimap-vim" extraPackages = [pkgs.code-minimap];
];
vim.binds.whichKey.register = pushDownDefault { binds.whichKey.register = pushDownDefault {
"<leader>m" = "+Minimap"; "<leader>m" = "+Minimap";
};
}; };
}; };
} }

View file

@ -102,11 +102,7 @@ in {
setupOpts = mkPluginSetupOption "colorizer" { setupOpts = mkPluginSetupOption "colorizer" {
filetypes = mkOption { filetypes = mkOption {
description = '' type = attrsOf settingSubmodule;
Filetypes to enable on and their option overrides.
"*" means enable on all filetypes. Filetypes prefixed with "!" are disabled.
'';
default = {}; default = {};
example = { example = {
"*" = {}; "*" = {};
@ -115,13 +111,21 @@ in {
AARRGGBB = false; AARRGGBB = false;
}; };
}; };
type = attrsOf settingSubmodule; description = ''
Filetypes to enable on and their option overrides.
`"*"` means enable on all filetypes. Filetypes prefixed with `"!"` are disabled.
'';
}; };
user_default_options = mkOption { user_default_options = mkOption {
description = "Default options";
default = {};
type = settingSubmodule; type = settingSubmodule;
default = {};
description = ''
`user_default_options` is the second parameter to nvim-colorizer's setup function.
Anything set here is the inverse of the previous setup configuration.
'';
}; };
}; };
}; };

View file

@ -17,6 +17,7 @@
./nix-develop ./nix-develop
./outline ./outline
./preview ./preview
./snacks-nvim
./surround ./surround
./telescope ./telescope
./wakatime ./wakatime

View file

@ -0,0 +1,20 @@
{
config,
lib,
...
}: let
inherit (lib.modules) mkIf;
inherit (lib.nvim.lua) toLuaObject;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.utility.snacks-nvim;
in {
config = mkIf cfg.enable {
vim = {
startPlugins = ["snacks-nvim"];
pluginRC.snacks-nvim = entryAnywhere ''
require("snacks").setup(${toLuaObject cfg.setupOpts});
'';
};
};
}

View file

@ -0,0 +1,6 @@
{
imports = [
./config.nix
./snacks-nvim.nix
];
}

View file

@ -0,0 +1,12 @@
{lib, ...}: let
inherit (lib.options) mkEnableOption;
inherit (lib.nvim.types) mkPluginSetupOption;
in {
options.vim.utility.snacks-nvim = {
enable = mkEnableOption ''
collection of QoL plugins for Neovim [snacks-nvim]
'';
setupOpts = mkPluginSetupOption "snacks-nvim" {};
};
}

View file

@ -14,10 +14,11 @@ in {
vim = { vim = {
lazy.plugins.nvim-surround = { lazy.plugins.nvim-surround = {
package = "nvim-surround"; package = "nvim-surround";
setupModule = "nvim-surround"; setupModule = "nvim-surround";
inherit (cfg) setupOpts; inherit (cfg) setupOpts;
event = ["BufReadPre" "BufNewFile"];
keys = [ keys = [
(mkLznKey "i" cfg.setupOpts.keymaps.insert) (mkLznKey "i" cfg.setupOpts.keymaps.insert)
(mkLznKey "i" cfg.setupOpts.keymaps.insert_line) (mkLznKey "i" cfg.setupOpts.keymaps.insert_line)

View file

@ -37,9 +37,13 @@ in {
type = bool; type = bool;
default = false; default = false;
description = '' description = ''
nvim-surround: add/change/delete surrounding delimiter pairs with ease. Whether to enable nvim-surround, Neovim plugin to add/change/delete
Note that the default mappings deviate from upstream to avoid conflicts surrounding delimiter pairs with ease.
with nvim-leap.
::: {.note}
The default mappings deviate from upstream to avoid conflicts with nvim-leap.
You may change those in your configuration if you do not use nvim-leap
:::
''; '';
}; };
setupOpts = mkPluginSetupOption "nvim-surround" { setupOpts = mkPluginSetupOption "nvim-surround" {
@ -61,7 +65,9 @@ in {
useVendoredKeybindings = mkOption { useVendoredKeybindings = mkOption {
type = bool; type = bool;
default = true; default = true;
description = "Use alternative set of keybindings that avoids conflicts with other popular plugins, e.g. nvim-leap"; description = ''
Use alternative set of keybindings that avoids conflicts with other popular plugins, e.g. nvim-leap
'';
}; };
}; };
} }

View file

@ -6,9 +6,8 @@
... ...
}: let }: let
inherit (pkgs) vimPlugins; inherit (pkgs) vimPlugins;
inherit (lib.strings) isString; inherit (lib.trivial) flip;
inherit (lib.lists) filter map; inherit (builtins) path filter isString;
inherit (builtins) path;
getPin = name: ((pkgs.callPackages ../../../npins/sources.nix {}) // config.vim.pluginOverrides).${name}; getPin = name: ((pkgs.callPackages ../../../npins/sources.nix {}) // config.vim.pluginOverrides).${name};
@ -76,13 +75,6 @@
buildConfigPlugins config.vim.optPlugins buildConfigPlugins config.vim.optPlugins
); );
# additional Lua and Python3 packages, mapped to their respective functions
# to conform to the format mnw expects. end user should
# only ever need to pass a list of packages, which are modified
# here
extraLuaPackages = ps: map (x: ps.${x}) config.vim.luaPackages;
extraPython3Packages = ps: map (x: ps.${x}) config.vim.python3Packages;
# Wrap the user's desired (unwrapped) Neovim package with arguments that'll be used to # Wrap the user's desired (unwrapped) Neovim package with arguments that'll be used to
# generate a wrapped Neovim package. # generate a wrapped Neovim package.
neovim-wrapped = inputs.mnw.lib.wrap pkgs { neovim-wrapped = inputs.mnw.lib.wrap pkgs {
@ -92,9 +84,17 @@
extraBinPath = config.vim.extraPackages; extraBinPath = config.vim.extraPackages;
initLua = config.vim.builtLuaConfigRC; initLua = config.vim.builtLuaConfigRC;
luaFiles = config.vim.extraLuaFiles; luaFiles = config.vim.extraLuaFiles;
providers = {
python3 = {
enable = config.vim.withPython3;
extraPackages = ps: map (flip builtins.getAttr ps) config.vim.python3Packages;
};
ruby.enable = config.vim.withRuby;
nodeJs.enable = config.vim.withNodeJs;
};
aliases = lib.optional config.vim.viAlias "vi" ++ lib.optional config.vim.vimAlias "vim";
inherit (config.vim) viAlias vimAlias withRuby withNodeJs withPython3; extraLuaPackages = ps: map (flip builtins.getAttr ps) config.vim.luaPackages;
inherit extraLuaPackages extraPython3Packages;
}; };
dummyInit = pkgs.writeText "nvf-init.lua" config.vim.builtLuaConfigRC; dummyInit = pkgs.writeText "nvf-init.lua" config.vim.builtLuaConfigRC;

View file

@ -134,6 +134,15 @@ in {
startPlugins = ["lz-n" "lzn-auto-require"]; startPlugins = ["lz-n" "lzn-auto-require"];
optPlugins = pluginPackages; optPlugins = pluginPackages;
augroups = [{name = "nvf_lazy_file_hooks";}];
autocmds = [
{
event = ["BufReadPost" "BufNewFile" "BufWritePre"];
group = "nvf_lazy_file_hooks";
command = "doautocmd User LazyFile";
once = true;
}
];
lazy.builtLazyConfig = '' lazy.builtLazyConfig = ''
require('lz.n').load(${toLuaObject lznSpecs}) require('lz.n').load(${toLuaObject lznSpecs})

View file

@ -126,7 +126,7 @@
}; };
event = mkOption { event = mkOption {
type = nullOr (oneOf [str (listOf str) lznEvent]); type = nullOr (oneOf [str lznEvent (listOf (either str lznEvent))]);
default = null; default = null;
description = "Lazy-load on event"; description = "Lazy-load on event";
}; };

View file

@ -8,9 +8,9 @@
"repo": "aerial.nvim" "repo": "aerial.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "3284a2cb858ba009c79da87d5e010ccee3c99c4d", "revision": "2204cf08791449a6a2fd2ef187a29112eeefd989",
"url": "https://github.com/stevearc/aerial.nvim/archive/3284a2cb858ba009c79da87d5e010ccee3c99c4d.tar.gz", "url": "https://github.com/stevearc/aerial.nvim/archive/2204cf08791449a6a2fd2ef187a29112eeefd989.tar.gz",
"hash": "0fsvd6ndkp3r8lzpyshqshapna5sh37nz6qabznpwpwax42ghakp" "hash": "1482md9kzyrr7mjkca3nnyqgy64q8clhi6xbvgql8qjw7ifz51mx"
}, },
"alpha-nvim": { "alpha-nvim": {
"type": "Git", "type": "Git",
@ -46,10 +46,10 @@
"pre_releases": false, "pre_releases": false,
"version_upper_bound": null, "version_upper_bound": null,
"release_prefix": null, "release_prefix": null,
"version": "v0.12.4", "version": "v0.13.1",
"revision": "a5625f1b14fb5c44b0f9256f5ec0714817f5e355", "revision": "29861baf37bbb16f5dbf524a6edac5daaad6f4fc",
"url": "https://api.github.com/repos/saghen/blink.cmp/tarball/v0.12.4", "url": "https://api.github.com/repos/saghen/blink.cmp/tarball/v0.13.1",
"hash": "0jdifjifxjqa8r80wlqgkn5rm48wziap92340xz228nrgd0c9g69" "hash": "1y5p7i6g884r65mhfsazx28g0qs37hc57jm37i7kch9kcf8m7sbq"
}, },
"blink-cmp-spell": { "blink-cmp-spell": {
"type": "Git", "type": "Git",
@ -59,9 +59,9 @@
"repo": "blink-cmp-spell" "repo": "blink-cmp-spell"
}, },
"branch": "master", "branch": "master",
"revision": "38d6797dea6f72baa6e8b3bfca6da96d8fcac64d", "revision": "782bc76be09c0c5dd08e3edd04e4ec1054c3158e",
"url": "https://github.com/ribru17/blink-cmp-spell/archive/38d6797dea6f72baa6e8b3bfca6da96d8fcac64d.tar.gz", "url": "https://github.com/ribru17/blink-cmp-spell/archive/782bc76be09c0c5dd08e3edd04e4ec1054c3158e.tar.gz",
"hash": "19pnasa446iiapgsr3z2fpk0nnrzh8g5wrzrq8n0y4q0z6spc9f6" "hash": "13adgj9qxfmbwzvx348kpkm70h0jli9qv3bqhkwh8p6zkfajm607"
}, },
"blink-compat": { "blink-compat": {
"type": "Git", "type": "Git",
@ -95,9 +95,9 @@
"repo": "blink-ripgrep.nvim" "repo": "blink-ripgrep.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "305e1ae5363f527abdfd71915a3fe1f42af52824", "revision": "91aee73557237b0cc1313e4ed2b32f10de6cc65e",
"url": "https://github.com/mikavilpas/blink-ripgrep.nvim/archive/305e1ae5363f527abdfd71915a3fe1f42af52824.tar.gz", "url": "https://github.com/mikavilpas/blink-ripgrep.nvim/archive/91aee73557237b0cc1313e4ed2b32f10de6cc65e.tar.gz",
"hash": "1hcfyicgf33dlr2hhgnhhzdcxxqw1v8v1yjfbnwvlcsgw0rhjl8w" "hash": "1jg4559946rzsvvny1r7jki1gmr70yjxr8qlnsjkjyxj8h0pjjwl"
}, },
"bufdelete-nvim": { "bufdelete-nvim": {
"type": "Git", "type": "Git",
@ -119,9 +119,9 @@
"repo": "nvim" "repo": "nvim"
}, },
"branch": "main", "branch": "main",
"revision": "4bb938bbba41d306db18bf0eb0633a5f28fd7ba0", "revision": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429",
"url": "https://github.com/catppuccin/nvim/archive/4bb938bbba41d306db18bf0eb0633a5f28fd7ba0.tar.gz", "url": "https://github.com/catppuccin/nvim/archive/5b5e3aef9ad7af84f463d17b5479f06b87d5c429.tar.gz",
"hash": "112q9iqfp6ay13c1ca1s9svhxqfgnqfn0a1k2s7dy9ydswwmcxbk" "hash": "0jmrwag2dx4b1g9x32xwxcr8y0l159hqks09z5miy99wav6dy7z2"
}, },
"ccc-nvim": { "ccc-nvim": {
"type": "Git", "type": "Git",
@ -243,6 +243,18 @@
"url": "https://github.com/ray-x/cmp-treesitter/archive/958fcfa0d8ce46d215e19cc3992c542f576c4123.tar.gz", "url": "https://github.com/ray-x/cmp-treesitter/archive/958fcfa0d8ce46d215e19cc3992c542f576c4123.tar.gz",
"hash": "05as01c2f7i20zkzpqbq9n8ji9bcwd678ixmxnrz9vmz5zsj8q7i" "hash": "05as01c2f7i20zkzpqbq9n8ji9bcwd678ixmxnrz9vmz5zsj8q7i"
}, },
"codecompanion-nvim": {
"type": "Git",
"repository": {
"type": "GitHub",
"owner": "olimorris",
"repo": "codecompanion.nvim"
},
"branch": "main",
"revision": "4f56b047f03bf5edc0d71bf0ca694243a49b912f",
"url": "https://github.com/olimorris/codecompanion.nvim/archive/4f56b047f03bf5edc0d71bf0ca694243a49b912f.tar.gz",
"hash": "1mrb8qxd6mz5dlly9bh30pcd599gfy173f6pd4p8lszs3xhp598k"
},
"codewindow-nvim": { "codewindow-nvim": {
"type": "Git", "type": "Git",
"repository": { "repository": {
@ -275,9 +287,9 @@
"repo": "conform.nvim" "repo": "conform.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "a6f5bdb78caa305496357d17e962bbc4c0b392e2", "revision": "db8a4a9edb217067b1d7a2e0362c74bfe9cc944d",
"url": "https://github.com/stevearc/conform.nvim/archive/a6f5bdb78caa305496357d17e962bbc4c0b392e2.tar.gz", "url": "https://github.com/stevearc/conform.nvim/archive/db8a4a9edb217067b1d7a2e0362c74bfe9cc944d.tar.gz",
"hash": "1jkm8pbfnp2s9y70cc67pj2fa25a4jl1y4lx6y1k5i323f4lplhz" "hash": "13vpizk8ani64d3a9yrm0g3bz8m6m6cxnpzr2xgslbhxnkmbxq7j"
}, },
"copilot-cmp": { "copilot-cmp": {
"type": "Git", "type": "Git",
@ -311,9 +323,9 @@
"repo": "crates.nvim" "repo": "crates.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "1803c8b5516610ba7cdb759a4472a78414ee6cd4", "revision": "403a0abef0e2aec12749a534dc468d6fd50c6741",
"url": "https://github.com/Saecki/crates.nvim/archive/1803c8b5516610ba7cdb759a4472a78414ee6cd4.tar.gz", "url": "https://github.com/Saecki/crates.nvim/archive/403a0abef0e2aec12749a534dc468d6fd50c6741.tar.gz",
"hash": "0bqcdsbhs1ab51nmqd3cx7p6nlpmrjj0a53hax9scpqzr23nvr66" "hash": "19ix86nbww5vljinfwfpjkz806j7dzw4pgjyjya201jb0n22lrc6"
}, },
"csharpls-extended-lsp-nvim": { "csharpls-extended-lsp-nvim": {
"type": "Git", "type": "Git",
@ -323,9 +335,9 @@
"repo": "csharpls-extended-lsp.nvim" "repo": "csharpls-extended-lsp.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "7768c15fe901fd58bfd557034a3cad191a820cfb", "revision": "991d2c43afd7c7be77edd27a2ae686f9779382da",
"url": "https://github.com/Decodetalkers/csharpls-extended-lsp.nvim/archive/7768c15fe901fd58bfd557034a3cad191a820cfb.tar.gz", "url": "https://github.com/Decodetalkers/csharpls-extended-lsp.nvim/archive/991d2c43afd7c7be77edd27a2ae686f9779382da.tar.gz",
"hash": "0s2jpc22c6s9nnp47kia01bv95xipyn08d0s0pax11fddv2b951f" "hash": "10jj6x78k34yrarp5ydc7n1ylp2xxgxl7jqh1y4d133mgcygabak"
}, },
"dashboard-nvim": { "dashboard-nvim": {
"type": "Git", "type": "Git",
@ -395,9 +407,9 @@
"repo": "elixir-tools.nvim" "repo": "elixir-tools.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "f7e18753f5587b422aac628249fa46c66ed24af3", "revision": "6beae8194152e2d8b4a59de19a3e60c1f7ffcff5",
"url": "https://github.com/elixir-tools/elixir-tools.nvim/archive/f7e18753f5587b422aac628249fa46c66ed24af3.tar.gz", "url": "https://github.com/elixir-tools/elixir-tools.nvim/archive/6beae8194152e2d8b4a59de19a3e60c1f7ffcff5.tar.gz",
"hash": "06h1aqdkr3c5samz819j8c1cgnz636p6qbiavg504fd4kqz3ykzr" "hash": "0kncq60x3kvy4plszq4zygrsy6cyzf43g2xgzqwif88i85ki7zq6"
}, },
"fastaction-nvim": { "fastaction-nvim": {
"type": "Git", "type": "Git",
@ -431,9 +443,9 @@
"repo": "flutter-tools.nvim" "repo": "flutter-tools.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "d135e1d02f6a3a8808efc2b58950ab1fdd49d000", "revision": "70430c32d176f4a15c6e2c80586cd2791e3a664e",
"url": "https://github.com/akinsho/flutter-tools.nvim/archive/d135e1d02f6a3a8808efc2b58950ab1fdd49d000.tar.gz", "url": "https://github.com/akinsho/flutter-tools.nvim/archive/70430c32d176f4a15c6e2c80586cd2791e3a664e.tar.gz",
"hash": "06hiiwzb00lc7qalq74lyydks8v007fnsbpkgpkfm7zki0dg22m7" "hash": "01p721ca4as9b9nn4qibb6s775fn66j13zsx2d3flhkssii06v45"
}, },
"friendly-snippets": { "friendly-snippets": {
"type": "Git", "type": "Git",
@ -455,9 +467,9 @@
"repo": "fzf-lua" "repo": "fzf-lua"
}, },
"branch": "main", "branch": "main",
"revision": "9b84b53f3297d4912d7eb95b979e9b27e2e61281", "revision": "03eed634a3b1f4a4dc53f928868566b0b697dabe",
"url": "https://github.com/ibhagwan/fzf-lua/archive/9b84b53f3297d4912d7eb95b979e9b27e2e61281.tar.gz", "url": "https://github.com/ibhagwan/fzf-lua/archive/03eed634a3b1f4a4dc53f928868566b0b697dabe.tar.gz",
"hash": "1p3fb68h7x50b6m6aaxxqcylipa5rdg0yfz6jlrd5i2kmr5gxldq" "hash": "007fz9rwhcfx8l6k6dfnm91dcc4gsazr3vqbv95z5l1h1j184v6c"
}, },
"gesture-nvim": { "gesture-nvim": {
"type": "Git", "type": "Git",
@ -503,9 +515,9 @@
"repo": "gitsigns.nvim" "repo": "gitsigns.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "4c40357994f386e72be92a46f41fc1664c84c87d", "revision": "7010000889bfb6c26065e0b0f7f1e6aa9163edd9",
"url": "https://github.com/lewis6991/gitsigns.nvim/archive/4c40357994f386e72be92a46f41fc1664c84c87d.tar.gz", "url": "https://github.com/lewis6991/gitsigns.nvim/archive/7010000889bfb6c26065e0b0f7f1e6aa9163edd9.tar.gz",
"hash": "1d3i82g5barb9afk7ra3gmcwwjvaqp49sbdz0acki4a0yc80m31w" "hash": "0hl572j5l1bqg51rg545bavxs8kxya02ss3fj5fxvp9ylrnaqsx9"
}, },
"glow-nvim": { "glow-nvim": {
"type": "Git", "type": "Git",
@ -527,9 +539,9 @@
"repo": "gruvbox.nvim" "repo": "gruvbox.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "089b60e92aa0a1c6fa76ff527837cd35b6f5ac81", "revision": "15958f5ee43e144856cd2084ce6c571bfdb44504",
"url": "https://github.com/ellisonleao/gruvbox.nvim/archive/089b60e92aa0a1c6fa76ff527837cd35b6f5ac81.tar.gz", "url": "https://github.com/ellisonleao/gruvbox.nvim/archive/15958f5ee43e144856cd2084ce6c571bfdb44504.tar.gz",
"hash": "0mr8q2xi4s2anibll8lhxax7q1akyg687bp5r58gckkhi04064q4" "hash": "16nrxcpds3zacqmfw5jsd5d8qqbwllkw9xacjkglcnaynp4qghqq"
}, },
"harpoon": { "harpoon": {
"type": "Git", "type": "Git",
@ -551,9 +563,9 @@
"repo": "haskell-tools.nvim" "repo": "haskell-tools.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "834d949f3911297fd657787c73f647be9675ae53", "revision": "52608d83b424de44e914711c0f505906816e7427",
"url": "https://github.com/mrcjkb/haskell-tools.nvim/archive/834d949f3911297fd657787c73f647be9675ae53.tar.gz", "url": "https://github.com/mrcjkb/haskell-tools.nvim/archive/52608d83b424de44e914711c0f505906816e7427.tar.gz",
"hash": "1l4jm6010mhjq8bvjc0sbqh0bfadyrq2wisdvsjrgjb0h0w1s8d4" "hash": "1ngz8zzyni2wh0xhvrcl27am39kqaaabh5y9c4i8ym211ravzhv6"
}, },
"highlight-undo-nvim": { "highlight-undo-nvim": {
"type": "Git", "type": "Git",
@ -650,9 +662,9 @@
"repo": "leap.nvim" "repo": "leap.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "8b826a9fc766bffd14288aee01847cb0d6c6c383", "revision": "346a16ef942635a8ca5ff92e603d07e7e8be6cbe",
"url": "https://github.com/ggandor/leap.nvim/archive/8b826a9fc766bffd14288aee01847cb0d6c6c383.tar.gz", "url": "https://github.com/ggandor/leap.nvim/archive/346a16ef942635a8ca5ff92e603d07e7e8be6cbe.tar.gz",
"hash": "1biydwaky3104c1dys8m37yalrgcwyjyprlbk31j82y4mvmd1lmy" "hash": "0rq73f7sw1sf8dn6angwgns8jd811aiixmvrndgqz2939dlqaw2l"
}, },
"leetcode-nvim": { "leetcode-nvim": {
"type": "Git", "type": "Git",
@ -685,9 +697,9 @@
"repo": "lsp_signature.nvim" "repo": "lsp_signature.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "693b75f1dc31f5af45ceb762966a6ab00af1850b", "revision": "8b681c86b0bd7f932cd91987983d91497e43d83f",
"url": "https://github.com/ray-x/lsp_signature.nvim/archive/693b75f1dc31f5af45ceb762966a6ab00af1850b.tar.gz", "url": "https://github.com/ray-x/lsp_signature.nvim/archive/8b681c86b0bd7f932cd91987983d91497e43d83f.tar.gz",
"hash": "0jfiips0ddbry91h52k671sll0zfqpz10dc8fw0w5np6lwiy7z34" "hash": "1ap077hgl334klfyi2hv81hf6r9mqpkarrz0b3ky99aavz7bmn2j"
}, },
"lspkind-nvim": { "lspkind-nvim": {
"type": "Git", "type": "Git",
@ -705,13 +717,13 @@
"type": "Git", "type": "Git",
"repository": { "repository": {
"type": "GitHub", "type": "GitHub",
"owner": "tami5", "owner": "nvimdev",
"repo": "lspsaga.nvim" "repo": "lspsaga.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "5faeec9f2508d2d49a66c0ac0d191096b4e3fa81", "revision": "6063935cf68de9aa6dd79f8e1caf5df0a9385de3",
"url": "https://github.com/tami5/lspsaga.nvim/archive/5faeec9f2508d2d49a66c0ac0d191096b4e3fa81.tar.gz", "url": "https://github.com/nvimdev/lspsaga.nvim/archive/6063935cf68de9aa6dd79f8e1caf5df0a9385de3.tar.gz",
"hash": "1bw71db69na2sriv9q167z9bgkir4nwny1bdfv9z606bmng4hhzc" "hash": "1pqasjg2f2yd3ci8hyxfqqs7xnkmwdc411dlm6qg1agiv1h8v205"
}, },
"lua-utils-nvim": { "lua-utils-nvim": {
"type": "Git", "type": "Git",
@ -733,9 +745,9 @@
"repo": "lualine.nvim" "repo": "lualine.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "f4f791f67e70d378a754d02da068231d2352e5bc", "revision": "b8b60c7f1d0d95ad74ee215b2291280b30482476",
"url": "https://github.com/hoob3rt/lualine.nvim/archive/f4f791f67e70d378a754d02da068231d2352e5bc.tar.gz", "url": "https://github.com/hoob3rt/lualine.nvim/archive/b8b60c7f1d0d95ad74ee215b2291280b30482476.tar.gz",
"hash": "12jm3vc3mi0p9kjw7g1cd6a9nkgws1mvq2h7lpfmflad8zfmw35q" "hash": "02xyjp446b2nypw3hh4k6b6g9f892kxmmdv23s7dypcws28v50m9"
}, },
"luasnip": { "luasnip": {
"type": "Git", "type": "Git",
@ -757,9 +769,9 @@
"repo": "lz.n" "repo": "lz.n"
}, },
"branch": "master", "branch": "master",
"revision": "eb94a39433518b26a0eeb117b937b21dc6b18713", "revision": "d5856041d60f9500804c872709b8d5f59505d92b",
"url": "https://github.com/nvim-neorocks/lz.n/archive/eb94a39433518b26a0eeb117b937b21dc6b18713.tar.gz", "url": "https://github.com/nvim-neorocks/lz.n/archive/d5856041d60f9500804c872709b8d5f59505d92b.tar.gz",
"hash": "1sarbbj53b5f4mcj6b1iqkbjacrh3w63vp8dpz6j802wqwvi51wc" "hash": "1dxsy8baq7zdc047ixxxa1qkfw48jgbng4vngwlg6gc2rv16rf36"
}, },
"lzn-auto-require": { "lzn-auto-require": {
"type": "Git", "type": "Git",
@ -829,9 +841,9 @@
"repo": "mini.base16" "repo": "mini.base16"
}, },
"branch": "main", "branch": "main",
"revision": "d64302f57a692a2ff2c9a4556935780133f821f9", "revision": "44240f11871c15aba8fc49959ebd27c0b4768a40",
"url": "https://github.com/echasnovski/mini.base16/archive/d64302f57a692a2ff2c9a4556935780133f821f9.tar.gz", "url": "https://github.com/echasnovski/mini.base16/archive/44240f11871c15aba8fc49959ebd27c0b4768a40.tar.gz",
"hash": "1vkhhqb9785ypmp7bzqljxfdjg5gz5jxkxp0wl6iacjvwwf18dq7" "hash": "0z4vvsm2hc1cab5qqd28x6jzyzh23cdijrrs1hkkkj0nj3si3zkn"
}, },
"mini-basics": { "mini-basics": {
"type": "Git", "type": "Git",
@ -853,9 +865,9 @@
"repo": "mini.bracketed" "repo": "mini.bracketed"
}, },
"branch": "main", "branch": "main",
"revision": "95e1023c1734c805ad3b9da364fc3518e0881c70", "revision": "0ec65567ffde0ad4d94d794d55f3b627203b496a",
"url": "https://github.com/echasnovski/mini.bracketed/archive/95e1023c1734c805ad3b9da364fc3518e0881c70.tar.gz", "url": "https://github.com/echasnovski/mini.bracketed/archive/0ec65567ffde0ad4d94d794d55f3b627203b496a.tar.gz",
"hash": "0is5mk998v3givmlfq5c09pdww7bm1nmrwm5iijhvjgc2rlxxlc4" "hash": "05xg63hw83n99al5sylysbq1xpschlj547s3j484jjs7wsbzzp6c"
}, },
"mini-bufremove": { "mini-bufremove": {
"type": "Git", "type": "Git",
@ -877,9 +889,9 @@
"repo": "mini.clue" "repo": "mini.clue"
}, },
"branch": "main", "branch": "main",
"revision": "3ba5f3ff9afbf8c962bf69a483a890e414ba4697", "revision": "08901d2223797aa25611c33aaf9d8a1049a653bb",
"url": "https://github.com/echasnovski/mini.clue/archive/3ba5f3ff9afbf8c962bf69a483a890e414ba4697.tar.gz", "url": "https://github.com/echasnovski/mini.clue/archive/08901d2223797aa25611c33aaf9d8a1049a653bb.tar.gz",
"hash": "0j9l26kzvsc0p7xssav97r28cnqbr5av6k64nz83n3xx5xlndnp0" "hash": "026d647acwxr0wrf43lffmzw4x84jm6v5lipbqqpicqgqs8b4rfv"
}, },
"mini-colors": { "mini-colors": {
"type": "Git", "type": "Git",
@ -889,9 +901,9 @@
"repo": "mini.colors" "repo": "mini.colors"
}, },
"branch": "main", "branch": "main",
"revision": "60306b701f574c3f7111a7ef67de208d0c121bbd", "revision": "d49e0764821d40adbf3f9e92091dfba0b0590378",
"url": "https://github.com/echasnovski/mini.colors/archive/60306b701f574c3f7111a7ef67de208d0c121bbd.tar.gz", "url": "https://github.com/echasnovski/mini.colors/archive/d49e0764821d40adbf3f9e92091dfba0b0590378.tar.gz",
"hash": "1avblmv2alra43dlq94czmnd4rsjwng66yjg7xcn4bs358z13kzw" "hash": "1kn5012q6x1hfpyjqhssydln3v6b25gvvjw1zhw93m8x9km2j524"
}, },
"mini-comment": { "mini-comment": {
"type": "Git", "type": "Git",
@ -913,9 +925,9 @@
"repo": "mini.completion" "repo": "mini.completion"
}, },
"branch": "main", "branch": "main",
"revision": "dd457bfecf68fb67107f8668b46f745a219c045a", "revision": "8f439dfb5432f9a78fb172ec7e03ee31f18551c4",
"url": "https://github.com/echasnovski/mini.completion/archive/dd457bfecf68fb67107f8668b46f745a219c045a.tar.gz", "url": "https://github.com/echasnovski/mini.completion/archive/8f439dfb5432f9a78fb172ec7e03ee31f18551c4.tar.gz",
"hash": "1aharapzl1ll2fpyhl88n47ni12p0mndgpgi34jn57k3mhj0pcgy" "hash": "0y4zzp4najk2bydwzx72nbn18n32v6ar0dc2qgialszivy0nnhgh"
}, },
"mini-diff": { "mini-diff": {
"type": "Git", "type": "Git",
@ -961,9 +973,9 @@
"repo": "mini.files" "repo": "mini.files"
}, },
"branch": "main", "branch": "main",
"revision": "5900f50608771af55c6cc4f0817152e5e89de820", "revision": "0a396f5ca5516a07959ae2c00667e1a26c20f0ea",
"url": "https://github.com/echasnovski/mini.files/archive/5900f50608771af55c6cc4f0817152e5e89de820.tar.gz", "url": "https://github.com/echasnovski/mini.files/archive/0a396f5ca5516a07959ae2c00667e1a26c20f0ea.tar.gz",
"hash": "1xq2b3xacn5haamw5vmwzmjqqgacrwmfp0yci69kmgpxa8ac3dq0" "hash": "1axjd6a6c02jllhi1l8c9xfplipvz4g82hnxjbsgx4kzc9b60zdq"
}, },
"mini-fuzzy": { "mini-fuzzy": {
"type": "Git", "type": "Git",
@ -973,9 +985,9 @@
"repo": "mini.fuzzy" "repo": "mini.fuzzy"
}, },
"branch": "main", "branch": "main",
"revision": "345ff7f65f50177c5567c43ec2c79973cb1278fe", "revision": "fb42763285075e316fd4250739af9b8c442503de",
"url": "https://github.com/echasnovski/mini.fuzzy/archive/345ff7f65f50177c5567c43ec2c79973cb1278fe.tar.gz", "url": "https://github.com/echasnovski/mini.fuzzy/archive/fb42763285075e316fd4250739af9b8c442503de.tar.gz",
"hash": "18ylb8v7g21r87qkl86hng3zvw9c2q163z535m5m85dxnrxzlgcm" "hash": "0hl5ygzlf73g70j7pdd1x4975368sqpynpja1zx7bc5jln698vr4"
}, },
"mini-git": { "mini-git": {
"type": "Git", "type": "Git",
@ -1009,9 +1021,9 @@
"repo": "mini.hues" "repo": "mini.hues"
}, },
"branch": "main", "branch": "main",
"revision": "6b039a95f8fbc002ea79086b8617a1022a5aea5b", "revision": "7a88e67dfb953820718106d8fc83d0f97c4d9173",
"url": "https://github.com/echasnovski/mini.hues/archive/6b039a95f8fbc002ea79086b8617a1022a5aea5b.tar.gz", "url": "https://github.com/echasnovski/mini.hues/archive/7a88e67dfb953820718106d8fc83d0f97c4d9173.tar.gz",
"hash": "1cyk4abrkd6y5hkkh05cywvhg8116aiv7p8yihfcjwgrcjwkwsan" "hash": "1kgjkx9bqycmm077i4jk0fnyl47fkmmd2vv0qf6lqsnnliivqxqw"
}, },
"mini-icons": { "mini-icons": {
"type": "Git", "type": "Git",
@ -1081,9 +1093,9 @@
"repo": "mini.misc" "repo": "mini.misc"
}, },
"branch": "main", "branch": "main",
"revision": "bfd8ee265d9cb1f9fcba7a8ae0899fbf84e33d5e", "revision": "a477a9d5790f6d899d3055c87f2e771118f91180",
"url": "https://github.com/echasnovski/mini.misc/archive/bfd8ee265d9cb1f9fcba7a8ae0899fbf84e33d5e.tar.gz", "url": "https://github.com/echasnovski/mini.misc/archive/a477a9d5790f6d899d3055c87f2e771118f91180.tar.gz",
"hash": "1fd3ah7gsm8zyagl3mk09aqrj8s2m0gxrx225nwbvb8i2pi0g1c1" "hash": "1fp60lhv93jiygc0hvchzdzjgs8scczp7kv9cm3kzzimcfa84ky6"
}, },
"mini-move": { "mini-move": {
"type": "Git", "type": "Git",
@ -1105,9 +1117,9 @@
"repo": "mini.notify" "repo": "mini.notify"
}, },
"branch": "main", "branch": "main",
"revision": "f8c84f89c8d981a979f915bd64a2f97bbad285d4", "revision": "e71f08013db6812d9ce95c2624ae405a4267f4f3",
"url": "https://github.com/echasnovski/mini.notify/archive/f8c84f89c8d981a979f915bd64a2f97bbad285d4.tar.gz", "url": "https://github.com/echasnovski/mini.notify/archive/e71f08013db6812d9ce95c2624ae405a4267f4f3.tar.gz",
"hash": "0raw9chqjgwxqdiqqk9xjxgkjf6rg14c7968pvfvfh9jkjdasxg8" "hash": "0fmy3d62283j2cwlxk97fyylad2zkd5j2r7pg7fb3cq8k1021d0s"
}, },
"mini-operators": { "mini-operators": {
"type": "Git", "type": "Git",
@ -1117,9 +1129,9 @@
"repo": "mini.operators" "repo": "mini.operators"
}, },
"branch": "main", "branch": "main",
"revision": "81e5059268154f5a8b594c95748968febdd539e3", "revision": "02cfac95919b945c19221f0fcebe883c6dce04f6",
"url": "https://github.com/echasnovski/mini.operators/archive/81e5059268154f5a8b594c95748968febdd539e3.tar.gz", "url": "https://github.com/echasnovski/mini.operators/archive/02cfac95919b945c19221f0fcebe883c6dce04f6.tar.gz",
"hash": "066mh426wr9pb137d8b65cl5hkcgmal9mr8y94r3xya7649207mh" "hash": "1b51b3d1qkbzh68yadx3fcx9dgk405cb2ghln999fl5czvc3crmd"
}, },
"mini-pairs": { "mini-pairs": {
"type": "Git", "type": "Git",
@ -1141,9 +1153,9 @@
"repo": "mini.pick" "repo": "mini.pick"
}, },
"branch": "main", "branch": "main",
"revision": "bdd189e6b7741177db53875cbc6071f1c8dc6fbd", "revision": "12ea14f8e285d1bcc909116685fdbb129a89d546",
"url": "https://github.com/echasnovski/mini.pick/archive/bdd189e6b7741177db53875cbc6071f1c8dc6fbd.tar.gz", "url": "https://github.com/echasnovski/mini.pick/archive/12ea14f8e285d1bcc909116685fdbb129a89d546.tar.gz",
"hash": "1cxifi4vlfknk4i2grdrx5nbzw9jzj6s0ybbmwrcvs1cj9dhzbzh" "hash": "1ssa7ym6zxhazx551bjsnfdmvm1553kj6amvcczw9jrqbf4ynjqy"
}, },
"mini-sessions": { "mini-sessions": {
"type": "Git", "type": "Git",
@ -1189,9 +1201,9 @@
"repo": "mini.starter" "repo": "mini.starter"
}, },
"branch": "main", "branch": "main",
"revision": "4f46dc11e1dd9f62310794121405853be8d6b13f", "revision": "736c5177bd90cc852c05d903f662f0fc395a4b4b",
"url": "https://github.com/echasnovski/mini.starter/archive/4f46dc11e1dd9f62310794121405853be8d6b13f.tar.gz", "url": "https://github.com/echasnovski/mini.starter/archive/736c5177bd90cc852c05d903f662f0fc395a4b4b.tar.gz",
"hash": "1iic2f3d93fjiqrk0q1iq3sb6ycbw4vag4c01wk5wj1jc58k3iz5" "hash": "0w2awkcrabbsybvv2hlzjlqgcr53480pg5p3fhaaparrhd90c7na"
}, },
"mini-statusline": { "mini-statusline": {
"type": "Git", "type": "Git",
@ -1237,9 +1249,9 @@
"repo": "mini.test" "repo": "mini.test"
}, },
"branch": "main", "branch": "main",
"revision": "82ae4d87a23faa27e7e4119d4a5cf5897cbf1b70", "revision": "16a909c3ce39d9af9ec4dacca16205d36f85d823",
"url": "https://github.com/echasnovski/mini.test/archive/82ae4d87a23faa27e7e4119d4a5cf5897cbf1b70.tar.gz", "url": "https://github.com/echasnovski/mini.test/archive/16a909c3ce39d9af9ec4dacca16205d36f85d823.tar.gz",
"hash": "0n3n7j8lkxp6mc0wf80ysnwxfw29zjqyfs3ghjl518xbsvjbgcz6" "hash": "1qf8ay763d011rvy9qwpv8q3mlxjlymvc4gx3bjfv0n56k5dzpg0"
}, },
"mini-trailspace": { "mini-trailspace": {
"type": "Git", "type": "Git",
@ -1261,9 +1273,9 @@
"repo": "mini.visits" "repo": "mini.visits"
}, },
"branch": "main", "branch": "main",
"revision": "8a2b551a86c556c8a26ce8d6402d03ded1cc7aec", "revision": "46e7a4074032d0340308c3379bc3650626c85da8",
"url": "https://github.com/echasnovski/mini.visits/archive/8a2b551a86c556c8a26ce8d6402d03ded1cc7aec.tar.gz", "url": "https://github.com/echasnovski/mini.visits/archive/46e7a4074032d0340308c3379bc3650626c85da8.tar.gz",
"hash": "1jwpvxlsr8wd5wakd22ah7h127hsxj6ds7jp5m99w2gnlymhsq41" "hash": "1776i3xn9dpccjjamy5ys5acc3nxd3zph4a77sbw2dipfd8zpasi"
}, },
"minimap-vim": { "minimap-vim": {
"type": "Git", "type": "Git",
@ -1324,9 +1336,9 @@
"repo": "neo-tree.nvim" "repo": "neo-tree.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "c2f12ba9dba917d53dba13121c15d7903e28c24d", "revision": "d9544c74ec43cca0564fdc334c116fbe0be8a807",
"url": "https://github.com/nvim-neo-tree/neo-tree.nvim/archive/c2f12ba9dba917d53dba13121c15d7903e28c24d.tar.gz", "url": "https://github.com/nvim-neo-tree/neo-tree.nvim/archive/d9544c74ec43cca0564fdc334c116fbe0be8a807.tar.gz",
"hash": "07hh7gjjp4zdhwdhrrd3mvndd6cqf0lydhsb5hn0aqagm65z2jm3" "hash": "0wiw4aipg3qmzw6k9vrljh4cg09kyqd28s6xpv2zhsg05mm38nhb"
}, },
"neocord": { "neocord": {
"type": "Git", "type": "Git",
@ -1336,9 +1348,9 @@
"repo": "neocord" "repo": "neocord"
}, },
"branch": "main", "branch": "main",
"revision": "4d55d8dab2d5f2f272192add7a2c21982039c699", "revision": "41bacd44e9d36f5e36e0271672ac2c02f6fa355a",
"url": "https://github.com/IogaMaster/neocord/archive/4d55d8dab2d5f2f272192add7a2c21982039c699.tar.gz", "url": "https://github.com/IogaMaster/neocord/archive/41bacd44e9d36f5e36e0271672ac2c02f6fa355a.tar.gz",
"hash": "18d84bd5242a3khpsk0iya3i75bc65mc2xc9kjldpvb827m6myl3" "hash": "1n998zsv0bikscwpr75qq11xh559xzx6d7rs7fc21jj1rivkk4aw"
}, },
"neorg": { "neorg": {
"type": "Git", "type": "Git",
@ -1348,9 +1360,9 @@
"repo": "neorg" "repo": "neorg"
}, },
"branch": "main", "branch": "main",
"revision": "b47b4d3138beef51ffbf59bcbd7d149150b4bd2e", "revision": "6f0b4eefa591fbc4c9344f110b0c0bac5b49078c",
"url": "https://github.com/nvim-neorg/neorg/archive/b47b4d3138beef51ffbf59bcbd7d149150b4bd2e.tar.gz", "url": "https://github.com/nvim-neorg/neorg/archive/6f0b4eefa591fbc4c9344f110b0c0bac5b49078c.tar.gz",
"hash": "1x9sk24i8gyxssc8qz99x3d5nh3m2pi3srmv1f3fbgpffcgvl1yv" "hash": "1x8h5hxzg06g1d849bna6rs4jzjf248g59v87zvlc4scmp9pzjga"
}, },
"neorg-telescope": { "neorg-telescope": {
"type": "Git", "type": "Git",
@ -1372,9 +1384,9 @@
"repo": "neovim-session-manager" "repo": "neovim-session-manager"
}, },
"branch": "master", "branch": "master",
"revision": "270e235b014f0c37bf362eb1e8913d66bba33a2e", "revision": "3409dc920d40bec4c901c0a122a80bee03d6d1e1",
"url": "https://github.com/Shatur/neovim-session-manager/archive/270e235b014f0c37bf362eb1e8913d66bba33a2e.tar.gz", "url": "https://github.com/Shatur/neovim-session-manager/archive/3409dc920d40bec4c901c0a122a80bee03d6d1e1.tar.gz",
"hash": "16455f05wj5qjdvspj0hjwa77hsdhj3443h57lck3px33bz7n86h" "hash": "1f7farfkr5ldpa7y7hz9sh8dp7538x1xvwr9n1zrra1szf7s8rlk"
}, },
"new-file-template-nvim": { "new-file-template-nvim": {
"type": "Git", "type": "Git",
@ -1444,9 +1456,9 @@
"repo": "nui.nvim" "repo": "nui.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "53e907ffe5eedebdca1cd503b00aa8692068ca46", "revision": "8d3bce9764e627b62b07424e0df77f680d47ffdb",
"url": "https://github.com/MunifTanjim/nui.nvim/archive/53e907ffe5eedebdca1cd503b00aa8692068ca46.tar.gz", "url": "https://github.com/MunifTanjim/nui.nvim/archive/8d3bce9764e627b62b07424e0df77f680d47ffdb.tar.gz",
"hash": "1m4vlf9qcs01a8qrq3salcz966sp8cpf01gbrg8dbf255vzc8kp9" "hash": "0ia8q5d4xcss45vw6jlaanyr0migy03cjzq9g0kipfyqxkcxi105"
}, },
"nvim-autopairs": { "nvim-autopairs": {
"type": "Git", "type": "Git",
@ -1480,9 +1492,9 @@
"repo": "nvim-cmp" "repo": "nvim-cmp"
}, },
"branch": "main", "branch": "main",
"revision": "5a11682453ac6b13dbf32cd403da4ee9c07ef1c3", "revision": "1e1900b0769324a9675ef85b38f99cca29e203b3",
"url": "https://github.com/hrsh7th/nvim-cmp/archive/5a11682453ac6b13dbf32cd403da4ee9c07ef1c3.tar.gz", "url": "https://github.com/hrsh7th/nvim-cmp/archive/1e1900b0769324a9675ef85b38f99cca29e203b3.tar.gz",
"hash": "06n3barrl80i0y43q250l49q07f7hry9w5ggwlimv7jxvilih43l" "hash": "1yqg4gnzmlm9h5rcmzv7msjmqna0ffn7gllf5knfkps5ns0ynpyf"
}, },
"nvim-colorizer-lua": { "nvim-colorizer-lua": {
"type": "Git", "type": "Git",
@ -1492,9 +1504,9 @@
"repo": "nvim-colorizer.lua" "repo": "nvim-colorizer.lua"
}, },
"branch": "master", "branch": "master",
"revision": "943be69156b94fbc96064f4913d653f0c7fb299f", "revision": "517df88cf2afb36652830df2c655df2da416a0ae",
"url": "https://github.com/NvChad/nvim-colorizer.lua/archive/943be69156b94fbc96064f4913d653f0c7fb299f.tar.gz", "url": "https://github.com/NvChad/nvim-colorizer.lua/archive/517df88cf2afb36652830df2c655df2da416a0ae.tar.gz",
"hash": "0fb973i0h0dq02zr7c9ivm9vk64w6h3px9db2gqb6rzrm2inf0m1" "hash": "0gaxkq30wvxq3d8x6l6r10vdxyizfi5g55xnvzw69lfyl61d9qy8"
}, },
"nvim-cursorline": { "nvim-cursorline": {
"type": "Git", "type": "Git",
@ -1516,9 +1528,9 @@
"repo": "nvim-dap" "repo": "nvim-dap"
}, },
"branch": "master", "branch": "master",
"revision": "6e0e8ab4d8ed520076971465a4388dfe54a91d83", "revision": "a720d4966f758ab22e8ec28812b6df90a53e0f02",
"url": "https://github.com/mfussenegger/nvim-dap/archive/6e0e8ab4d8ed520076971465a4388dfe54a91d83.tar.gz", "url": "https://github.com/mfussenegger/nvim-dap/archive/a720d4966f758ab22e8ec28812b6df90a53e0f02.tar.gz",
"hash": "09skngq8caazmggdmqs7490i8icg6fxzwf1nxkc0hkg6ja82b0nb" "hash": "0b979dhl5jr3kx9j5zih39jbrv22d554ws6y8g1cgsm2i3412s4h"
}, },
"nvim-dap-go": { "nvim-dap-go": {
"type": "Git", "type": "Git",
@ -1588,9 +1600,9 @@
"repo": "nvim-lspconfig" "repo": "nvim-lspconfig"
}, },
"branch": "master", "branch": "master",
"revision": "9e932edb0af4e20880685ddb96a231669fbe8091", "revision": "8a1529e46eef5efc86c34c8d9bdd313abc2ecba0",
"url": "https://github.com/neovim/nvim-lspconfig/archive/9e932edb0af4e20880685ddb96a231669fbe8091.tar.gz", "url": "https://github.com/neovim/nvim-lspconfig/archive/8a1529e46eef5efc86c34c8d9bdd313abc2ecba0.tar.gz",
"hash": "08hwg32a9yj78w4mh2idcpaig9qbx48ak8aqkp88z4wm65299v4r" "hash": "0l9mns71hh0jssxblr1q286z8hmxwbgyq1nw6scki9ffn23jwnz0"
}, },
"nvim-metals": { "nvim-metals": {
"type": "Git", "type": "Git",
@ -1600,9 +1612,9 @@
"repo": "nvim-metals" "repo": "nvim-metals"
}, },
"branch": "main", "branch": "main",
"revision": "5d27f4918ea954772725d6741f84a71cfaff932a", "revision": "fe6125f633c1b2f68d468a2041e81e2e5e8933d4",
"url": "https://github.com/scalameta/nvim-metals/archive/5d27f4918ea954772725d6741f84a71cfaff932a.tar.gz", "url": "https://github.com/scalameta/nvim-metals/archive/fe6125f633c1b2f68d468a2041e81e2e5e8933d4.tar.gz",
"hash": "17769ccpkkb53bikhfp2m809xs6p0mszb8d1hnssp1l0s3ip2j1f" "hash": "1xpav9ykwk7kz61c6y33kyjxf0nf47risdj0q9gf5rnl88cln4by"
}, },
"nvim-navbuddy": { "nvim-navbuddy": {
"type": "Git", "type": "Git",
@ -1684,9 +1696,9 @@
"repo": "nvim-surround" "repo": "nvim-surround"
}, },
"branch": "main", "branch": "main",
"revision": "ae298105122c87bbe0a36b1ad20b06d417c0433e", "revision": "6c54643ef42016b744888b06d2381abd23f9b7ea",
"url": "https://github.com/kylechui/nvim-surround/archive/ae298105122c87bbe0a36b1ad20b06d417c0433e.tar.gz", "url": "https://github.com/kylechui/nvim-surround/archive/6c54643ef42016b744888b06d2381abd23f9b7ea.tar.gz",
"hash": "1xrkg4is4spjwkzr6l0qmn3axlrm52d2wm69g2db83jww756pz1h" "hash": "1c5agqfffmjxc73bv8d4hmrnzx62ikqpv7pii19v5alfdcnh5j48"
}, },
"nvim-tree-lua": { "nvim-tree-lua": {
"type": "Git", "type": "Git",
@ -1696,9 +1708,9 @@
"repo": "nvim-tree.lua" "repo": "nvim-tree.lua"
}, },
"branch": "master", "branch": "master",
"revision": "6709463b2d18e77f7a946027917aa00d4aaed6f4", "revision": "c09ff35de503a41fa62465c6b4ae72d96e7a7ce4",
"url": "https://github.com/nvim-tree/nvim-tree.lua/archive/6709463b2d18e77f7a946027917aa00d4aaed6f4.tar.gz", "url": "https://github.com/nvim-tree/nvim-tree.lua/archive/c09ff35de503a41fa62465c6b4ae72d96e7a7ce4.tar.gz",
"hash": "1m26fvvsj4lxlwdinvnz8nz968n6x59w8n7zj7vsqm5i8yi84fr6" "hash": "0bnc2fc9ipz9yp917l61vvcaqmbdg5fhqxrp7jfjxj5qmvadhai9"
}, },
"nvim-treesitter-context": { "nvim-treesitter-context": {
"type": "Git", "type": "Git",
@ -1708,9 +1720,9 @@
"repo": "nvim-treesitter-context" "repo": "nvim-treesitter-context"
}, },
"branch": "master", "branch": "master",
"revision": "198720b4016af04c9590f375d714d5bf8afecc1a", "revision": "572e534c9f881bb9bf9f388e4c87f360446c72d4",
"url": "https://github.com/nvim-treesitter/nvim-treesitter-context/archive/198720b4016af04c9590f375d714d5bf8afecc1a.tar.gz", "url": "https://github.com/nvim-treesitter/nvim-treesitter-context/archive/572e534c9f881bb9bf9f388e4c87f360446c72d4.tar.gz",
"hash": "13msw9i509ncysbgkqbl2wr1c23iw3f4mxkw30sc1yk9x9nx49ri" "hash": "0bg3x75j8mwvpdhwd945lxbwmhw2j1qi135zn0yli78c9jn8g0ay"
}, },
"nvim-ts-autotag": { "nvim-ts-autotag": {
"type": "Git", "type": "Git",
@ -1744,9 +1756,9 @@
"repo": "nvim-web-devicons" "repo": "nvim-web-devicons"
}, },
"branch": "master", "branch": "master",
"revision": "1020869742ecb191f260818234517f4a1515cfe8", "revision": "d0cafff5c4347a604a07edf7bb9a91fda7eb577e",
"url": "https://github.com/nvim-tree/nvim-web-devicons/archive/1020869742ecb191f260818234517f4a1515cfe8.tar.gz", "url": "https://github.com/nvim-tree/nvim-web-devicons/archive/d0cafff5c4347a604a07edf7bb9a91fda7eb577e.tar.gz",
"hash": "024c8c5d6lpakgf9jxzrbkxk3r8haxa7qhmp8i4zsg35ycg6vqaq" "hash": "1j5ccksn2lkd1f1fvhhjs2amhq17wxmgcqv6jk05jpdbngw2mv98"
}, },
"obsidian-nvim": { "obsidian-nvim": {
"type": "Git", "type": "Git",
@ -1792,9 +1804,9 @@
"repo": "orgmode" "repo": "orgmode"
}, },
"branch": "master", "branch": "master",
"revision": "c0cdcbdced83ceb9b9f058b402a8bfc5f64ab3a6", "revision": "abf8890a9b0612c51d738268c759c4331bc2109c",
"url": "https://github.com/nvim-orgmode/orgmode/archive/c0cdcbdced83ceb9b9f058b402a8bfc5f64ab3a6.tar.gz", "url": "https://github.com/nvim-orgmode/orgmode/archive/abf8890a9b0612c51d738268c759c4331bc2109c.tar.gz",
"hash": "0qwv2pg4s9spmy5wvkvflhcb0a2drlygch6hmjanj3g2kkn3ph5f" "hash": "0j4f2y47s5ymii1w0r9gk39z4vks5fc9cy0rvj1vzml4vf4wijsi"
}, },
"otter-nvim": { "otter-nvim": {
"type": "Git", "type": "Git",
@ -1852,9 +1864,9 @@
"repo": "precognition.nvim" "repo": "precognition.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "24f2cc51dccecec4cf3de04bfbd14f5b9e79df0b", "revision": "4223fb903cbafc3bd8a87a314dac375bbd1c01ce",
"url": "https://github.com/tris203/precognition.nvim/archive/24f2cc51dccecec4cf3de04bfbd14f5b9e79df0b.tar.gz", "url": "https://github.com/tris203/precognition.nvim/archive/4223fb903cbafc3bd8a87a314dac375bbd1c01ce.tar.gz",
"hash": "0x7i2cim9jwc90v11wm61qbbq54m5581hsvj5jaash3gb5piacvw" "hash": "11ng6p0xmrjky5xr9jdkrrav7is9r090qhs2fsnbg16124bgb0g5"
}, },
"project-nvim": { "project-nvim": {
"type": "Git", "type": "Git",
@ -1888,9 +1900,9 @@
"repo": "rainbow-delimiters.nvim" "repo": "rainbow-delimiters.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "011d98eaa3a73b5a51d82ce5bc6b1397dde95562", "revision": "f1e5490e87478cf0b528250ebb51552f3d08436a",
"url": "https://github.com/HiPhish/rainbow-delimiters.nvim/archive/011d98eaa3a73b5a51d82ce5bc6b1397dde95562.tar.gz", "url": "https://github.com/HiPhish/rainbow-delimiters.nvim/archive/f1e5490e87478cf0b528250ebb51552f3d08436a.tar.gz",
"hash": "0b2hr4afdp9b30ckh772bg5wbscgdjvssn533988and27jassfaf" "hash": "02265awjpkd8v6s22wx8qrk2wxq8b7c7h5lr9n7pi6d4lwyrkrxf"
}, },
"registers-nvim": { "registers-nvim": {
"type": "Git", "type": "Git",
@ -1912,9 +1924,9 @@
"repo": "render-markdown.nvim" "repo": "render-markdown.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "57fa691b9e374c6539cc0340062dac8f42d4bd8b", "revision": "08e1fa4e281e48ee4aa892428de9fb91e66edca6",
"url": "https://github.com/MeanderingProgrammer/render-markdown.nvim/archive/57fa691b9e374c6539cc0340062dac8f42d4bd8b.tar.gz", "url": "https://github.com/MeanderingProgrammer/render-markdown.nvim/archive/08e1fa4e281e48ee4aa892428de9fb91e66edca6.tar.gz",
"hash": "1kfzj1sj1ljy3ihp7ic3n4cs82im61yh6xvr68m39jg5a1zmy9iv" "hash": "1kiwa88l2262ycfj6z70hdriml0y2wnji3l9w27jbky9zxwhazrs"
}, },
"rose-pine": { "rose-pine": {
"type": "Git", "type": "Git",
@ -1924,9 +1936,9 @@
"repo": "neovim" "repo": "neovim"
}, },
"branch": "main", "branch": "main",
"revision": "3fe41d3959110139e03bcbc6c0c648be83d06b33", "revision": "7d1b5c7dcd274921f0f58e90a8bf935f6a95fbf3",
"url": "https://github.com/rose-pine/neovim/archive/3fe41d3959110139e03bcbc6c0c648be83d06b33.tar.gz", "url": "https://github.com/rose-pine/neovim/archive/7d1b5c7dcd274921f0f58e90a8bf935f6a95fbf3.tar.gz",
"hash": "105bdjw4phv5229yp0zyrkvf8v6l38rgcp83qy7ap9vlna57fk46" "hash": "0iy9is76bhgb17v0l7mr95mkhd9b4ah917v9shx74jp1xsgc481q"
}, },
"rtp-nvim": { "rtp-nvim": {
"type": "Git", "type": "Git",
@ -1960,9 +1972,9 @@
"repo": "rustaceanvim" "repo": "rustaceanvim"
}, },
"branch": "master", "branch": "master",
"revision": "2feffcf9aa0e160221caafd544c4dedf30414522", "revision": "c7cc0e00ec53cafaa38e258cba4a6507c180289b",
"url": "https://github.com/mrcjkb/rustaceanvim/archive/2feffcf9aa0e160221caafd544c4dedf30414522.tar.gz", "url": "https://github.com/mrcjkb/rustaceanvim/archive/c7cc0e00ec53cafaa38e258cba4a6507c180289b.tar.gz",
"hash": "1x3fw90k78s3kx3hrhgk1zdv9wd2kbkhmip06q5s61p4zw6bns5r" "hash": "1514w2x5vpn790rz8wkah0chr7yz9sm5whaprnm1qc26fz4jwc17"
}, },
"smartcolumn-nvim": { "smartcolumn-nvim": {
"type": "Git", "type": "Git",
@ -1977,16 +1989,19 @@
"hash": "0k1xnyvblshn4fhbxgl0i34j22n55xlwr09sdmb23l57br5rb07q" "hash": "0k1xnyvblshn4fhbxgl0i34j22n55xlwr09sdmb23l57br5rb07q"
}, },
"snacks-nvim": { "snacks-nvim": {
"type": "Git", "type": "GitRelease",
"repository": { "repository": {
"type": "GitHub", "type": "GitHub",
"owner": "folke", "owner": "folke",
"repo": "snacks.nvim" "repo": "snacks.nvim"
}, },
"branch": "main", "pre_releases": false,
"revision": "bc0630e43be5699bb94dadc302c0d21615421d93", "version_upper_bound": null,
"url": "https://github.com/folke/snacks.nvim/archive/bc0630e43be5699bb94dadc302c0d21615421d93.tar.gz", "release_prefix": null,
"hash": "0a5nw7xa33shag1h12gf930g3vcixbwk8dxv0ji4980ycskh238v" "version": "v2.22.0",
"revision": "5eac729fa290248acfe10916d92a5ed5e5c0f9ed",
"url": "https://api.github.com/repos/folke/snacks.nvim/tarball/v2.22.0",
"hash": "1hbm4fnw51qdp0nz83fcxbvnxjq2k57a37w6dp0wz6wkcx7cwxw9"
}, },
"sqls-nvim": { "sqls-nvim": {
"type": "Git", "type": "Git",
@ -2056,9 +2071,9 @@
"repo": "toggleterm.nvim" "repo": "toggleterm.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "e76134e682c1a866e3dfcdaeb691eb7b01068668", "revision": "9a88eae817ef395952e08650b3283726786fb5fb",
"url": "https://github.com/akinsho/toggleterm.nvim/archive/e76134e682c1a866e3dfcdaeb691eb7b01068668.tar.gz", "url": "https://github.com/akinsho/toggleterm.nvim/archive/9a88eae817ef395952e08650b3283726786fb5fb.tar.gz",
"hash": "1jyg3nv54kssz2a4blpwhd718msf95zqz6sr2sqblc7b35gm73g1" "hash": "17plyvajwdhpiadsd80vph75qll8pv9571c2wnw35ngmw9gmnavz"
}, },
"tokyonight": { "tokyonight": {
"type": "Git", "type": "Git",
@ -2104,9 +2119,9 @@
"repo": "typst-preview.nvim" "repo": "typst-preview.nvim"
}, },
"branch": "master", "branch": "master",
"revision": "df393b47c5bc35abe4d60bb479afd0c15802fda8", "revision": "ddcc71126f910ec83037622bc8d506f91a290ade",
"url": "https://github.com/chomosuke/typst-preview.nvim/archive/df393b47c5bc35abe4d60bb479afd0c15802fda8.tar.gz", "url": "https://github.com/chomosuke/typst-preview.nvim/archive/ddcc71126f910ec83037622bc8d506f91a290ade.tar.gz",
"hash": "1k4ir8ss25fm58xfy0588wjim8dxl6vjdl4va2br3knx6jcy2jd8" "hash": "1iqcbpgk87gcgnqd5dv8n4h4hbildp5hbjhnlwjx5zlzcg5qv2my"
}, },
"vim-dirtytalk": { "vim-dirtytalk": {
"type": "Git", "type": "Git",
@ -2200,9 +2215,9 @@
"repo": "yanky.nvim" "repo": "yanky.nvim"
}, },
"branch": "main", "branch": "main",
"revision": "9543d4c6c537720419bccb3338c4ddd5bb6fbd44", "revision": "80d9385dbebe7049fd1961d7909b835a58ce9dcc",
"url": "https://github.com/gbprod/yanky.nvim/archive/9543d4c6c537720419bccb3338c4ddd5bb6fbd44.tar.gz", "url": "https://github.com/gbprod/yanky.nvim/archive/80d9385dbebe7049fd1961d7909b835a58ce9dcc.tar.gz",
"hash": "017v0f082pfd79q2j1naapybsmismflwdscn58mhbqh7s7mq8qk8" "hash": "1lg9nxc01shkazqk5g3j0iskiqbwr9sxv07sqrwkwlh36jn59rcp"
} }
}, },
"version": 3 "version": 3