mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 00:25:42 +02:00
132 lines
3 KiB
Nix
132 lines
3 KiB
Nix
{
|
|
lib,
|
|
...
|
|
}:
|
|
let
|
|
inherit (lib.nixvim) defaultNullOpts;
|
|
inherit (lib) types;
|
|
in
|
|
lib.nixvim.plugins.mkNeovimPlugin {
|
|
name = "precognition";
|
|
packPathName = "precognition.nvim";
|
|
package = "precognition-nvim";
|
|
|
|
maintainers = [ lib.maintainers.khaneliman ];
|
|
|
|
settingsOptions = {
|
|
startVisible = defaultNullOpts.mkBool true ''
|
|
Whether to show precognition.nvim on startup.
|
|
'';
|
|
|
|
showBlankVirtLine = defaultNullOpts.mkBool true ''
|
|
Setting this option will mean that if a Virtual Line would be blank it won't be rendered.
|
|
'';
|
|
|
|
disabled_fts = defaultNullOpts.mkListOf types.str [
|
|
"startify"
|
|
] "`precognition.nvim` is disabled under these filetypes.";
|
|
|
|
highlightColor =
|
|
defaultNullOpts.mkAttrsOf types.anything
|
|
{
|
|
link = "Comment";
|
|
}
|
|
''
|
|
Highlight groups for the hints.
|
|
|
|
Can be defined as either:
|
|
- As a table containing a link property pointing to an existing highlight group.
|
|
- As a table specifying custom highlight values, such as foreground and background colors.
|
|
'';
|
|
|
|
hints =
|
|
defaultNullOpts.mkAttrsOf types.anything
|
|
{
|
|
Caret = {
|
|
text = "^";
|
|
prio = 2;
|
|
};
|
|
Dollar = {
|
|
text = "$";
|
|
prio = 1;
|
|
};
|
|
MatchingPair = {
|
|
text = "%";
|
|
prio = 5;
|
|
};
|
|
Zero = {
|
|
text = "0";
|
|
prio = 1;
|
|
};
|
|
w = {
|
|
text = "w";
|
|
prio = 10;
|
|
};
|
|
b = {
|
|
text = "b";
|
|
prio = 9;
|
|
};
|
|
e = {
|
|
text = "e";
|
|
prio = 8;
|
|
};
|
|
W = {
|
|
text = "W";
|
|
prio = 7;
|
|
};
|
|
B = {
|
|
text = "B";
|
|
prio = 6;
|
|
};
|
|
E = {
|
|
text = "E";
|
|
prio = 5;
|
|
};
|
|
}
|
|
''
|
|
Hints that will be shown on the virtual line.
|
|
Priority is used to determine which hint to show when two can be shown at the same spot.
|
|
|
|
Hints can be hidden by setting their priority to `0`.
|
|
If you want to hide the entire virtual line, set all elements to `prio = 0`.
|
|
'';
|
|
|
|
gutterHints =
|
|
defaultNullOpts.mkAttrsOf types.anything
|
|
{
|
|
G = {
|
|
text = "G";
|
|
prio = 10;
|
|
};
|
|
gg = {
|
|
text = "gg";
|
|
prio = 9;
|
|
};
|
|
PrevParagraph = {
|
|
text = "{";
|
|
prio = 8;
|
|
};
|
|
NextParagraph = {
|
|
text = "}";
|
|
prio = 8;
|
|
};
|
|
}
|
|
''
|
|
Hints that will be shown on the gutter.
|
|
|
|
Hints can be hidden by setting their priority to `0`.
|
|
'';
|
|
};
|
|
|
|
settingsExample = {
|
|
startVisible = false;
|
|
showBlankVirtLine = false;
|
|
highlightColor = {
|
|
link = "Text";
|
|
};
|
|
disabled_fts = [
|
|
"startify"
|
|
"dashboard"
|
|
];
|
|
};
|
|
}
|