Compare commits

...

9 commits

Author SHA1 Message Date
raf
19c9bc6119
Merge 1f7ecd61cb into dfdad4c2ce 2024-11-09 01:42:01 +01:00
Ching Pei Yang
dfdad4c2ce
lazy: update lazy.plugins default 2024-11-08 19:03:01 +01:00
raf
43e3663b2b
Merge pull request #445 from horriblename/fix/devicon-color
nvim-web-devicons: re-enable icon color
2024-11-08 20:54:08 +03:00
Ching Pei Yang
b302e151e1
devicon: re-enable icon color
was mistakenly disabled in a6bb6e1b3e
2024-11-08 18:46:15 +01:00
1f7ecd61cb
plugins/visuals: remove overzealous multi-line in deprecation message 2024-11-08 14:39:01 +03:00
20743bcee1
filetree/neo-tree: rename deprecated nvimWebDevicons option 2024-11-08 14:34:56 +03:00
cd75e640ca
desc 2024-11-08 14:34:06 +03:00
6a423fcc43
binds/which-key: migrate to setupOpts 2024-11-08 14:34:05 +03:00
91aafda1af
flake: bump inputs 2024-11-08 14:34:00 +03:00
8 changed files with 312 additions and 292 deletions

File diff suppressed because it is too large Load diff

View file

@ -24,7 +24,7 @@ in {
cmd = ["Neotree"];
};
visuals.nvimWebDevicons.enable = true;
visuals.nvim-web-devicons.enable = true;
};
};
}

View file

@ -4,33 +4,20 @@
...
}: let
inherit (lib.modules) mkIf;
inherit (lib.strings) optionalString;
inherit (lib.nvim.lua) toLuaObject;
inherit (lib.nvim.dag) entryAnywhere;
cfg = config.vim.binds.whichKey;
in {
config = mkIf cfg.enable {
vim.startPlugins = ["which-key"];
vim = {
startPlugins = ["which-key"];
vim.pluginRC.whichkey = entryAnywhere ''
local wk = require("which-key")
wk.setup ({
key_labels = {
["<space>"] = "SPACE",
["<leader>"] = "SPACE",
["<cr>"] = "RETURN",
["<tab>"] = "TAB",
},
${optionalString config.vim.ui.borders.plugins.which-key.enable ''
window = {
border = ${toLuaObject config.vim.ui.borders.plugins.which-key.style},
},
''}
})
wk.register(${toLuaObject cfg.register})
'';
pluginRC.whichkey = entryAnywhere ''
local wk = require("which-key")
wk.setup (${toLuaObject cfg.setupOpts})
wk.register(${toLuaObject cfg.register})
'';
};
};
}

View file

@ -1,4 +1,4 @@
_: {
{
imports = [
./which-key.nix
./config.nix

View file

@ -1,14 +1,51 @@
{lib, ...}: let
inherit (lib.options) mkEnableOption mkOption;
inherit (lib.types) attrsOf nullOr str;
{
config,
lib,
...
}: let
inherit (lib.options) mkOption mkEnableOption;
inherit (lib.types) attrsOf nullOr str attrs enum bool;
inherit (lib.nvim.types) mkPluginSetupOption;
in {
options.vim.binds.whichKey = {
enable = mkEnableOption "which-key keybind helper menu";
register = mkOption {
description = "Register label for which-key keybind helper menu";
type = attrsOf (nullOr str);
default = {};
description = "Register label for which-key keybind helper menu";
};
setupOpts = mkPluginSetupOption "which-key" {
preset = mkOption {
type = enum ["classic" "modern" "helix"];
default = "modern";
description = "The default preset for the which-key window";
};
notify = mkOption {
type = bool;
default = true;
description = "Show a warning when issues were detected with mappings";
};
replace = mkOption {
type = attrs;
default = {
"<space>" = "SPACE";
"<leader>" = "SPACE";
"<cr>" = "RETURN";
"<tab>" = "TAB";
};
description = "Functions/Lua Patterns for formatting the labels";
};
win = {
border = mkOption {
type = str;
default = config.vim.ui.borders.plugins.which-key.style;
description = "Which-key window border style";
};
};
};
};
}

View file

@ -3,8 +3,8 @@
in {
imports = [
(mkRemovedOptionModule ["vim" "visuals" "enable"] ''
As top-level toggles are being deprecated, you are encouraged
to handle plugin toggles under individual options.
As top-level toggles are being deprecated, you are encouraged to handle plugin
toggles under individual options.
'')
./cellular-automaton

View file

@ -16,7 +16,7 @@ in {
enable = mkEnableOption "Neovim dev icons [nvim-web-devicons]";
setupOpts = mkPluginSetupOption "nvim-web-devicons" {
color_icons = mkEnableOption "different highlight colors per icon";
color_icons = mkEnableOption "different highlight colors per icon" // {default = true;};
variant = mkOption {
type = nullOr (enum ["light" "dark"]);
default = null;

View file

@ -189,7 +189,7 @@ in {
};
plugins = mkOption {
default = [];
default = {};
type = attrsOf lznPluginType;
description = ''
Plugins to lazy load.