mirror of
https://github.com/NotAShelf/nvf.git
synced 2026-02-04 10:55:50 +00:00
60 lines
1.7 KiB
Nix
60 lines
1.7 KiB
Nix
{lib, ...}: let
|
|
inherit (lib.options) mkOption mkEnableOption;
|
|
inherit (lib.types) int str nullOr listOf bool;
|
|
inherit (lib.nvim.types) mkPluginSetupOption;
|
|
in {
|
|
options.vim.fun = {
|
|
syntax-gaslighting = {
|
|
enable = mkEnableOption "Thats no even a real option, you're crazy.";
|
|
|
|
setupOpts = mkPluginSetupOption "syntax-gaslighting" {
|
|
gaslighting_chance = mkOption {
|
|
type = nullOr int;
|
|
default = 5;
|
|
description = "Set the chance of gaslighting per line (1-100%).";
|
|
};
|
|
|
|
min_line_length = mkOption {
|
|
type = nullOr int;
|
|
default = 10;
|
|
description = "Minimum line length to apply gaslighting.";
|
|
};
|
|
|
|
messages = mkOption {
|
|
type = nullOr (listOf str);
|
|
default = null;
|
|
description = "Custom messages for gaslighting.";
|
|
};
|
|
|
|
merge_messages = mkOption {
|
|
type = bool;
|
|
default = false;
|
|
description = ''
|
|
Merge user messages with the default ones.
|
|
If disabled, the messages table will override default messages.
|
|
'';
|
|
};
|
|
|
|
debounce_delay = mkOption {
|
|
type = nullOr int;
|
|
default = 500;
|
|
description = "Debounce delay for updates in milliseconds.";
|
|
};
|
|
|
|
auto_update = mkOption {
|
|
type = bool;
|
|
default = true;
|
|
description = "Auto-update on buffer events.";
|
|
};
|
|
|
|
filetypes_to_ignore = mkOption {
|
|
type = nullOr (listOf str);
|
|
default = [
|
|
"netrw"
|
|
];
|
|
description = "List of filetypes to ignore.";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
}
|