mirror of
https://github.com/NotAShelf/neovim-flake.git
synced 2024-12-22 09:49:49 +01:00
a452a0b0e7
mkEnableOption already adds the phrase "Whether to enable ..." to the beginning of the option description, such that the string argument should only be "thing to be enabled"
50 lines
1.3 KiB
Nix
50 lines
1.3 KiB
Nix
{
|
|
pkgs,
|
|
config,
|
|
lib,
|
|
...
|
|
}:
|
|
with lib;
|
|
with builtins; {
|
|
options.vim.terminal.toggleterm = {
|
|
enable = mkEnableOption "toggleterm as a replacement to built-in terminal command";
|
|
mappings = {
|
|
open = mkOption {
|
|
type = types.nullOr types.str;
|
|
description = "The keymapping to open toggleterm";
|
|
default = "<c-t>";
|
|
};
|
|
};
|
|
|
|
direction = mkOption {
|
|
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
|
default = "horizontal";
|
|
description = "Direction of the terminal";
|
|
};
|
|
|
|
enable_winbar = mkOption {
|
|
type = types.bool;
|
|
default = false;
|
|
description = "Enable winbar";
|
|
};
|
|
|
|
lazygit = {
|
|
enable = mkEnableOption "LazyGit integration";
|
|
direction = mkOption {
|
|
type = types.enum ["horizontal" "vertical" "tab" "float"];
|
|
default = "float";
|
|
description = "Direction of the lazygit window";
|
|
};
|
|
|
|
package = mkOption {
|
|
type = with types; nullOr package;
|
|
default = pkgs.lazygit;
|
|
description = "The package that should be used for lazygit. Setting it to null will attempt to use lazygit from your PATH";
|
|
};
|
|
|
|
mappings = {
|
|
open = mkMappingOption "Open lazygit [toggleterm]" "<leader>gg";
|
|
};
|
|
};
|
|
};
|
|
}
|