diff --git a/plugins/telescope/default.nix b/plugins/telescope/default.nix index 74b7d4c5..c36ea858 100644 --- a/plugins/telescope/default.nix +++ b/plugins/telescope/default.nix @@ -9,6 +9,7 @@ in ./frecency.nix ./fzf-native.nix ./fzy-native.nix + ./media-files.nix ]; # TODO:add support for aditional filetypes. This requires autocommands! diff --git a/plugins/telescope/media-files.nix b/plugins/telescope/media-files.nix new file mode 100644 index 00000000..0d7d0a6c --- /dev/null +++ b/plugins/telescope/media-files.nix @@ -0,0 +1,38 @@ +{ pkgs, config, lib, ... }: +with lib; +let + cfg = config.programs.nixvim.plugins.telescope.extensions.media_files; +in +{ + options.programs.nixvim.plugins.telescope.extensions.media_files = { + enable = mkEnableOption "Enable media_files extension for telescope"; + + filetypes = mkOption { + default = types.null; + type = with types; nullOr (listOf str); + }; + + find_cmd = mkOption { + default = null; + type = with types; nullOr str; + example = ''"rg"''; + }; + }; + + config = mkIf cfg.enable { + programs.nixvim = { + plugins.telescope.enabledExtensions = [ "media_files" ]; + + extraPlugins = with pkgs.vimPlugins; [ + popup-nvim + plenary-nvim + telescope-media-files-nvim + ]; + + extraPackages = with pkgs; [ + ueberzug + ]; + }; + + }; +}