mirror of
https://github.com/nix-community/nixvim.git
synced 2025-07-08 16:24:32 +02:00
plugins/copilot-cmp: move to by-name, migrate to mkNeovimPlugin
This commit is contained in:
parent
7aed1c4b57
commit
5d6e83d8ab
5 changed files with 87 additions and 74 deletions
74
plugins/by-name/copilot-cmp/default.nix
Normal file
74
plugins/by-name/copilot-cmp/default.nix
Normal file
|
@ -0,0 +1,74 @@
|
|||
{ lib, config, ... }:
|
||||
let
|
||||
inherit (lib) types;
|
||||
inherit (lib.nixvim) defaultNullOpts;
|
||||
in
|
||||
lib.nixvim.neovim-plugin.mkNeovimPlugin {
|
||||
name = "copilot-cmp";
|
||||
moduleName = "copilot_cmp";
|
||||
|
||||
imports = [
|
||||
{ cmpSourcePlugins.copilot = "copilot-cmp"; }
|
||||
];
|
||||
|
||||
maintainers = [ lib.maintainers.GaetanLepage ];
|
||||
|
||||
# TODO introduced 2024-12-19: remove after 25.05
|
||||
deprecateExtraOptions = true;
|
||||
optionsRenamedToSettings = [
|
||||
"event"
|
||||
"fixPairs"
|
||||
];
|
||||
|
||||
settingsOptions = {
|
||||
event =
|
||||
defaultNullOpts.mkListOf types.str
|
||||
[
|
||||
"InsertEnter"
|
||||
"LspAttach"
|
||||
]
|
||||
''
|
||||
Configures when the source is registered.
|
||||
|
||||
Unless you have a unique problem for your particular configuration you probably don't want to
|
||||
touch this.
|
||||
'';
|
||||
|
||||
fix_pairs = defaultNullOpts.mkBool true ''
|
||||
Suppose you have the following code: `print('h')`.
|
||||
Copilot might try to account for the `'` and `)` and complete it with this: `print('hello`.
|
||||
|
||||
This is not good behavior for consistency reasons and will just end up deleting the two ending
|
||||
characters.
|
||||
This option fixes that.
|
||||
Don't turn this off unless you are having problems with pairs and believe this might be
|
||||
causing them.
|
||||
'';
|
||||
};
|
||||
|
||||
settingsExample = {
|
||||
event = [
|
||||
"InsertEnter"
|
||||
"LspAttach"
|
||||
];
|
||||
fix_pairs = false;
|
||||
};
|
||||
|
||||
extraConfig = {
|
||||
warnings =
|
||||
let
|
||||
copilot-lua-cfg = config.plugins.copilot-lua;
|
||||
isEnabled = b: (lib.isBool b && b);
|
||||
in
|
||||
lib.optional (isEnabled copilot-lua-cfg.suggestion.enabled) ''
|
||||
It is recommended to disable copilot's `suggestion` module, as it can interfere with
|
||||
completions properly appearing in copilot-cmp.
|
||||
''
|
||||
++ lib.optional (isEnabled copilot-lua-cfg.panel.enabled) ''
|
||||
It is recommended to disable copilot's `panel` module, as it can interfere with completions
|
||||
properly appearing in copilot-cmp.
|
||||
'';
|
||||
|
||||
plugins.copilot-lua.enable = lib.mkDefault true;
|
||||
};
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue