2024-12-14 21:09:46 +01:00
|
|
|
{ lib, ... }:
|
|
|
|
let
|
|
|
|
inherit (lib.nixvim) mkNullOrOption;
|
|
|
|
inherit (lib) types;
|
|
|
|
in
|
2024-04-30 14:33:34 +02:00
|
|
|
{
|
2024-12-14 21:09:46 +01:00
|
|
|
analysisExcludedFolders = mkNullOrOption (with types; listOf str) ''
|
2024-04-30 14:33:34 +02:00
|
|
|
An array of paths (absolute or relative to each workspace folder) that should be excluded from
|
|
|
|
analysis.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
enableSdkFormatter = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
When set to false, prevents registration (or unregisters) the SDK formatter.
|
|
|
|
When set to true or not supplied, will register/reregister the SDK formatter
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
lineLength = mkNullOrOption types.ints.unsigned ''
|
2024-04-30 14:33:34 +02:00
|
|
|
The number of characters the formatter should wrap code at.
|
|
|
|
If unspecified, code will be wrapped at 80 characters.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
completeFunctionCalls = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
When set to true, completes functions/methods with their required parameters.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
showTodos = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
Whether to generate diagnostics for TODO comments.
|
|
|
|
If unspecified, diagnostics will not be generated.
|
|
|
|
'';
|
|
|
|
|
|
|
|
renameFilesWithClasses =
|
2024-12-14 21:09:46 +01:00
|
|
|
mkNullOrOption
|
2024-04-30 14:33:34 +02:00
|
|
|
(types.enum [
|
|
|
|
"always"
|
|
|
|
"prompt"
|
|
|
|
])
|
|
|
|
''
|
|
|
|
When set to "always", will include edits to rename files when classes are renamed if the
|
|
|
|
filename matches the class name (but in snake_form).
|
|
|
|
When set to "prompt", a prompt will be shown on each class rename asking to confirm the file
|
|
|
|
rename.
|
|
|
|
Otherwise, files will not be renamed.
|
|
|
|
Renames are performed using LSP's `ResourceOperation` edits - that means the rename is simply
|
|
|
|
included in the resulting `WorkspaceEdit` and must be handled by the client.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
enableSnippets = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
Whether to include code snippets (such as class, stful, switch) in code completion.
|
|
|
|
When unspecified, snippets will be included.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
updateImportsOnRename = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
Whether to update imports and other directives when files are renamed.
|
|
|
|
When unspecified, imports will be updated if the client supports `willRenameFiles` requests.
|
|
|
|
'';
|
|
|
|
|
|
|
|
documentation =
|
2024-12-14 21:09:46 +01:00
|
|
|
mkNullOrOption
|
2024-04-30 14:33:34 +02:00
|
|
|
(types.enum [
|
|
|
|
"none"
|
|
|
|
"summary"
|
|
|
|
"full"
|
|
|
|
])
|
|
|
|
''
|
|
|
|
The typekind of dartdocs to include in Hovers, Code Completion, Signature Help and other similar
|
|
|
|
requests.
|
|
|
|
If not set, defaults to `"full"`.
|
|
|
|
'';
|
|
|
|
|
2024-12-14 21:09:46 +01:00
|
|
|
includeDependenciesInWorkspaceSymbols = mkNullOrOption types.bool ''
|
2024-04-30 14:33:34 +02:00
|
|
|
Whether to include symbols from dependencies and Dart/Flutter SDKs in Workspace Symbol results.
|
|
|
|
If not set, defaults to true.
|
|
|
|
'';
|
|
|
|
}
|