1 local Util = require("lazyvim.util")
3 ---@type LazyPluginSpec
6 "nvim-telescope/telescope.nvim",
8 { "<leader>fF", Util.telescope("files", { cwd = false }), desc = "Find Files (cwd)" },
10 { "<leader>,", "<cmd>Telescope buffers show_all_buffers=true<cr>", desc = "Switch Buffer" },
11 { "<leader>/", Util.telescope("live_grep"), desc = "Grep (root dir)" },
12 { "<leader>:", "<cmd>Telescope command_history<cr>", desc = "Command History" },
13 { "<leader><space>", Util.telescope("files"), desc = "Find Files (root dir)" },
14 { "<leader><space>", false },
16 { "<leader>fb", "<cmd>Telescope buffers sort_lastused=true<CR>", desc = "Buffers" },
17 -- { "<leader>ff", Util.telescope("files"), desc = "Find Files (root dir)" },
18 { "<leader>ff", false }, -- fswitch
19 { "<leader>fF", Util.telescope("files", { cwd = false }), desc = "Find Files (cwd)" },
20 { "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
21 { "<leader>fR", Util.telescope("oldfiles", { cwd = vim.loop.cwd() }), desc = "Recent (cwd)" },
23 -- { "<leader>gc", "<cmd>Telescope git_commits<CR>", desc = "commits" },
24 { "<leader>gc", false },
25 -- { "<leader>gs", "<cmd>Telescope git_status<CR>", desc = "status" },
26 { "<leader>gs", false },
28 { "<leader>sa", "<cmd>Telescope autocommands<cr>", desc = "Auto Commands" },
29 { "<leader>sb", "<cmd>Telescope current_buffer_fuzzy_find<cr>", desc = "Buffer" },
30 { "<leader>sc", "<cmd>Telescope command_history<cr>", desc = "Command History" },
31 { "<leader>sC", "<cmd>Telescope commands<cr>", desc = "Commands" },
32 { "<leader>sd", "<cmd>Telescope diagnostics bufnr=0<cr>", desc = "Document diagnostics" },
33 { "<leader>sD", "<cmd>Telescope diagnostics<cr>", desc = "Workspace diagnostics" },
34 { "<leader>sg", Util.telescope("live_grep"), desc = "Grep (root dir)" },
35 { "<leader>sG", Util.telescope("live_grep", { cwd = false }), desc = "Grep (cwd)" },
36 { "<leader>sh", "<cmd>Telescope help_tags<cr>", desc = "Help Pages" },
37 { "<leader>sH", "<cmd>Telescope highlights<cr>", desc = "Search Highlight Groups" },
38 { "<leader>sk", "<cmd>Telescope keymaps<cr>", desc = "Key Maps" },
39 { "<leader>sM", "<cmd>Telescope man_pages<cr>", desc = "Man Pages" },
40 { "<leader>sm", "<cmd>Telescope marks<cr>", desc = "Jump to Mark" },
41 { "<leader>so", "<cmd>Telescope vim_options<cr>", desc = "Options" },
42 { "<leader>sR", "<cmd>Telescope resume<cr>", desc = "Resume" },
43 { "<leader>sw", Util.telescope("grep_string"), desc = "Word (root dir)" },
44 { "<leader>sW", Util.telescope("grep_string", { cwd = false }), desc = "Word (cwd)" },
45 { "<leader>uC", Util.telescope("colorscheme", { enable_preview = true }), desc = "Colorscheme with preview" },
48 -- Util.telescope("lsp_document_symbols", {
62 -- desc = "Goto Symbol",
64 { "<leader>ss", false }, -- use for snippets below
67 Util.telescope("lsp_dynamic_workspace_symbols", {
81 desc = "Goto Symbol (Workspace)",
86 "benfowler/telescope-luasnip.nvim",
91 require("telescope").load_extension("luasnip")
93 keys = { { "<leader>ss", "<cmd>Telescope luasnip<cr>", desc = "Snippets" } },
100 -- TODO: review these
102 follow_current_file = {
108 local NeoTree = function(args)
110 require("neo-tree.command").execute(args)
114 { "<leader>fe", NeoTree({ toggle = true, dir = vim.loop.cwd() }) },