_: { programs.nixvim = { plugins.telescope = { enable = true; 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 current [W]ord"; }; }; "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() } }"; }; }; keymaps = [ { mode = "n"; key = "/"; action.__raw = '' function() require('telescope.builtin').current_buffer_fuzzy_find( require('telescope.themes').get_dropdown { winblend = 10, previewer = false } ) end ''; options = { desc = "[/] Fuzzily search in current buffer"; }; } { mode = "n"; key = "s/"; action.__raw = '' function() require('telescope.builtin').live_grep { grep_open_files = true, prompt_title = 'Live Grep in Open Files' } end ''; options = { desc = "[S]earch [/] in Open Files"; }; } { mode = "n"; key = "sn"; action.__raw = '' function() require('telescope.builtin').find_files { cwd = vim.fn.stdpath 'config' } end ''; options = { desc = "[S]earch [N]eovim files"; }; } ]; }; }