{ config, pkgs, inputs, ... }: { programs.nixvim.plugins.telescope = { enable = true; # Enable telescope extensions extensions = { fzf-native.enable = true; ui-select.enable = true; }; keymaps = { "sh" = { mode = "n"; action = "help_tags"; options = { desc = "[S]earch [H]elp"; }; }; "sk" = { mode = "n"; action = "keymaps"; options = { desc = "[S]earch [K]eymaps"; }; }; "sf" = { mode = "n"; action = "find_files"; options = { desc = "[S]earch [F]iles"; }; }; "ss" = { mode = "n"; action = "builtin"; options = { desc = "[S]earch [S]elect Telescope"; }; }; "sw" = { mode = "n"; action = "grep_string"; options = { desc = "[S]earch by [G]rep"; }; }; "sg" = { mode = "n"; action = "live_grep"; options = { desc = "[S]earch by [G]rep"; }; }; "sd" = { mode = "n"; action = "diagnostics"; options = { desc = "[S]earch [D]iagnostics"; }; }; "sr" = { mode = "n"; action = "resume"; options = { desc = "[S]earch [R]esume"; }; }; "s" = { mode = "n"; action = "oldfiles"; options = { desc = "[S]earch Recent Files ('.' for repeat)"; }; }; "" = { mode = "n"; action = "buffers"; options = { desc = "[ ] Find existing buffers"; }; }; }; settings = { extensions.__raw = "{ ['ui-select'] = { require('telescope.themes').get_dropdown() } }"; }; }; }