nix-community.nixvim/plugins/utils/undotree.nix

133 lines
2.7 KiB
Nix
Raw Normal View History

{
lib,
config,
helpers,
pkgs,
...
}:
2024-01-08 14:42:01 +01:00
with lib;
with helpers.vim-plugin;
mkVimPlugin config {
2024-01-08 14:42:01 +01:00
name = "undotree";
defaultPackage = pkgs.vimPlugins.undotree;
2024-01-08 14:42:01 +01:00
globalPrefix = "undotree_";
addExtraConfigRenameWarning = true;
2024-01-08 14:42:01 +01:00
options = {
windowLayout = mkDefaultOpt {
type = types.int;
description = ''
Window layout for undotree.
Check https://github.com/mbbill/undotree/blob/master/plugin/undotree.vim#L29 for reference
'';
};
shortIndicators = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
E.g. use 'd' instead of 'days'
Default: `false`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
windowWidth = mkDefaultOpt {
type = types.int;
2021-02-10 15:09:31 +00:00
description = "Undotree window width";
};
2024-01-08 14:42:01 +01:00
diffHeight = mkDefaultOpt {
type = types.int;
2021-02-10 15:09:31 +00:00
description = "Undotree diff panel height";
};
2024-01-08 14:42:01 +01:00
autoOpenDiff = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Auto open diff window
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
focusOnToggle = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Focus undotree after being opened
Default: `false`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
treeNodeShape = mkDefaultOpt {
type = types.str;
2021-02-10 15:09:31 +00:00
description = "Tree node shape";
};
2024-01-08 14:42:01 +01:00
diffCommand = mkDefaultOpt {
type = types.str;
2021-02-10 15:09:31 +00:00
description = "Diff command";
};
2024-01-08 14:42:01 +01:00
relativeTimestamp = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Use a relative timestamp.
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
highlightChangedText = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Highlight changed text
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
highlightChangesWithSign = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Highlight changes with a sign in the gutter
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
highlightSyntaxAdd = mkDefaultOpt {
type = types.str;
2021-02-10 15:09:31 +00:00
description = "Added lines highlight group";
};
2024-01-08 14:42:01 +01:00
highlightSyntaxChange = mkDefaultOpt {
type = types.str;
2021-02-10 15:09:31 +00:00
description = "Changed lines highlight group";
};
2024-01-08 14:42:01 +01:00
highlightSyntaxDel = mkDefaultOpt {
type = types.str;
2021-02-10 15:09:31 +00:00
description = "Deleted lines highlight group";
};
2024-01-08 14:42:01 +01:00
showHelpLine = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Show help line.
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
2024-01-08 14:42:01 +01:00
showCursorLine = mkDefaultOpt {
2021-02-10 15:09:31 +00:00
type = types.bool;
2024-01-08 14:42:01 +01:00
description = ''
Show cursor line
Default: `true`
'';
2021-02-10 15:09:31 +00:00
};
};
2024-01-08 14:42:01 +01:00
}