2022-07-28 21:38:38 +02:00
|
|
|
{
|
2023-02-20 11:42:13 +01:00
|
|
|
lib,
|
2023-11-06 15:04:08 +01:00
|
|
|
config,
|
2023-02-20 11:42:13 +01:00
|
|
|
pkgs,
|
|
|
|
...
|
2023-11-06 15:04:08 +01:00
|
|
|
}: let
|
2023-02-20 11:42:13 +01:00
|
|
|
helpers = import ../../helpers.nix {inherit lib;};
|
|
|
|
in
|
|
|
|
with helpers;
|
|
|
|
with lib; {
|
|
|
|
mkCmpSourcePlugin = {
|
|
|
|
name,
|
|
|
|
extraPlugins ? [],
|
|
|
|
useDefaultPackage ? true,
|
|
|
|
...
|
|
|
|
}:
|
2023-11-06 15:04:08 +01:00
|
|
|
mkPlugin {inherit lib config pkgs;} {
|
2023-02-20 11:42:13 +01:00
|
|
|
inherit name;
|
|
|
|
extraPlugins = extraPlugins ++ (lists.optional useDefaultPackage pkgs.vimPlugins.${name});
|
|
|
|
description = "Enable ${name}";
|
|
|
|
};
|
2022-07-28 21:38:38 +02:00
|
|
|
|
2023-02-20 11:42:13 +01:00
|
|
|
pluginAndSourceNames = {
|
|
|
|
"luasnip" = "cmp_luasnip";
|
|
|
|
"snippy" = "cmp-snippy";
|
|
|
|
"ultisnips" = "cmp-nvim-ultisnips";
|
|
|
|
"vsnip" = "cmp-vsnip";
|
|
|
|
"buffer" = "cmp-buffer";
|
|
|
|
"calc" = "cmp-calc";
|
|
|
|
"dictionary" = "cmp-dictionary";
|
|
|
|
"digraphs" = "cmp-digraphs";
|
|
|
|
"omni" = "cmp-omni";
|
|
|
|
"spell" = "cmp-spell";
|
|
|
|
"nvim_lsp" = "cmp-nvim-lsp";
|
|
|
|
"nvim_lsp_document_symbol" = "cmp-nvim-lsp-document-symbol";
|
|
|
|
"nvim_lsp_signature_help" = "cmp-nvim-lsp-signature-help";
|
|
|
|
"vim_lsp" = "cmp-vim-lsp";
|
|
|
|
"path" = "cmp-path";
|
|
|
|
"git" = "cmp-git";
|
|
|
|
"conventionalcommits" = "cmp-conventionalcommits";
|
|
|
|
"cmdline" = "cmp-cmdline";
|
|
|
|
"cmp-cmdline-history" = "cmp-cmdline-history";
|
|
|
|
"fuzzy_buffer" = "cmp-fuzzy-buffer";
|
|
|
|
"fuzzy_path" = "cmp-fuzzy-path";
|
|
|
|
"rg" = "cmp-rg";
|
|
|
|
"fish" = "cmp-fish";
|
|
|
|
"tmux" = "cmp-tmux";
|
|
|
|
"zsh" = "cmp-zsh";
|
|
|
|
"crates" = "crates-nvim";
|
|
|
|
"npm" = "cmp-npm";
|
|
|
|
"cmp-clippy" = "cmp-clippy";
|
|
|
|
"cmp_tabnine" = "cmp-tabnine";
|
2023-06-22 10:21:24 +02:00
|
|
|
"copilot" = "copilot-cmp";
|
2023-02-20 11:42:13 +01:00
|
|
|
"dap" = "cmp-dap";
|
|
|
|
"emoji" = "cmp-emoji";
|
|
|
|
"greek" = "cmp-greek";
|
|
|
|
"latex_symbols" = "cmp-latex-symbols";
|
|
|
|
"look" = "cmp-look";
|
|
|
|
"nvim_lua" = "cmp-nvim-lua";
|
|
|
|
"pandoc_references" = "cmp-pandoc-references";
|
|
|
|
"cmp_pandoc" = "cmp-pandoc-nvim";
|
|
|
|
"treesitter" = "cmp-treesitter";
|
|
|
|
"vimwiki-tags" = "cmp-vimwiki-tags";
|
|
|
|
};
|
|
|
|
}
|