return { "nvim-telescope/telescope.nvim", cond = not vim.g.vscode, branch = "0.1.x", dependencies = { { { "nvim-lua/plenary.nvim" }, { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, { "tsakirist/telescope-lazy.nvim", dependencies = { "folke/lazy.nvim" } }, { "folke/noice.nvim" }, { "benfowler/telescope-luasnip.nvim", dependencies = { "L3MON4D3/LuaSnip" } }, }, }, cmd = "Telescope", init = function() vim.keymap.set("n", "ff", "Telescope find_files") vim.keymap.set("n", "fh", "Telescope help_tags") vim.keymap.set("n", "fr", "Telescope oldfiles") vim.keymap.set("n", "fg", "Telescope live_grep") vim.keymap.set("n", "fs", "Telescope lsp_document_symbols") vim.keymap.set("n", "ft", "Telescope treesitter") vim.keymap.set("n", "fz", "Telescope current_buffer_fuzzy_find") vim.keymap.set("n", "fl", "Telescope lazy") vim.keymap.set("n", "fn", "Telescope noice") end, config = function() local trouble = require "trouble.providers.telescope" require("telescope").setup { defaults = { layout_strategy = "flex", mappings = { i = { [""] = trouble.open_with_trouble }, n = { [""] = trouble.open_with_trouble }, }, winblend = vim.o.winblend, }, extensions = { fzf = { fuzzy = true, -- false will only do exact matching override_generic_sorter = true, -- override the generic sorter override_file_sorter = true, -- override the file sorter }, }, } require("telescope").load_extension "fzf" require("telescope").load_extension "lazy" require("telescope").load_extension "noice" end, }