mirror of
https://github.com/NotAShelf/neovim-flake.git
synced 2024-12-19 09:49:48 +01:00
docs: fix mkEnableOption usage for autogenerated documentation
This commit is contained in:
parent
5cef662ccf
commit
a2b58e17af
55 changed files with 225 additions and 333 deletions
|
@ -9,7 +9,7 @@ with builtins; let
|
||||||
cfg = config.vim.assistant.copilot;
|
cfg = config.vim.assistant.copilot;
|
||||||
in {
|
in {
|
||||||
options.vim.assistant.copilot = {
|
options.vim.assistant.copilot = {
|
||||||
enable = mkEnableOption "Enable GitHub Copilot";
|
enable = mkEnableOption "GitHub Copilot AI assistant";
|
||||||
|
|
||||||
panel = {
|
panel = {
|
||||||
position = mkOption {
|
position = mkOption {
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.assistant.tabnine = {
|
options.vim.assistant.tabnine = {
|
||||||
enable = mkEnableOption "Enable TabNine assistant";
|
enable = mkEnableOption "Tabnine assistant";
|
||||||
|
|
||||||
disable_auto_comment = mkOption {
|
disable_auto_comment = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
|
|
@ -1,17 +1,9 @@
|
||||||
{
|
{lib, ...}:
|
||||||
lib,
|
|
||||||
config,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim = {
|
options.vim = {
|
||||||
autopairs = {
|
autopairs = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "autopairs" // {default = false;};
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Enable autopairs";
|
|
||||||
};
|
|
||||||
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
type = types.enum ["nvim-autopairs"];
|
type = types.enum ["nvim-autopairs"];
|
||||||
|
|
|
@ -7,7 +7,7 @@ with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim = {
|
options.vim = {
|
||||||
debugMode = {
|
debugMode = {
|
||||||
enable = mkEnableOption "Enable debug mode";
|
enable = mkEnableOption "debug mode";
|
||||||
level = mkOption {
|
level = mkOption {
|
||||||
type = types.int;
|
type = types.int;
|
||||||
default = 20;
|
default = 20;
|
||||||
|
@ -151,6 +151,6 @@ with builtins; {
|
||||||
description = "Highlight the text line of the cursor with CursorLine hl-CursorLine";
|
description = "Highlight the text line of the cursor with CursorLine hl-CursorLine";
|
||||||
};
|
};
|
||||||
|
|
||||||
enableLuaLoader = mkEnableOption "Enable the experimental Lua module loader to speed up the start up process";
|
enableLuaLoader = mkEnableOption "experimental Lua module loader to speed up the start up process";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.comments.comment-nvim = {
|
options.vim.comments.comment-nvim = {
|
||||||
enable = mkEnableOption "Enable comment-nvim";
|
enable = mkEnableOption "smart and powerful comment plugin for neovim comment-nvim";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
toggleCurrentLine = mkMappingOption "Toggle current line comment" "gcc";
|
toggleCurrentLine = mkMappingOption "Toggle current line comment" "gcc";
|
||||||
|
|
|
@ -3,11 +3,7 @@ with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim = {
|
options.vim = {
|
||||||
autocomplete = {
|
autocomplete = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "enable autocomplete" // {default = false;};
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "enable autocomplete";
|
|
||||||
};
|
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
complete = mkMappingOption "Complete [nvim-cmp]" "<C-Space>";
|
complete = mkMappingOption "Complete [nvim-cmp]" "<C-Space>";
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.dashboard.alpha = {
|
options.vim.dashboard.alpha = {
|
||||||
enable = mkEnableOption "Enable alpha.nvim";
|
enable = mkEnableOption "dashboard via alpha.nvim";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.dashboard.dashboard-nvim = {
|
options.vim.dashboard.dashboard-nvim = {
|
||||||
enable = mkEnableOption "Enable dashboard.nvim";
|
enable = mkEnableOption "dashboard via dashboard.nvim";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with builtins;
|
with builtins;
|
||||||
with lib; {
|
with lib; {
|
||||||
options.vim.dashboard.startify = {
|
options.vim.dashboard.startify = {
|
||||||
enable = mkEnableOption "Enable vim-startify";
|
enable = mkEnableOption "dashboard via vim-startify";
|
||||||
|
|
||||||
bookmarks = mkOption {
|
bookmarks = mkOption {
|
||||||
default = [];
|
default = [];
|
||||||
|
|
|
@ -6,11 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.filetree.nvimTreeLua = {
|
options.vim.filetree.nvimTreeLua = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "filetree via nvim-tree-lua" // {default = false;};
|
||||||
type = types.bool;
|
|
||||||
default = false;
|
|
||||||
description = "Enable nvim-tree-lua";
|
|
||||||
};
|
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
toggle = mkOption {
|
toggle = mkOption {
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.git = {
|
options.vim.git = {
|
||||||
enable = mkEnableOption "Git support";
|
enable = mkEnableOption "git tools via gitsigns";
|
||||||
|
|
||||||
gitsigns = {
|
gitsigns = {
|
||||||
enable = mkEnableOption "gitsigns";
|
enable = mkEnableOption "gitsigns";
|
||||||
|
|
|
@ -47,31 +47,26 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "C/C++ treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable C/C++ treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
cPackage = nvim.types.mkGrammarOption pkgs "c";
|
cPackage = nvim.types.mkGrammarOption pkgs "c";
|
||||||
cppPackage = nvim.types.mkGrammarOption pkgs "cpp";
|
cppPackage = nvim.types.mkGrammarOption pkgs "cpp";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable clang LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable clang LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "The clang LSP server to use";
|
description = "The clang LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "clang LSP server package";
|
description = "clang LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = servers.${cfg.lsp.server}.package;
|
default = servers.${cfg.lsp.server}.package;
|
||||||
};
|
};
|
||||||
|
|
||||||
opts = mkOption {
|
opts = mkOption {
|
||||||
description = "Options to pass to clang LSP server";
|
description = "Options to pass to clang LSP server";
|
||||||
type = with types; nullOr str;
|
type = with types; nullOr str;
|
||||||
|
|
|
@ -26,16 +26,12 @@ in {
|
||||||
enable = mkEnableOption "Dart language support";
|
enable = mkEnableOption "Dart language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Dart treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Dart treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = nvim.types.mkGrammarOption pkgs "dart";
|
package = nvim.types.mkGrammarOption pkgs "dart";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkEnableOption "Enable Dart LSP support";
|
enable = mkEnableOption "Dart LSP support";
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "The Dart LSP server to use";
|
description = "The Dart LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.languages.elixir = {
|
options.vim.languages.elixir = {
|
||||||
enable = mkEnableOption "elixir support";
|
enable = mkEnableOption "Elixir language support";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -26,25 +26,20 @@ in {
|
||||||
enable = mkEnableOption "Go language support";
|
enable = mkEnableOption "Go language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Go treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Go treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = nvim.types.mkGrammarOption pkgs "go";
|
package = nvim.types.mkGrammarOption pkgs "go";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Go LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable Go LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "Go LSP server to use";
|
description = "Go LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Go LSP server package";
|
description = "Go LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
|
|
@ -9,7 +9,7 @@ with builtins; let
|
||||||
cfg = config.vim.languages.markdown;
|
cfg = config.vim.languages.markdown;
|
||||||
in {
|
in {
|
||||||
options.vim.languages.markdown = {
|
options.vim.languages.markdown = {
|
||||||
enable = mkEnableOption "Markdown language support";
|
enable = mkEnableOption "Markdown markup language support";
|
||||||
|
|
||||||
glow.enable = mkOption {
|
glow.enable = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
|
|
@ -96,11 +96,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Nix LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable Nix LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "Nix LSP server to use";
|
description = "Nix LSP server to use";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
@ -114,11 +111,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Nix formatting" // {default = config.vim.languages.enableFormat;};
|
||||||
description = "Enable Nix formatting";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableFormat;
|
|
||||||
};
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Nix formatter to use";
|
description = "Nix formatter to use";
|
||||||
type = with types; enum (attrNames formats);
|
type = with types; enum (attrNames formats);
|
||||||
|
|
|
@ -41,11 +41,7 @@ in {
|
||||||
enable = mkEnableOption "Python language support";
|
enable = mkEnableOption "Python language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Python treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Python treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Python treesitter grammar to use";
|
description = "Python treesitter grammar to use";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -54,16 +50,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Python LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable Python LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "Python LSP server to use";
|
description = "Python LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "python LSP server package";
|
description = "python LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -72,16 +66,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Python formatting" // {default = config.vim.languages.enableFormat;};
|
||||||
description = "Enable Python formatting";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableFormat;
|
|
||||||
};
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Python formatter to use";
|
description = "Python formatter to use";
|
||||||
type = with types; enum (attrNames formats);
|
type = with types; enum (attrNames formats);
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Python formatter package";
|
description = "Python formatter package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
|
|
@ -12,11 +12,7 @@ in {
|
||||||
enable = mkEnableOption "Rust language support";
|
enable = mkEnableOption "Rust language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Rust treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Rust treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = nvim.types.mkGrammarOption pkgs "rust";
|
package = nvim.types.mkGrammarOption pkgs "rust";
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -30,16 +26,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Rust LSP support (rust-analyzer with extra tools)" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Rust LSP support (rust-analyzer with extra tools)";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "rust-analyzer package";
|
description = "rust-analyzer package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = pkgs.rust-analyzer;
|
default = pkgs.rust-analyzer;
|
||||||
};
|
};
|
||||||
|
|
||||||
opts = mkOption {
|
opts = mkOption {
|
||||||
description = "Options to pass to rust analyzer";
|
description = "Options to pass to rust analyzer";
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
|
@ -68,11 +68,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable SQL treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable SQL treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "SQL treesitter grammar to use";
|
description = "SQL treesitter grammar to use";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -81,16 +78,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable SQL LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable SQL LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "SQL LSP server to use";
|
description = "SQL LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "SQL LSP server package";
|
description = "SQL LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -99,16 +94,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable SQL formatting" // {default = config.vim.languages.enableFormat;};
|
||||||
description = "Enable SQL formatting";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableFormat;
|
|
||||||
};
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "SQL formatter to use";
|
description = "SQL formatter to use";
|
||||||
type = with types; enum (attrNames formats);
|
type = with types; enum (attrNames formats);
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "SQL formatter package";
|
description = "SQL formatter package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -117,11 +110,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable extra SQL diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
||||||
description = "Enable extra SQL diagnostics";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableExtraDiagnostics;
|
|
||||||
};
|
|
||||||
types = lib.nvim.types.diagnostics {
|
types = lib.nvim.types.diagnostics {
|
||||||
langDesc = "SQL";
|
langDesc = "SQL";
|
||||||
inherit diagnostics;
|
inherit diagnostics;
|
||||||
|
|
|
@ -58,25 +58,20 @@ in {
|
||||||
enable = mkEnableOption "Svelte language support";
|
enable = mkEnableOption "Svelte language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Svelte treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Svelte treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
sveltePackage = nvim.types.mkGrammarOption pkgs "svelte";
|
sveltePackage = nvim.types.mkGrammarOption pkgs "svelte";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Svelte LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable Svelte LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "Svelte LSP server to use";
|
description = "Svelte LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Svelte LSP server package";
|
description = "Svelte LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -85,16 +80,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Svelte formatting" // {default = config.vim.languages.enableFormat;};
|
||||||
description = "Enable Svelte formatting";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableFormat;
|
|
||||||
};
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Svelte formatter to use";
|
description = "Svelte formatter to use";
|
||||||
type = with types; enum (attrNames formats);
|
type = with types; enum (attrNames formats);
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Svelte formatter package";
|
description = "Svelte formatter package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -103,11 +96,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable extra Svelte diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
||||||
description = "Enable extra Svelte diagnostics";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableExtraDiagnostics;
|
|
||||||
};
|
|
||||||
types = lib.nvim.types.diagnostics {
|
types = lib.nvim.types.diagnostics {
|
||||||
langDesc = "Svelte";
|
langDesc = "Svelte";
|
||||||
inherit diagnostics;
|
inherit diagnostics;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.tidal = {
|
options.vim.tidal = {
|
||||||
enable = mkEnableOption "Enable tidalcycles tools and plugins";
|
enable = mkEnableOption "tidalcycles tools and plugins";
|
||||||
|
|
||||||
flash = mkOption {
|
flash = mkOption {
|
||||||
description = ''When sending a paragraph or a single line, vim-tidal will "flash" the selection for some milliseconds'';
|
description = ''When sending a paragraph or a single line, vim-tidal will "flash" the selection for some milliseconds'';
|
||||||
|
|
|
@ -58,26 +58,20 @@ in {
|
||||||
enable = mkEnableOption "Typescript/Javascript language support";
|
enable = mkEnableOption "Typescript/Javascript language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Typescript/Javascript treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Typescript/Javascript treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
tsPackage = nvim.types.mkGrammarOption pkgs "tsx";
|
tsPackage = nvim.types.mkGrammarOption pkgs "tsx";
|
||||||
jsPackage = nvim.types.mkGrammarOption pkgs "javascript";
|
jsPackage = nvim.types.mkGrammarOption pkgs "javascript";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Typescript/Javascript LSP support" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Enable Typescript/Javascript LSP support";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
server = mkOption {
|
server = mkOption {
|
||||||
description = "Typescript/Javascript LSP server to use";
|
description = "Typescript/Javascript LSP server to use";
|
||||||
type = with types; enum (attrNames servers);
|
type = with types; enum (attrNames servers);
|
||||||
default = defaultServer;
|
default = defaultServer;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Typescript/Javascript LSP server package";
|
description = "Typescript/Javascript LSP server package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -86,16 +80,14 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
format = {
|
format = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Typescript/Javascript formatting" // {default = config.vim.languages.enableFormat;};
|
||||||
description = "Enable Typescript/Javascript formatting";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableFormat;
|
|
||||||
};
|
|
||||||
type = mkOption {
|
type = mkOption {
|
||||||
description = "Typescript/Javascript formatter to use";
|
description = "Typescript/Javascript formatter to use";
|
||||||
type = with types; enum (attrNames formats);
|
type = with types; enum (attrNames formats);
|
||||||
default = defaultFormat;
|
default = defaultFormat;
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "Typescript/Javascript formatter package";
|
description = "Typescript/Javascript formatter package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
@ -104,11 +96,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
extraDiagnostics = {
|
extraDiagnostics = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable extra Typescript/Javascript diagnostics" // {default = config.vim.languages.enableExtraDiagnostics;};
|
||||||
description = "Enable extra Typescript/Javascript diagnostics";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableExtraDiagnostics;
|
|
||||||
};
|
|
||||||
types = lib.nvim.types.diagnostics {
|
types = lib.nvim.types.diagnostics {
|
||||||
langDesc = "Typescript/Javascript";
|
langDesc = "Typescript/Javascript";
|
||||||
inherit diagnostics;
|
inherit diagnostics;
|
||||||
|
|
|
@ -12,24 +12,19 @@ in {
|
||||||
enable = mkEnableOption "SQL language support";
|
enable = mkEnableOption "SQL language support";
|
||||||
|
|
||||||
treesitter = {
|
treesitter = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable Zig treesitter" // {default = config.vim.languages.enableTreesitter;};
|
||||||
description = "Enable Zig treesitter";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableTreesitter;
|
|
||||||
};
|
|
||||||
package = nvim.types.mkGrammarOption pkgs "zig";
|
package = nvim.types.mkGrammarOption pkgs "zig";
|
||||||
};
|
};
|
||||||
|
|
||||||
lsp = {
|
lsp = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Zig LSP support (zls)" // {default = config.vim.languages.enableLSP;};
|
||||||
description = "Zig LSP support (zls)";
|
|
||||||
type = types.bool;
|
|
||||||
default = config.vim.languages.enableLSP;
|
|
||||||
};
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
description = "ZLS package";
|
description = "ZLS package";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = pkgs.zls;
|
default = pkgs.zls;
|
||||||
};
|
};
|
||||||
|
|
||||||
zigPackage = mkOption {
|
zigPackage = mkOption {
|
||||||
description = "Zig package used by ZLS";
|
description = "Zig package used by ZLS";
|
||||||
type = types.package;
|
type = types.package;
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{lib, ...}:
|
{lib, ...}:
|
||||||
with lib; {
|
with lib; {
|
||||||
options.vim.minimap.codewindow = {
|
options.vim.minimap.codewindow = {
|
||||||
enable = mkEnableOption "Enable codewindow plugin for minimap view";
|
enable = mkEnableOption "codewindow plugin for minimap view";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
open = mkMappingOption "Open minimap [codewindow]" "<leader>mo";
|
open = mkMappingOption "Open minimap [codewindow]" "<leader>mo";
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.minimap.minimap-vim = {
|
options.vim.minimap.minimap-vim = {
|
||||||
enable = mkEnableOption "Enable minimap-vim plugin for minimap view";
|
enable = mkEnableOption "minimap-vim plugin for minimap view";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.notes.mind-nvim = {
|
options.vim.notes.mind-nvim = {
|
||||||
enable = mkEnableOption "The power of trees at your fingertips. ";
|
enable = mkEnableOption "organizer tool for Neovim.";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.notes = {
|
options.vim.notes = {
|
||||||
obsidian = {
|
obsidian = {
|
||||||
enable = mkEnableOption "Complementary neovim plugins for Obsidian editor";
|
enable = mkEnableOption "complementary neovim plugins for Obsidian editor";
|
||||||
dir = mkOption {
|
dir = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "~/my-vault";
|
default = "~/my-vault";
|
||||||
|
|
|
@ -6,15 +6,15 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.notes.orgmode = {
|
options.vim.notes.orgmode = {
|
||||||
enable = mkEnableOption "Enable nvim-orgmode: Neovim plugin for Emac Orgmode. Get the best of both worlds";
|
enable = mkEnableOption "nvim-orgmode: Neovim plugin for Emac Orgmode. Get the best of both worlds";
|
||||||
orgAgendaFiles = mkOption {
|
orgAgendaFiles = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "{'~/Dropbox/org/*', '~/my-orgs/**/*'}";
|
default = "{'~/Documents/org/*', '~/my-orgs/**/*'}";
|
||||||
description = "List of org files to be used as agenda files.";
|
description = "List of org files to be used as agenda files.";
|
||||||
};
|
};
|
||||||
orgDefaultNotesFile = mkOption {
|
orgDefaultNotesFile = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "~/Dropbox/org/refile.org";
|
default = "~/Documents/org/refile.org";
|
||||||
description = "Default org file to be used for notes.";
|
description = "Default org file to be used for notes.";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.notes.todo-comments = {
|
options.vim.notes.todo-comments = {
|
||||||
enable = mkEnableOption "Enable todo-comments";
|
enable = mkEnableOption "todo-comments: highlight and search for todo comments like TODO, HACK, BUG in your code base";
|
||||||
|
|
||||||
patterns = {
|
patterns = {
|
||||||
highlight = mkOption {
|
highlight = mkOption {
|
||||||
|
|
|
@ -4,59 +4,49 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; let
|
||||||
options.vim.projects.project-nvim = {
|
cfg = config.vim.projects.project-nvim;
|
||||||
enable = mkEnableOption "Enable project-nvim for project management";
|
in {
|
||||||
|
config = mkIf cfg.enable {
|
||||||
|
vim.startPlugins = [
|
||||||
|
"project-nvim"
|
||||||
|
];
|
||||||
|
|
||||||
manualMode = mkOption {
|
vim.luaConfigRC.project-nvim = nvim.dag.entryAnywhere ''
|
||||||
type = types.bool;
|
require('project_nvim').setup({
|
||||||
default = true;
|
manual_mode = ${boolToString cfg.manualMode},
|
||||||
description = "don't automatically change the root directory so the user has the option to manually do so using `:ProjectRoot` command";
|
detection_methods = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.detectionMethods)} },
|
||||||
};
|
|
||||||
|
|
||||||
# detection methods should accept one or more strings from a list
|
-- All the patterns used to detect root dir, when **"pattern"** is in
|
||||||
detectionMethods = mkOption {
|
-- detection_methods
|
||||||
type = types.listOf types.str;
|
patterns = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.patterns)} },
|
||||||
default = ["lsp" "pattern"];
|
|
||||||
description = "Detection methods to use";
|
|
||||||
};
|
|
||||||
|
|
||||||
# patterns
|
-- Table of lsp clients to ignore by name
|
||||||
patterns = mkOption {
|
-- eg: { "efm", ... }
|
||||||
type = types.listOf types.str;
|
ignore_lsp = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.lspIgnored)} },
|
||||||
default = [".git" "_darcs" ".hg" ".bzr" ".svn" "Makefile" "package.json" "flake.nix" "cargo.toml"];
|
|
||||||
description = "Patterns to use for pattern detection method";
|
|
||||||
};
|
|
||||||
|
|
||||||
# table of lsp servers to ignore by name
|
-- Don't calculate root dir on specific directories
|
||||||
lspIgnored = mkOption {
|
-- Ex: { "~/.cargo/*", ... }
|
||||||
type = types.listOf types.str;
|
exclude_dirs = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.excludeDirs)} },
|
||||||
default = [];
|
|
||||||
description = "LSP servers no ignore by name";
|
|
||||||
};
|
|
||||||
|
|
||||||
excludeDirs = mkOption {
|
-- Show hidden files in telescope
|
||||||
type = types.listOf types.str;
|
show_hidden = ${boolToString cfg.showHidden},
|
||||||
default = [];
|
|
||||||
description = "Directories to exclude from project root search";
|
|
||||||
};
|
|
||||||
|
|
||||||
showHidden = mkOption {
|
-- When set to false, you will get a message when project.nvim changes your
|
||||||
type = types.bool;
|
-- directory.
|
||||||
default = false;
|
silent_chdir = ${boolToString cfg.silentChdir},
|
||||||
description = "Show hidden files in telescope picker";
|
|
||||||
};
|
|
||||||
|
|
||||||
silentChdir = mkOption {
|
-- What scope to change the directory, valid options are
|
||||||
type = types.bool;
|
-- * global (default)
|
||||||
default = true;
|
-- * tab
|
||||||
description = "Silently change directory when changing project";
|
-- * win
|
||||||
};
|
scope_chdir = '${toString cfg.scopeChdir}',
|
||||||
|
|
||||||
scopeChdir = mkOption {
|
-- Path where project.nvim will store the project history for use in
|
||||||
type = types.enum ["global" "tab" "win"];
|
-- telescope
|
||||||
default = "global";
|
datapath = vim.fn.stdpath("data"),
|
||||||
description = "What scope to change the directory";
|
})
|
||||||
};
|
'';
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -4,48 +4,60 @@
|
||||||
...
|
...
|
||||||
}:
|
}:
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; let
|
with builtins; {
|
||||||
cfg = config.vim.projects.project-nvim;
|
options.vim.projects.project-nvim = {
|
||||||
in {
|
enable = mkEnableOption "Enable project-nvim for project management";
|
||||||
config = mkIf cfg.enable {
|
|
||||||
vim.startPlugins = [
|
|
||||||
"project-nvim"
|
|
||||||
];
|
|
||||||
|
|
||||||
vim.luaConfigRC.project-nvim = nvim.dag.entryAnywhere ''
|
manualMode = mkOption {
|
||||||
require('project_nvim').setup({
|
type = types.bool;
|
||||||
manual_mode = ${boolToString cfg.manualMode},
|
default = true;
|
||||||
detection_methods = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.detectionMethods)} },
|
description = "don't automatically change the root directory so the user has the option to manually do so using `:ProjectRoot` command";
|
||||||
|
};
|
||||||
|
|
||||||
-- All the patterns used to detect root dir, when **"pattern"** is in
|
# detection methods should accept one or more strings from a list
|
||||||
-- detection_methods
|
detectionMethods = mkOption {
|
||||||
patterns = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.patterns)} },
|
type = types.listOf types.str;
|
||||||
|
default = ["lsp" "pattern"];
|
||||||
|
description = "Detection methods to use";
|
||||||
|
};
|
||||||
|
|
||||||
-- Table of lsp clients to ignore by name
|
# patterns
|
||||||
-- eg: { "efm", ... }
|
patterns = mkOption {
|
||||||
ignore_lsp = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.lspIgnored)} },
|
type = types.listOf types.str;
|
||||||
|
default = [".git" "_darcs" ".hg" ".bzr" ".svn" "Makefile" "package.json" "flake.nix" "cargo.toml"];
|
||||||
|
description = "Patterns to use for pattern detection method";
|
||||||
|
};
|
||||||
|
|
||||||
-- Don't calculate root dir on specific directories
|
# table of lsp servers to ignore by name
|
||||||
-- Ex: { "~/.cargo/*", ... }
|
lspIgnored = mkOption {
|
||||||
exclude_dirs = { ${concatStringsSep ", " (map (x: "\"" + x + "\"") cfg.excludeDirs)} },
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = "LSP servers no ignore by name";
|
||||||
|
};
|
||||||
|
|
||||||
-- Show hidden files in telescope
|
excludeDirs = mkOption {
|
||||||
show_hidden = ${boolToString cfg.showHidden},
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = "Directories to exclude from project root search";
|
||||||
|
};
|
||||||
|
|
||||||
-- When set to false, you will get a message when project.nvim changes your
|
showHidden = mkOption {
|
||||||
-- directory.
|
type = types.bool;
|
||||||
silent_chdir = ${boolToString cfg.silentChdir},
|
default = false;
|
||||||
|
description = "Show hidden files in telescope picker";
|
||||||
|
};
|
||||||
|
|
||||||
-- What scope to change the directory, valid options are
|
silentChdir = mkOption {
|
||||||
-- * global (default)
|
type = types.bool;
|
||||||
-- * tab
|
default = true;
|
||||||
-- * win
|
description = "Silently change directory when changing project";
|
||||||
scope_chdir = '${toString cfg.scopeChdir}',
|
};
|
||||||
|
|
||||||
-- Path where project.nvim will store the project history for use in
|
scopeChdir = mkOption {
|
||||||
-- telescope
|
type = types.enum ["global" "tab" "win"];
|
||||||
datapath = vim.fn.stdpath("data"),
|
default = "global";
|
||||||
})
|
description = "What scope to change the directory";
|
||||||
'';
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.presence.presence-nvim = {
|
options.vim.presence.presence-nvim = {
|
||||||
enable = mkEnableOption "Enable presence.nvim plugin for discord rich presence";
|
enable = mkEnableOption "presence.nvim plugin for discord rich presence";
|
||||||
|
|
||||||
image_text = mkOption {
|
image_text = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.session.nvim-session-manager = {
|
options.vim.session.nvim-session-manager = {
|
||||||
enable = mkEnableOption "Enable nvim-session-manager";
|
enable = mkEnableOption "nvim-session-manager: manage sessions like folders in VSCode";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
loadSession = mkOption {
|
loadSession = mkOption {
|
||||||
|
|
|
@ -1,11 +1,6 @@
|
||||||
{
|
{lib, ...}:
|
||||||
config,
|
with lib; {
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
|
||||||
with builtins; {
|
|
||||||
options.vim.snippets.vsnip = {
|
options.vim.snippets.vsnip = {
|
||||||
enable = mkEnableOption "Enable vim-vsnip";
|
enable = mkEnableOption "vim-vsnip: snippet LSP/VSCode's format";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -8,14 +8,10 @@ with builtins; let
|
||||||
supported_themes = import ./supported_themes.nix;
|
supported_themes = import ./supported_themes.nix;
|
||||||
in {
|
in {
|
||||||
options.vim.statusline.lualine = {
|
options.vim.statusline.lualine = {
|
||||||
enable = mkEnableOption "lualine";
|
enable = mkEnableOption "lualine statusline plugin";
|
||||||
|
|
||||||
icons = {
|
icons = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "icons for lualine" // {default = true;};
|
||||||
type = types.bool;
|
|
||||||
description = "Enable icons for lualine";
|
|
||||||
default = true;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
|
|
||||||
refresh = {
|
refresh = {
|
||||||
|
@ -125,6 +121,7 @@ in {
|
||||||
"mode",
|
"mode",
|
||||||
separator = {
|
separator = {
|
||||||
left = '▎',
|
left = '▎',
|
||||||
|
right = ''
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
|
@ -184,7 +181,12 @@ in {
|
||||||
{
|
{
|
||||||
"diagnostics",
|
"diagnostics",
|
||||||
sources = {'nvim_lsp', 'nvim_diagnostic', 'coc'},
|
sources = {'nvim_lsp', 'nvim_diagnostic', 'coc'},
|
||||||
symbols = {error = ' ', warn = ' ', info = ' ', hint = ' '}
|
symbols = {error = ' ', warn = ' ', info = ' ', hint = ' '},
|
||||||
|
diagnostics_color = {
|
||||||
|
color_error = { fg = colors.red },
|
||||||
|
color_warn = { fg = colors.yellow },
|
||||||
|
color_info = { fg = colors.cyan },
|
||||||
|
},
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
@ -224,12 +226,7 @@ in {
|
||||||
{
|
{
|
||||||
"branch",
|
"branch",
|
||||||
icon = ' •',
|
icon = ' •',
|
||||||
separator = {
|
|
||||||
left = '(',
|
|
||||||
right = ')'
|
|
||||||
},
|
|
||||||
color = {bg='none', fg='lavender'},
|
color = {bg='none', fg='lavender'},
|
||||||
|
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
'';
|
'';
|
||||||
|
|
|
@ -2,6 +2,8 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.tabline.nvimBufferline = {
|
options.vim.tabline.nvimBufferline = {
|
||||||
|
enable = mkEnableOption "nvim-bufferline-lua as a bufferline";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
closeCurrent = mkMappingOption "Close buffer" null;
|
closeCurrent = mkMappingOption "Close buffer" null;
|
||||||
cycleNext = mkMappingOption "Next buffer" "<leader>bn";
|
cycleNext = mkMappingOption "Next buffer" "<leader>bn";
|
||||||
|
@ -13,7 +15,5 @@ with builtins; {
|
||||||
moveNext = mkMappingOption "Move next buffer" "<leader>bmn";
|
moveNext = mkMappingOption "Move next buffer" "<leader>bmn";
|
||||||
movePrevious = mkMappingOption "Move previous buffer" "<leader>bmp";
|
movePrevious = mkMappingOption "Move previous buffer" "<leader>bmp";
|
||||||
};
|
};
|
||||||
|
|
||||||
enable = mkEnableOption "Enable nvim-bufferline-lua as a bufferline";
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -15,23 +15,27 @@ with builtins; {
|
||||||
default = "<c-t>";
|
default = "<c-t>";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
direction = mkOption {
|
direction = mkOption {
|
||||||
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
||||||
default = "horizontal";
|
default = "horizontal";
|
||||||
description = "Direction of the terminal";
|
description = "Direction of the terminal";
|
||||||
};
|
};
|
||||||
|
|
||||||
enable_winbar = mkOption {
|
enable_winbar = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
default = false;
|
default = false;
|
||||||
description = "Enable winbar";
|
description = "Enable winbar";
|
||||||
};
|
};
|
||||||
|
|
||||||
lazygit = {
|
lazygit = {
|
||||||
enable = mkEnableOption "Enable LazyGit integration";
|
enable = mkEnableOption "LazyGit integration";
|
||||||
direction = mkOption {
|
direction = mkOption {
|
||||||
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
||||||
default = "float";
|
default = "float";
|
||||||
description = "Direction of the lazygit window";
|
description = "Direction of the lazygit window";
|
||||||
};
|
};
|
||||||
|
|
||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = with types; nullOr package;
|
type = with types; nullOr package;
|
||||||
default = pkgs.lazygit;
|
default = pkgs.lazygit;
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.ui.colorizer = {
|
options.vim.ui.colorizer = {
|
||||||
enable = mkEnableOption "Enable nvim-colorizer.lua for color highlighting";
|
enable = mkEnableOption "nvim-colorizer.lua for color highlighting";
|
||||||
|
|
||||||
options = {
|
options = {
|
||||||
rgb = mkOption {
|
rgb = mkOption {
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.ui.modes-nvim = {
|
options.vim.ui.modes-nvim = {
|
||||||
enable = mkEnableOption "Enable modes.nvim UI elements";
|
enable = mkEnableOption "modes.nvim's prismatic line decorations";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.ui.noice = {
|
options.vim.ui.noice = {
|
||||||
enable = mkEnableOption "Enable noice-nvim UI modifications";
|
enable = mkEnableOption "noice-nvim UI modification library";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,29 +6,34 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.notify.nvim-notify = {
|
options.vim.notify.nvim-notify = {
|
||||||
enable = mkEnableOption "Enable nvim-notify plugin";
|
enable = mkEnableOption "nvim-notify notifications";
|
||||||
stages = mkOption {
|
stages = mkOption {
|
||||||
type = types.enum ["fade_in_slide_out" "fade_in" "slide_out" "none"];
|
type = types.enum ["fade_in_slide_out" "fade_in" "slide_out" "none"];
|
||||||
default = "fade_in_slide_out";
|
default = "fade_in_slide_out";
|
||||||
description = "The stages of the notification";
|
description = "The stages of the notification";
|
||||||
};
|
};
|
||||||
|
|
||||||
timeout = mkOption {
|
timeout = mkOption {
|
||||||
type = types.int;
|
type = types.int;
|
||||||
default = 1000;
|
default = 1000;
|
||||||
description = "The timeout of the notification";
|
description = "The timeout of the notification";
|
||||||
};
|
};
|
||||||
|
|
||||||
background_colour = mkOption {
|
background_colour = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
default = "#000000";
|
default = "#000000";
|
||||||
description = "The background colour of the notification";
|
description = "The background colour of the notification";
|
||||||
};
|
};
|
||||||
|
|
||||||
position = mkOption {
|
position = mkOption {
|
||||||
type = types.enum ["top_left" "top_right" "bottom_left" "bottom_right"];
|
type = types.enum ["top_left" "top_right" "bottom_left" "bottom_right"];
|
||||||
default = "top_right";
|
default = "top_right";
|
||||||
description = "The position of the notification";
|
description = "The position of the notification";
|
||||||
};
|
};
|
||||||
|
|
||||||
icons = mkOption {
|
icons = mkOption {
|
||||||
type = types.attrsOf types.str;
|
type = types.attrsOf types.str;
|
||||||
|
description = "The icons of the notification";
|
||||||
default = {
|
default = {
|
||||||
ERROR = "";
|
ERROR = "";
|
||||||
WARN = "";
|
WARN = "";
|
||||||
|
@ -36,7 +41,6 @@ with builtins; {
|
||||||
DEBUG = "";
|
DEBUG = "";
|
||||||
TRACE = "";
|
TRACE = "";
|
||||||
};
|
};
|
||||||
description = "The icons of the notification";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.ui.smartcolumn = {
|
options.vim.ui.smartcolumn = {
|
||||||
enable = mkEnableOption "Enable Smartcolumn line length indicator";
|
enable = mkEnableOption "line length indicator";
|
||||||
|
|
||||||
showColumnAt = mkOption {
|
showColumnAt = mkOption {
|
||||||
type = types.nullOr types.int;
|
type = types.nullOr types.int;
|
||||||
|
|
|
@ -6,6 +6,6 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.binds.cheatsheet = {
|
options.vim.binds.cheatsheet = {
|
||||||
enable = mkEnableOption "Enable cheatsheet-nvim: searchable cheatsheet for nvim using telescope";
|
enable = mkEnableOption "cheatsheet-nvim: searchable cheatsheet for nvim using telescope";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,11 +1,7 @@
|
||||||
{
|
{lib, ...}:
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.binds.whichKey = {
|
options.vim.binds.whichKey = {
|
||||||
enable = mkEnableOption "Enable which-key keybind menu";
|
enable = mkEnableOption "which-key keybind helper menu";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.utility.ccc = {
|
options.vim.utility.ccc = {
|
||||||
enable = mkEnableOption "Enable ccc color picker for neovim";
|
enable = mkEnableOption "ccc color picker for neovim";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
quit = mkMappingOption "Cancel and close the UI without replace or insert" "<Esc>";
|
quit = mkMappingOption "Cancel and close the UI without replace or insert" "<Esc>";
|
||||||
|
|
|
@ -1,11 +1,7 @@
|
||||||
{
|
{lib, ...}:
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.utility.diffview-nvim = {
|
options.vim.utility.diffview-nvim = {
|
||||||
enable = mkEnableOption "Enable diffview-nvim";
|
enable = mkEnableOption "diffview-nvim: cycle through diffs for all modified files for any git rev";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,7 @@
|
||||||
{lib, ...}:
|
{lib, ...}:
|
||||||
with lib; {
|
with lib; {
|
||||||
options.vim.gestures.gesture-nvim = {
|
options.vim.gestures.gesture-nvim = {
|
||||||
enable = mkEnableOption "Enable gesture-nvim plugin";
|
enable = mkEnableOption "gesture-nvim: mouse gestures";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
draw = mkMappingOption "Start drawing [gesture.nvim]" "<LeftDrag>";
|
draw = mkMappingOption "Start drawing [gesture.nvim]" "<LeftDrag>";
|
||||||
|
|
|
@ -1,11 +1,7 @@
|
||||||
{
|
{lib, ...}:
|
||||||
config,
|
|
||||||
lib,
|
|
||||||
...
|
|
||||||
}:
|
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.utility.icon-picker = {
|
options.vim.utility.icon-picker = {
|
||||||
enable = mkEnableOption "Enable nerdfonts icon picker for nvim";
|
enable = mkEnableOption "nerdfonts icon picker for nvim";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,6 +5,6 @@ with lib; {
|
||||||
hop = mkMappingOption "Jump to occurences [hop.nvim]" "<leader>h";
|
hop = mkMappingOption "Jump to occurences [hop.nvim]" "<leader>h";
|
||||||
};
|
};
|
||||||
|
|
||||||
enable = mkEnableOption "Enable Hop.nvim plugin (easy motion)";
|
enable = mkEnableOption "Hop.nvim plugin (easy motion)";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.utility.motion.leap = {
|
options.vim.utility.motion.leap = {
|
||||||
enable = mkEnableOption "Enable leap.nvim plugin (easy motion)";
|
enable = mkEnableOption "leap.nvim plugin (easy motion)";
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
leapForwardTo = mkOption {
|
leapForwardTo = mkOption {
|
||||||
|
|
|
@ -45,6 +45,11 @@ in {
|
||||||
mkIf config.vim.treesitter.enable
|
mkIf config.vim.treesitter.enable
|
||||||
(mkSetBinding mappings.treesitter "<cmd> Telescope treesitter<CR>")
|
(mkSetBinding mappings.treesitter "<cmd> Telescope treesitter<CR>")
|
||||||
)
|
)
|
||||||
|
|
||||||
|
(
|
||||||
|
mkIf config.vim.projects.project-nvim.enable
|
||||||
|
(mkSetBinding mappings.findProjects "<cmd Telescope projects<CR>")
|
||||||
|
)
|
||||||
];
|
];
|
||||||
|
|
||||||
vim.luaConfigRC.telescope = nvim.dag.entryAnywhere ''
|
vim.luaConfigRC.telescope = nvim.dag.entryAnywhere ''
|
||||||
|
|
|
@ -3,6 +3,8 @@ with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.telescope = {
|
options.vim.telescope = {
|
||||||
mappings = {
|
mappings = {
|
||||||
|
findProjects = mkMappingOption "Find files [Telescope]" "<leader>fp";
|
||||||
|
|
||||||
findFiles = mkMappingOption "Find files [Telescope]" "<leader>ff";
|
findFiles = mkMappingOption "Find files [Telescope]" "<leader>ff";
|
||||||
liveGrep = mkMappingOption "Live grep [Telescope]" "<leader>fg";
|
liveGrep = mkMappingOption "Live grep [Telescope]" "<leader>fg";
|
||||||
buffers = mkMappingOption "Buffers [Telescope]" "<leader>fb";
|
buffers = mkMappingOption "Buffers [Telescope]" "<leader>fb";
|
||||||
|
@ -26,6 +28,6 @@ with builtins; {
|
||||||
treesitter = mkMappingOption "Treesitter [Telescope]" "<leader>fs";
|
treesitter = mkMappingOption "Treesitter [Telescope]" "<leader>fs";
|
||||||
};
|
};
|
||||||
|
|
||||||
enable = mkEnableOption "Enable multi-purpose telescope utility";
|
enable = mkEnableOption "telescope.nvim: multi-purpose search & picker utility";
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,7 +6,7 @@
|
||||||
with lib;
|
with lib;
|
||||||
with builtins; {
|
with builtins; {
|
||||||
options.vim.utility.vim-wakatime = {
|
options.vim.utility.vim-wakatime = {
|
||||||
enable = mkEnableOption "Enable vim-wakatime";
|
enable = mkEnableOption "vim-wakatime: live code statistics";
|
||||||
|
|
||||||
cli-package = mkOption {
|
cli-package = mkOption {
|
||||||
type = with types; nullOr package;
|
type = with types; nullOr package;
|
||||||
|
|
|
@ -12,24 +12,12 @@ in {
|
||||||
|
|
||||||
nvimWebDevicons.enable = mkEnableOption "dev icons. Required for certain plugins [nvim-web-devicons].";
|
nvimWebDevicons.enable = mkEnableOption "dev icons. Required for certain plugins [nvim-web-devicons].";
|
||||||
|
|
||||||
scrollBar.enable = mkOption {
|
scrollBar.enable = mkEnableOption "Enable scrollbar [scrollbar.nvim]";
|
||||||
type = types.bool;
|
|
||||||
description = "Enable scrollbar [scrollbar.nvim]";
|
|
||||||
default = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
smoothScroll.enable = mkOption {
|
smoothScroll.enable = mkEnableOption "Enable smooth scrolling [cinnamon-nvim]";
|
||||||
type = types.bool;
|
|
||||||
description = "Enable smooth scrolling [cinnamon-nvim]";
|
|
||||||
default = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
cellularAutomaton = {
|
cellularAutomaton = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable cellular automaton [cellular-automaton]";
|
||||||
type = types.bool;
|
|
||||||
description = "Enable cellular automaton [cellular-automaton]";
|
|
||||||
default = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
mappings = {
|
mappings = {
|
||||||
makeItRain = mkMappingOption "Make it rain [cellular-automaton]" "<leader>fml";
|
makeItRain = mkMappingOption "Make it rain [cellular-automaton]" "<leader>fml";
|
||||||
|
@ -37,11 +25,8 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
fidget-nvim = {
|
fidget-nvim = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable nvim LSP UI element [fidget-nvim]";
|
||||||
type = types.bool;
|
|
||||||
description = "Enable nvim LSP UI element [fidget-nvim]";
|
|
||||||
default = false;
|
|
||||||
};
|
|
||||||
align = {
|
align = {
|
||||||
bottom = mkOption {
|
bottom = mkOption {
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
|
@ -68,11 +53,7 @@ in {
|
||||||
};
|
};
|
||||||
|
|
||||||
indentBlankline = {
|
indentBlankline = {
|
||||||
enable = mkOption {
|
enable = mkEnableOption "Enable indentation guides [indent-blankline]";
|
||||||
type = types.bool;
|
|
||||||
description = "Enable indentation guides [indent-blankline]";
|
|
||||||
default = false;
|
|
||||||
};
|
|
||||||
|
|
||||||
listChar = mkOption {
|
listChar = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
|
|
Loading…
Reference in a new issue