mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-24 17:58:38 +02:00
68 lines
1.6 KiB
Nix
68 lines
1.6 KiB
Nix
|
{ config, lib, ... }:
|
||
|
lib.nixvim.plugins.mkNeovimPlugin {
|
||
|
name = "blink-cmp-copilot";
|
||
|
package = "blink-cmp-copilot";
|
||
|
|
||
|
maintainers = [ lib.maintainers.HeitorAugustoLN ];
|
||
|
|
||
|
description = ''
|
||
|
This plugin should be configured through blink-cmp's source settings.
|
||
|
|
||
|
For example:
|
||
|
|
||
|
```nix
|
||
|
plugins.blink-cmp = {
|
||
|
enable = true;
|
||
|
settings.sources = {
|
||
|
copilot = {
|
||
|
async = true;
|
||
|
module = "blink-cmp-copilot";
|
||
|
name = "copilot";
|
||
|
score_offset = 100;
|
||
|
};
|
||
|
};
|
||
|
};
|
||
|
```
|
||
|
|
||
|
And then you can add it as a source for blink-cmp:
|
||
|
|
||
|
```nix
|
||
|
plugins.blink-cmp = {
|
||
|
enable = true;
|
||
|
settings.sources.default = [
|
||
|
"lsp"
|
||
|
"path"
|
||
|
"luasnip"
|
||
|
"buffer"
|
||
|
"copilot"
|
||
|
];
|
||
|
};
|
||
|
```
|
||
|
'';
|
||
|
|
||
|
callSetup = false;
|
||
|
hasLuaConfig = false;
|
||
|
hasSettings = false;
|
||
|
|
||
|
extraConfig = {
|
||
|
warnings =
|
||
|
let
|
||
|
copilot-lua-cfg = config.plugins.copilot-lua;
|
||
|
isEnabled = b: builtins.isBool b && b;
|
||
|
in
|
||
|
lib.optionals (isEnabled copilot-lua-cfg.suggestion.enabled) [
|
||
|
''
|
||
|
It is recommended to disable copilot's `suggestion` module, as it can interfere with
|
||
|
completions properly appearing in blink-cmp-copilot.
|
||
|
''
|
||
|
]
|
||
|
++ lib.optionals (isEnabled copilot-lua-cfg.panel.enabled) [
|
||
|
''
|
||
|
It is recommended to disable copilot's `panel` module, as it can interfere with completions
|
||
|
properly appearing in blink-cmp-copilot.
|
||
|
''
|
||
|
];
|
||
|
plugins.copilot-lua.enable = lib.mkDefault true;
|
||
|
};
|
||
|
}
|