Skip to content

Commit 9a52ac7

Browse files
HeitorAugustoLNMattSturgeon
authored andcommitted
plugins/gdscript-extended-lsp: init
1 parent 6bd43bf commit 9a52ac7

File tree

2 files changed

+73
-0
lines changed
  • plugins/by-name/gdscript-extended-lsp
  • tests/test-sources/plugins/by-name/gdscript-extended-lsp

2 files changed

+73
-0
lines changed
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
{ config, lib, ... }:
2+
lib.nixvim.plugins.mkNeovimPlugin {
3+
name = "gdscript-extended-lsp";
4+
package = "gdscript-extended-lsp-nvim";
5+
6+
maintainers = [ lib.maintainers.HeitorAugustoLN ];
7+
8+
settingsExample = {
9+
picker = "snacks";
10+
};
11+
12+
extraConfig = cfg: opts: {
13+
warnings = lib.nixvim.mkWarnings "plugins.gdscript-extended-lsp" (
14+
lib.mapAttrsToList
15+
(picker: pluginName: {
16+
when = cfg.settings.picker or null == picker && !config.plugins.${pluginName}.enable;
17+
message = ''
18+
You have defined `${opts.settings}.picker = "${picker}"` but `plugins.${pluginName}` is not enabled.
19+
'';
20+
})
21+
{
22+
telescope = "telescope";
23+
snacks = "snacks";
24+
}
25+
);
26+
};
27+
}
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
{
2+
empty = {
3+
plugins.gdscript-extended-lsp.enable = true;
4+
};
5+
6+
defaults = {
7+
plugins = {
8+
gdscript-extended-lsp = {
9+
enable = true;
10+
settings = {
11+
doc_file_extension = ".txt";
12+
view_type = "vsplit";
13+
split_side = false;
14+
keymaps = {
15+
declaration = "gd";
16+
close = [
17+
"q"
18+
"<Esc>"
19+
];
20+
};
21+
floating_win_size = 0.8;
22+
picker = "telescope";
23+
};
24+
};
25+
26+
telescope.enable = true;
27+
web-devicons.enable = true;
28+
};
29+
};
30+
31+
example = {
32+
plugins = {
33+
gdscript-extended-lsp = {
34+
enable = true;
35+
settings = {
36+
picker = "snacks";
37+
};
38+
};
39+
40+
snacks = {
41+
enable = true;
42+
settings.picker.enabled = true;
43+
};
44+
};
45+
};
46+
}

0 commit comments

Comments
 (0)