dotfiles/.config/nvim/lua/plugins/telescope.lua
Sergio Laín 553978feef
feat(Neovim): Plugins Changes
New Plugins and also changed some existing ones
2023-09-24 01:37:30 +02:00

406 lines
13 KiB
Lua

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 = {
"nvim-telescope/telescope-fzf-native.nvim",
build = "make",
config = function()
require("telescope").load_extension("fzf")
end,
},
keys = {
{
"<leader>,",
"<cmd>Telescope buffers show_all_buffers=true<cr>",
desc = "Switch Buffer",
},
{
"<leader>/",
Util.telescope("live_grep"),
desc = "Grep (root dir)",
},
{
"<leader>:",
"<cmd>Telescope command_history<cr>",
desc = "Command History",
},
{
"<leader><space>",
Util.telescope("files"),
desc = "Find Files (root dir)",
},
-- find
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" },
{
"<leader>ff",
Util.telescope("files"),
desc = "Find Files (root dir)",
},
{
"<leader>fF",
Util.telescope("files", { cwd = false }),
desc = "Find Files (cwd)",
},
{ "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
{ "<leader>fR", Util.telescope("oldfiles", { cwd = vim.loop.cwd() }), desc = "Recent (cwd)" },
-- git
{ "<leader>gc", "<cmd>Telescope git_commits<CR>", desc = "commits" },
{ "<leader>gs", "<cmd>Telescope git_status<CR>", desc = "status" },
-- search
{ '<leader>s"', "<cmd>Telescope registers<cr>", desc = "Registers" },
{
"<leader>sa",
"<cmd>Telescope autocommands<cr>",
desc = "Auto Commands",
},
{ "<leader>sb", "<cmd>Telescope current_buffer_fuzzy_find<cr>", desc = "Buffer" },
{
"<leader>sc",
"<cmd>Telescope command_history<cr>",
desc = "Command History",
},
{ "<leader>sC", "<cmd>Telescope commands<cr>", desc = "Commands" },
{
"<leader>sd",
"<cmd>Telescope diagnostics bufnr=0<cr>",
desc = "Document diagnostics",
},
{
"<leader>sD",
"<cmd>Telescope diagnostics<cr>",
desc = "Workspace diagnostics",
},
{
"<leader>sg",
Util.telescope("live_grep"),
desc = "Grep (root dir)",
},
{ "<leader>sG", Util.telescope("live_grep", { cwd = false }), desc = "Grep (cwd)" },
{ "<leader>sh", "<cmd>Telescope help_tags<cr>", desc = "Help Pages" },
{
"<leader>sH",
"<cmd>Telescope highlights<cr>",
desc = "Search Highlight Groups",
},
{ "<leader>sk", "<cmd>Telescope keymaps<cr>", desc = "Key Maps" },
{ "<leader>sM", "<cmd>Telescope man_pages<cr>", desc = "Man Pages" },
{ "<leader>sm", "<cmd>Telescope marks<cr>", desc = "Jump to Mark" },
{ "<leader>so", "<cmd>Telescope vim_options<cr>", desc = "Options" },
{ "<leader>sR", "<cmd>Telescope resume<cr>", desc = "Resume" },
{ "<leader>gu", "<cmd>Telescope undo<cr>", desc = "Telescope Undotree" },
{
"<leader>sw",
Util.telescope("grep_string", { word_match = "-w" }),
desc = "Word (root dir)",
},
{ "<leader>sW", Util.telescope("grep_string", { cwd = false, word_match = "-w" }), desc = "Word (cwd)" },
{
"<leader>sw",
Util.telescope("grep_string"),
mode = "v",
desc = "Selection (root dir)",
},
{
"<leader>sW",
Util.telescope("grep_string", { cwd = false }),
mode = "v",
desc = "Selection (cwd)",
},
{
"<leader>uC",
Util.telescope("colorscheme", { enable_preview = true }),
desc = "Colorscheme with preview",
},
{
"<leader>ssa",
Util.telescope("lsp_document_symbols", {
symbols = {
"Class",
"Function",
"Method",
"Constructor",
"Interface",
"Module",
"Struct",
"Trait",
"Field",
"Property",
},
}),
desc = "All",
},
{
"<leader>ssc",
Util.telescope("lsp_document_symbols", {
symbols = {
"Class",
},
}),
desc = "Class",
},
{
"<leader>ssf",
Util.telescope("lsp_document_symbols", {
symbols = {
"Function",
},
}),
desc = "Function",
},
{
"<leader>ssm",
Util.telescope("lsp_document_symbols", {
symbols = {
"Method",
},
}),
desc = "Method",
},
{
"<leader>ssC",
Util.telescope("lsp_document_symbols", {
symbols = {
"Constructor",
},
}),
desc = "Constructor",
},
{
"<leader>ssi",
Util.telescope("lsp_document_symbols", {
symbols = {
"Interface",
},
}),
desc = "Interface",
},
{
"<leader>ssM",
Util.telescope("lsp_document_symbols", {
symbols = {
"Module",
},
}),
desc = "Module",
},
{
"<leader>sss",
Util.telescope("lsp_document_symbols", {
symbols = {
"Struct",
},
}),
desc = "Struct",
},
{
"<leader>sst",
Util.telescope("lsp_document_symbols", {
symbols = {
"Trait",
},
}),
desc = "Trait",
},
{
"<leader>ssF",
Util.telescope("lsp_document_symbols", {
symbols = {
"Field",
},
}),
desc = "Field",
},
{
"<leader>ssp",
Util.telescope("lsp_document_symbols", {
symbols = {
"Property",
},
}),
desc = "Property",
},
{
"<leader>ssv",
Util.telescope("lsp_document_symbols", {
symbols = {
"Variable",
"Parameter",
},
}),
desc = "Variable",
},
{
"<leader>sSa",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Class",
"Function",
"Method",
"Constructor",
"Interface",
"Module",
"Struct",
"Trait",
"Field",
"Property",
},
}),
desc = "All",
},
{
"<leader>sSc",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Class",
},
}),
desc = "Class",
},
{
"<leader>sSf",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Function",
},
}),
desc = "Function",
},
{
"<leader>sSm",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Method",
},
}),
desc = "Method",
},
{
"<leader>sSC",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Constructor",
},
}),
desc = "Constructor",
},
{
"<leader>sSi",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Interface",
},
}),
desc = "Interface",
},
{
"<leader>sSM",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Module",
},
}),
desc = "Module",
},
{
"<leader>sSs",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Struct",
},
}),
desc = "Struct",
},
{
"<leader>sSt",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Trait",
},
}),
desc = "Trait",
},
{
"<leader>sSF",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Field",
},
}),
desc = "Field",
},
{
"<leader>sSp",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Property",
},
}),
desc = "Property",
},
{
"<leader>sSv",
Util.telescope("lsp_dynamic_workspace_symbols", {
symbols = {
"Variable",
"Parameter",
},
}),
desc = "Variable",
},
{
"<leader>sA",
Util.telescope("treesitter"),
desc = "Treesitter Symbols",
},
},
config = function()
local actions = require("telescope.actions")
require("telescope").setup({
defaults = {
file_ignore_patterns = {
".gitignore",
"node_modules",
"build",
"dist",
"yarn.lock",
"*.git/*",
"*/tmp/*",
"Juegos/",
},
mappings = {
i = {
["<C-k>"] = actions.move_selection_previous,
["<C-j>"] = actions.move_selection_next,
["<C-q>"] = actions.send_selected_to_qflist + actions.open_qflist,
},
},
},
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,
},
}