return { "nvim-telescope/telescope.nvim", tag = "0.1.5", dependencies = { "nvim-lua/plenary.nvim", "nvim-telescope/telescope-ui-select.nvim", }, config = function() -- Setup -- require("telescope").setup({ extensions = { ["ui-select"] = { require("telescope.themes").get_dropdown({}), }, }, }) require("telescope").load_extension("ui-select") -- Keybinding -- local function setTelescopeBinding(mode, keymap, method, search_global, description) local function binding() local path = search_global and "~" or require("neo-tree.sources.manager").get_state("filesystem").path method({ search_dirs = { path } }) end vim.keymap.set(mode, keymap, binding, { desc = description }) end local telescope = require("telescope.builtin") setTelescopeBinding("n", "ff", telescope.find_files, false, "Find File") setTelescopeBinding("n", "fz", telescope.live_grep, false, "Fuzzy Find") setTelescopeBinding("n", "gff", telescope.find_files, true, "Global Find File") setTelescopeBinding("n", "gfz", telescope.live_grep, true, "Global Fuzzy Find") end, }