mirror of
https://github.com/nix-community/nixvim.git
synced 2025-06-21 08:35:43 +02:00
We used to only think of it as the plugin repo's name, but we have been needing to use it for the name of the plugin's packpath location.
83 lines
2.2 KiB
Nix
83 lines
2.2 KiB
Nix
{
|
|
lib,
|
|
helpers,
|
|
pkgs,
|
|
...
|
|
}:
|
|
with lib;
|
|
with helpers.vim-plugin;
|
|
helpers.vim-plugin.mkVimPlugin {
|
|
name = "copilot-vim";
|
|
packPathName = "copilot.vim";
|
|
globalPrefix = "copilot_";
|
|
|
|
maintainers = [ maintainers.GaetanLepage ];
|
|
|
|
# TODO introduced 2024-03-02: remove 2024-05-02
|
|
deprecateExtraConfig = true;
|
|
optionsRenamedToSettings = [
|
|
"nodeCommand"
|
|
"filetypes"
|
|
"proxy"
|
|
];
|
|
|
|
settingsOptions = {
|
|
node_command = mkOption {
|
|
type = with types; nullOr str;
|
|
default = "${pkgs.nodejs-18_x}/bin/node";
|
|
description = "Tell Copilot what `node` binary to use.";
|
|
};
|
|
|
|
filetypes = mkOption {
|
|
type = with types; nullOr (attrsOf bool);
|
|
default = null;
|
|
description = "A dictionary mapping file types to their enabled status.";
|
|
example = {
|
|
"*" = false;
|
|
python = true;
|
|
};
|
|
};
|
|
|
|
proxy = mkOption {
|
|
type = with types; nullOr str;
|
|
default = null;
|
|
description = ''
|
|
Tell Copilot what proxy server to use.
|
|
|
|
If this is not set, Copilot will use the value of environment variables like
|
|
`$HTTPS_PROXY`.
|
|
'';
|
|
example = "localhost:3128";
|
|
};
|
|
|
|
proxy_strict_ssl = helpers.mkNullOrOption types.bool ''
|
|
Corporate proxies sometimes use a man-in-the-middle SSL certificate which is incompatible
|
|
with GitHub Copilot.
|
|
To work around this, SSL certificate verification can be disabled by setting this option to
|
|
`false`.
|
|
|
|
You can also tell `Node.js` to disable SSL verification by setting the
|
|
`$NODE_TLS_REJECT_UNAUTHORIZED` environment variable to `"0"`.
|
|
'';
|
|
|
|
workspace_folders = helpers.mkNullOrOption (with types; listOf str) ''
|
|
A list of "workspace folders" or project roots that Copilot may use to improve to improve
|
|
the quality of suggestions.
|
|
|
|
Example: ["~/Projects/myproject"]
|
|
|
|
You can also set `b:workspace_folder` for an individual buffer and newly seen values will be
|
|
added automatically.
|
|
'';
|
|
};
|
|
|
|
settingsExample = {
|
|
filetypes = {
|
|
"*" = false;
|
|
python = true;
|
|
};
|
|
proxy = "localhost:3128";
|
|
proxy_strict_ssl = false;
|
|
workspace_folders = [ "~/Projects/myproject" ];
|
|
};
|
|
}
|