local Util = require("lazyvim.util") return { { "nvim-telescope/telescope.nvim", commit = vim.fn.has("nvim-0.9.0") == 0 and "057ee0f8783" or nil, cmd = "Telescope", version = false, -- telescope did only one release, so use HEAD for now dependencies = {}, keys = { { ",", "Telescope buffers show_all_buffers=true", desc = "Switch Buffer", }, { "/", Util.telescope("live_grep"), desc = "Grep (root dir)", }, { ":", "Telescope command_history", desc = "Command History", }, { "", Util.telescope("files"), desc = "Find Files (root dir)", }, -- find { "fb", "Telescope buffers", desc = "Buffers" }, { "ff", Util.telescope("files"), desc = "Find Files (root dir)", }, { "fF", Util.telescope("files", { cwd = false }), desc = "Find Files (cwd)", }, { "fr", "Telescope oldfiles", desc = "Recent" }, { "fR", Util.telescope("oldfiles", { cwd = vim.loop.cwd() }), desc = "Recent (cwd)" }, -- git { "gc", "Telescope git_commits", desc = "commits" }, { "gs", "Telescope git_status", desc = "status" }, -- search { 's"', "Telescope registers", desc = "Registers" }, { "sa", "Telescope autocommands", desc = "Auto Commands", }, { "sb", "Telescope current_buffer_fuzzy_find", desc = "Buffer" }, { "sc", "Telescope command_history", desc = "Command History", }, { "sC", "Telescope commands", desc = "Commands" }, { "sd", "Telescope diagnostics bufnr=0", desc = "Document diagnostics", }, { "sD", "Telescope diagnostics", desc = "Workspace diagnostics", }, { "sg", Util.telescope("live_grep"), desc = "Grep (root dir)", }, { "sG", Util.telescope("live_grep", { cwd = false }), desc = "Grep (cwd)" }, { "sh", "Telescope help_tags", desc = "Help Pages" }, { "sH", "Telescope highlights", desc = "Search Highlight Groups", }, { "sk", "Telescope keymaps", desc = "Key Maps" }, { "sM", "Telescope man_pages", desc = "Man Pages" }, { "sm", "Telescope marks", desc = "Jump to Mark" }, { "so", "Telescope vim_options", desc = "Options" }, { "sR", "Telescope resume", desc = "Resume" }, { "gu", "Telescope undo", desc = "Telescope Undotree" }, { "sw", Util.telescope("grep_string", { word_match = "-w" }), desc = "Word (root dir)", }, { "sW", Util.telescope("grep_string", { cwd = false, word_match = "-w" }), desc = "Word (cwd)" }, { "sw", Util.telescope("grep_string"), mode = "v", desc = "Selection (root dir)", }, { "sW", Util.telescope("grep_string", { cwd = false }), mode = "v", desc = "Selection (cwd)", }, { "uC", Util.telescope("colorscheme", { enable_preview = true }), desc = "Colorscheme with preview", }, { "ss", Util.telescope("lsp_document_symbols", { symbols = { "Class", "Function", "Method", "Constructor", "Interface", "Module", "Struct", "Trait", "Field", "Property", }, }), desc = "Goto Symbol", }, { "sS", Util.telescope("lsp_dynamic_workspace_symbols", { symbols = { "Class", "Function", "Method", "Constructor", "Interface", "Module", "Struct", "Trait", "Field", "Property", }, }), desc = "Goto Symbol (Workspace)", }, { "sv", Util.telescope("lsp_document_symbols", { symbols = { "Variable", "Parameter", }, }), desc = "Variables", }, { "sV", Util.telescope("lsp_dynamic_workspace_symbols", { symbols = { "Variable", "Parameter", }, }), desc = "Variables (Workspace)", }, { "sA", Util.telescope("treesitter"), desc = "Treesitter Symbols", }, }, config = function() require("telescope").setup({ defaults = { file_ignore_patterns = { ".gitignore", "node_modules", "build", "dist", "yarn.lock", "*.git/*", "*/tmp/*", "Juegos/", }, }, pickers = { find_files = { hidden = true, }, }, extensions = { undo = { side_by_side = true, layout_strategy = "vertical", layout_config = { preview_height = 0.65, }, }, import = { -- Add imports to the top of the file keeping the cursor in place insert_at_top = true, }, }, }) require("telescope").load_extension("refactoring") end, }, }