mirror of
https://github.com/NotAShelf/neovim-flake.git
synced 2024-11-09 14:45:58 +01:00
Compare commits
2 commits
7d077f43f7
...
72f69aafc5
Author | SHA1 | Date | |
---|---|---|---|
72f69aafc5 | |||
80d126ceef |
6 changed files with 52 additions and 21 deletions
|
@ -10,6 +10,7 @@
|
|||
# Contains configuration for core neovim features
|
||||
# such as spellchecking, mappings, and the init script (init.vim).
|
||||
neovim = map (p: ./neovim + "/${p}") [
|
||||
"global"
|
||||
"init"
|
||||
"mappings"
|
||||
];
|
||||
|
|
6
modules/neovim/global/default.nix
Normal file
6
modules/neovim/global/default.nix
Normal file
|
@ -0,0 +1,6 @@
|
|||
{lib}: {
|
||||
imports = lib.concatLists [
|
||||
# Configuration options for Neovim UI
|
||||
(lib.filesystem.listFilesRecursive ./ui)
|
||||
];
|
||||
}
|
|
@ -4,6 +4,7 @@
|
|||
...
|
||||
}: let
|
||||
inherit (lib.options) mkOption mkEnableOption;
|
||||
inherit (lib.attrsets) mapAttrs;
|
||||
inherit (lib.lists) optionals;
|
||||
inherit (lib.types) enum;
|
||||
|
||||
|
@ -22,7 +23,6 @@ in {
|
|||
'';
|
||||
};
|
||||
|
||||
# TODO: make per-plugin borders configurable
|
||||
plugins = let
|
||||
mkPluginStyleOption = name: {
|
||||
enable = mkEnableOption "borders for the ${name} plugin" // {default = cfg.enable;};
|
||||
|
@ -33,14 +33,15 @@ in {
|
|||
description = "The border style to use for the ${name} plugin";
|
||||
};
|
||||
};
|
||||
in {
|
||||
# despite not having it listed in example configuration, which-key does support the rounded type
|
||||
# additionally, it supports a "shadow" type that is similar to none but is of higher contrast
|
||||
which-key = mkPluginStyleOption "which-key";
|
||||
lspsaga = mkPluginStyleOption "lspsaga";
|
||||
nvim-cmp = mkPluginStyleOption "nvim-cmp";
|
||||
lsp-signature = mkPluginStyleOption "lsp-signature";
|
||||
code-action-menu = mkPluginStyleOption "code-actions-menu";
|
||||
};
|
||||
in
|
||||
mapAttrs (_: mkPluginStyleOption) {
|
||||
# despite not having it listed in example configuration, which-key does support the rounded type
|
||||
# additionally, it supports a "shadow" type that is similar to none but is of higher contrast
|
||||
which-key = mkPluginStyleOption "which-key";
|
||||
lspsaga = mkPluginStyleOption "lspsaga";
|
||||
nvim-cmp = mkPluginStyleOption "nvim-cmp";
|
||||
lsp-signature = mkPluginStyleOption "lsp-signature";
|
||||
code-action-menu = mkPluginStyleOption "code-actions-menu";
|
||||
};
|
||||
};
|
||||
}
|
30
modules/neovim/global/ui/icons.nix
Normal file
30
modules/neovim/global/ui/icons.nix
Normal file
|
@ -0,0 +1,30 @@
|
|||
{lib, ...}: let
|
||||
inherit (lib.options) mkOption;
|
||||
inherit (lib.types) str;
|
||||
in {
|
||||
options.vim.ui.icons = {
|
||||
ERROR = mkOption {
|
||||
type = str;
|
||||
default = " ";
|
||||
description = "The icon to use for error messages";
|
||||
};
|
||||
|
||||
WARN = mkOption {
|
||||
type = str;
|
||||
default = " ";
|
||||
description = "The icon to use for warning messages";
|
||||
};
|
||||
|
||||
INFO = mkOption {
|
||||
type = str;
|
||||
default = " ";
|
||||
description = "The icon to use for info messages";
|
||||
};
|
||||
|
||||
HINT = mkOption {
|
||||
type = str;
|
||||
default = " ";
|
||||
description = "The icon to use for hint messages";
|
||||
};
|
||||
};
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
{
|
||||
imports = [
|
||||
./borders.nix
|
||||
];
|
||||
}
|
|
@ -1,12 +1,10 @@
|
|||
{
|
||||
imports = [
|
||||
./noice
|
||||
./modes
|
||||
./notifications
|
||||
./smartcolumn
|
||||
./breadcumbs
|
||||
./colorizer
|
||||
./illuminate
|
||||
./breadcrumbs
|
||||
./borders
|
||||
./noice
|
||||
./notifications
|
||||
./smartcolumn
|
||||
];
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue