From 3bce3ed48fdb0e1817b69f53b0ec99a03bb0b25b Mon Sep 17 00:00:00 2001 From: Alexander Nortung Date: Sat, 27 Aug 2022 23:26:03 +0000 Subject: [PATCH] telescope.media_files: init (#29) * telescope.media_files: init * telescope-media: fix typo `nollOr` -> `nullOr` Co-authored-by: Pedro Alves --- plugins/telescope/default.nix | 1 + plugins/telescope/media-files.nix | 38 +++++++++++++++++++++++++++++++ 2 files changed, 39 insertions(+) create mode 100644 plugins/telescope/media-files.nix 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 + ]; + }; + + }; +}