---@type LazySpec[] return { { { "nvim-telescope/telescope.nvim", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", "GustavoKatel/telescope-asynctasks.nvim", "nvim-telescope/telescope-file-browser.nvim", { "nvim-telescope/telescope-fzf-native.nvim", build = "make" }, "nvim-telescope/telescope-project.nvim", "nvim-telescope/telescope-ui-select.nvim", { "pwntester/octo.nvim", opts = {} }, }, config = function() local telescope = require("telescope") pcall(telescope.load_extension, "asynctasks") pcall(telescope.load_extension, "file_browser") pcall(telescope.load_extension, "fzf") pcall(telescope.load_extension, "notify") pcall(telescope.load_extension, "project") pcall(telescope.load_extension, "ui-select") telescope.setup({ defaults = { prompt_prefix = " ", selection_caret = " ", multi_icon = "│", borderchars = { vim.g.bc.horiz, vim.g.bc.vert, vim.g.bc.horiz, vim.g.bc.vert, vim.g.bc.topleft, vim.g.bc.topright, vim.g.bc.botright, vim.g.bc.botleft, }, }, extensions = { file_browser = { grouped = true, sorting_strategy = "ascending", }, fzf = { fuzzy = true, override_generic_sorter = true, override_file_sorter = true, case_mode = "smart_case", }, }, }) local wk_present, wk = pcall(require, "which-key") if not wk_present then return end wk.register({ ["f"] = { name = "+Telescope", b = { "Telescope file_browser grouped=true", "File browser", }, d = { "Telescope find_files", "Find file" }, g = { "Telescope live_grep", "Live grep" }, h = { "Telescope help_tags", "Help tags" }, n = { "Telescope notify", "Show notifications" }, p = { "Telescope project", "Project" }, r = { "Telescope asynctasks all", "Run asynctasks" }, s = { function() require("telescope.builtin").find_files({ cwd = vim.fn.resolve(vim.fn.stdpath("config")), }) end, "Find in config", }, S = { "SessionManager load_session", "Show sessions" }, }, }) end, }, }, }