2024-03-12 01:46:29 +01:00
|
|
|
{lib, ...}: let
|
|
|
|
inherit (lib.options) mkEnableOption mkOption;
|
2024-05-16 18:09:20 +02:00
|
|
|
inherit (lib.types) attrsOf str int;
|
|
|
|
inherit (lib.generators) mkLuaInline;
|
|
|
|
inherit (lib.nvim.types) luaInline;
|
2023-04-17 22:27:27 +02:00
|
|
|
in {
|
|
|
|
options.vim.lsp.null-ls = {
|
|
|
|
enable = mkEnableOption "null-ls, also enabled automatically";
|
|
|
|
|
2024-05-16 18:09:20 +02:00
|
|
|
debug = mkEnableOption "debugging information for `null-ls";
|
|
|
|
|
|
|
|
diagnostics_format = mkOption {
|
|
|
|
type = luaInline;
|
|
|
|
default = mkLuaInline "[#{m}] #{s} (#{c})";
|
|
|
|
description = "Diagnostic output format for null-ls";
|
|
|
|
};
|
|
|
|
|
|
|
|
debounce = mkOption {
|
|
|
|
type = int;
|
|
|
|
default = 250;
|
|
|
|
description = "Default debounce";
|
|
|
|
};
|
|
|
|
|
|
|
|
default_timeout = mkOption {
|
|
|
|
type = int;
|
|
|
|
default = 5000;
|
|
|
|
description = "Default timeout value, in miliseconds";
|
|
|
|
};
|
|
|
|
|
2023-04-17 22:27:27 +02:00
|
|
|
sources = mkOption {
|
|
|
|
description = "null-ls sources";
|
2024-03-12 01:46:29 +01:00
|
|
|
type = attrsOf str;
|
2023-04-17 22:27:27 +02:00
|
|
|
default = {};
|
|
|
|
};
|
|
|
|
};
|
|
|
|
}
|