mirror of
https://github.com/NotAShelf/nvf.git
synced 2025-12-08 21:23:53 +00:00
feat(autocompletion): allow blink-cmp package override
This commit is contained in:
parent
09470524a2
commit
b9d1104be2
2 changed files with 11 additions and 6 deletions
|
|
@ -1,5 +1,5 @@
|
|||
{lib, ...}: let
|
||||
inherit (lib.options) mkEnableOption mkOption literalMD;
|
||||
{lib, pkgs, ...}: let
|
||||
inherit (lib.options) mkEnableOption mkOption mkPackageOption literalMD;
|
||||
inherit (lib.types) bool listOf str either attrsOf submodule enum anything int nullOr;
|
||||
inherit (lib.nvim.types) mkPluginSetupOption luaInline pluginType;
|
||||
inherit (lib.nvim.binds) mkMappingOption;
|
||||
|
|
@ -29,6 +29,7 @@
|
|||
in {
|
||||
options.vim.autocomplete.blink-cmp = {
|
||||
enable = mkEnableOption "blink.cmp";
|
||||
package = mkPackageOption pkgs ["vimPlugins" "blink-cmp"] { nullable = true; };
|
||||
setupOpts = mkPluginSetupOption "blink.cmp" {
|
||||
sources = {
|
||||
default = mkOption {
|
||||
|
|
|
|||
|
|
@ -17,7 +17,9 @@
|
|||
inherit (cfg) mappings;
|
||||
|
||||
getPluginName = plugin:
|
||||
if typeOf plugin == "string"
|
||||
if cfg.package != null
|
||||
then cfg.package.pname
|
||||
else if typeOf plugin == "string"
|
||||
then plugin
|
||||
else if (plugin ? pname && (tryEval plugin.pname).success)
|
||||
then plugin.pname
|
||||
|
|
@ -43,9 +45,11 @@ in {
|
|||
|
||||
vim = mkIf cfg.enable {
|
||||
startPlugins = ["blink-compat"] ++ blinkSourcePlugins ++ (optional cfg.friendly-snippets.enable "friendly-snippets");
|
||||
lazy.plugins = {
|
||||
blink-cmp = {
|
||||
package = "blink-cmp";
|
||||
lazy.plugins = let
|
||||
pluginName = if cfg.package != null then cfg.package.pname else "blink-cmp";
|
||||
in {
|
||||
"${pluginName}" = {
|
||||
package = if cfg.package == null then "blink-cmp" else cfg.package;
|
||||
setupModule = "blink.cmp";
|
||||
inherit (cfg) setupOpts;
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue