Merge remote-tracking branch 'upstream/v0.6' into which-key-categories

This commit is contained in:
Frothy 2024-02-26 13:27:17 -05:00
commit a738083c2f
58 changed files with 524 additions and 320 deletions

View file

@ -4,11 +4,15 @@
...
}: let
inherit (builtins) toJSON;
inherit (lib) addDescriptionsToMappings mkIf mkMerge mkSetExprBinding mkSetLuaBinding nvim pushDownDefault;
inherit (lib.modules) mkIf mkMerge;
inherit (lib.nvim.binds) addDescriptionsToMappings mkSetExprBinding mkSetLuaBinding;
inherit (lib.nvim.dag) entryAnywhere;
# TODO: move this to its own module
inherit (lib) pushDownDefault;
cfg = config.vim.git;
self = import ./git.nix {inherit lib;};
self = import ./git.nix {inherit lib config;};
gsMappingDefinitions = self.options.vim.git.gitsigns.mappings;
gsMappings = addDescriptionsToMappings cfg.gitsigns.mappings gsMappingDefinitions;
@ -65,7 +69,7 @@ in {
"<leader>g" = "+Gitsigns";
};
vim.luaConfigRC.gitsigns = nvim.dag.entryAnywhere ''
vim.luaConfigRC.gitsigns = entryAnywhere ''
require('gitsigns').setup{}
'';
}

View file

@ -1,4 +1,4 @@
{...}: {
{
imports = [
./config.nix
./git.nix

View file

@ -1,11 +1,16 @@
{lib, ...}: let
inherit (lib) mkEnableOption mkMappingOption;
{
config,
lib,
...
}: let
inherit (lib.options) mkEnableOption;
inherit (lib.nvim.binds) mkMappingOption;
in {
options.vim.git = {
enable = mkEnableOption "git tools via gitsigns";
enable = mkEnableOption "git integration";
gitsigns = {
enable = mkEnableOption "gitsigns";
enable = mkEnableOption "gitsigns" // {default = config.vim.git.enable;};
mappings = {
nextHunk = mkMappingOption "Next hunk [Gitsigns]" "]c";