diff --git a/plugins/telescope/default.nix b/plugins/telescope/default.nix index 065623d8..b5d972e6 100644 --- a/plugins/telescope/default.nix +++ b/plugins/telescope/default.nix @@ -6,7 +6,12 @@ }: with lib; let - inherit (lib.nixvim) keymaps mkNullOrOption toLuaObject; + inherit (lib.nixvim) + keymaps + mkNullOrOption + mkPackageOption + toLuaObject + ; in # TODO:add support for additional filetypes. This requires autocommands! lib.nixvim.neovim-plugin.mkNeovimPlugin config { @@ -85,10 +90,17 @@ lib.nixvim.neovim-plugin.mkNeovimPlugin config { added to `extraPackages`. ''; }; + + iconsPackage = mkPackageOption { + name = "nvim-web-devicons"; + default = pkgs.vimPlugins.nvim-web-devicons; + }; }; callSetup = false; extraConfig = cfg: { + extraPlugins = mkIf (cfg.iconsPackage != null) [ cfg.iconsPackage ]; + extraConfigVim = mkIf (cfg.highlightTheme != null) '' let $BAT_THEME = '${cfg.highlightTheme}' ''; diff --git a/tests/test-sources/plugins/telescope/default.nix b/tests/test-sources/plugins/telescope/default.nix index 5b40bdce..297f7eba 100644 --- a/tests/test-sources/plugins/telescope/default.nix +++ b/tests/test-sources/plugins/telescope/default.nix @@ -30,4 +30,11 @@ assert(vim.api.nvim_get_runtime_file("data/memes/planets/earth", false)[1], "telescope planets aren't found in runtime") ''; }; + + no-packages = { + plugins.telescope = { + enable = true; + iconsPackage = null; + }; + }; }