]> git.rmz.io Git - dotfiles.git/blobdiff - nvim/lua/plugins/editor.lua
nvim: replace Util.telescope with LazyVim.pick
[dotfiles.git] / nvim / lua / plugins / editor.lua
index 6aa38584f8995ba7e55cd8916bc0af0212b4685b..3ee014bf2d4fbdd4e898757477266f6e906614a2 100644 (file)
+---@type LazyPluginSpec
 return {
   {
     "nvim-telescope/telescope.nvim",
     keys = {
+      { "<leader>fF", LazyVim.pick("files", { cwd = false }), desc = "Find Files (cwd)" },
+      -- from lazyvim
+      { "<leader>,", "<cmd>Telescope buffers show_all_buffers=true<cr>", desc = "Switch Buffer" },
+      { "<leader>/", LazyVim.pick("live_grep"), desc = "Grep (root dir)" },
+      { "<leader>:", "<cmd>Telescope command_history<cr>", desc = "Command History" },
+      { "<leader><space>", LazyVim.pick("files"), desc = "Find Files (root dir)" },
       { "<leader><space>", false },
+      -- find
+      { "<leader>fb", "<cmd>Telescope buffers sort_lastused=true<CR>", desc = "Buffers" },
+      -- { "<leader>ff", LazyVim.pick("files"), desc = "Find Files (root dir)" },
+      { "<leader>ff", false }, -- fswitch
+      { "<leader>fF", LazyVim.pick("files", { cwd = false }), desc = "Find Files (cwd)" },
+      { "<leader>fr", "<cmd>Telescope oldfiles<cr>", desc = "Recent" },
+      { "<leader>fR", LazyVim.pick("oldfiles", { cwd = vim.loop.cwd() }), desc = "Recent (cwd)" },
+      -- git
+      -- { "<leader>gc", "<cmd>Telescope git_commits<CR>", desc = "commits" },
       { "<leader>gc", false },
+      -- { "<leader>gs", "<cmd>Telescope git_status<CR>", desc = "status" },
       { "<leader>gs", false },
+      -- search
+      { "<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", LazyVim.pick("live_grep"), desc = "Grep (root dir)" },
+      { "<leader>sG", LazyVim.pick("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>sw", LazyVim.pick("grep_string"), desc = "Word (root dir)" },
+      { "<leader>sW", LazyVim.pick("grep_string", { cwd = false }), desc = "Word (cwd)" },
+      { "<leader>uC", LazyVim.pick("colorscheme", { enable_preview = true }), desc = "Colorscheme with preview" },
+      -- {
+      --   "<leader>ss",
+      --   LazyVim.pick("lsp_document_symbols", {
+      --     symbols = {
+      --       "Class",
+      --       "Function",
+      --       "Method",
+      --       "Constructor",
+      --       "Interface",
+      --       "Module",
+      --       "Struct",
+      --       "Trait",
+      --       "Field",
+      --       "Property",
+      --     },
+      --   }),
+      --   desc = "Goto Symbol",
+      -- },
+      { "<leader>ss", false }, -- use for snippets below
+      {
+        "<leader>sS",
+        LazyVim.pick("lsp_dynamic_workspace_symbols", {
+          symbols = {
+            "Class",
+            "Function",
+            "Method",
+            "Constructor",
+            "Interface",
+            "Module",
+            "Struct",
+            "Trait",
+            "Field",
+            "Property",
+          },
+        }),
+        desc = "Goto Symbol (Workspace)",
+      },
     },
   },
+  {
+    "benfowler/telescope-luasnip.nvim",
+    dependencies = {
+      "telescope.nvim",
+    },
+    config = function()
+      require("telescope").load_extension("luasnip")
+    end,
+    keys = { { "<leader>ss", "<cmd>Telescope luasnip<cr>", desc = "Snippets" } },
+  },
+  {
+    "stevearc/oil.nvim",
+    opts = {
+      keymaps = {
+        ["g?"] = "actions.show_help",
+        ["<CR>"] = "actions.select",
+        ["<C-s>"] = "actions.select_vsplit",
+        ["<C-h>"] = false,  -- used to be actions.select_split
+        ["<C-t>"] = "actions.select_tab",
+        ["<C-p>"] = "actions.preview",
+        ["<C-c>"] = "actions.close",
+        ["<C-l>"] = false, -- used to be actions.refresh
+        ["-"] = "actions.parent",
+        ["_"] = "actions.open_cwd",
+        ["`"] = "actions.cd",
+        ["~"] = "actions.tcd",
+        ["gs"] = "actions.change_sort",
+        ["gx"] = "actions.open_external",
+        ["g."] = "actions.toggle_hidden",
+        ["g\\"] = "actions.toggle_trash",
+      },
+    },
+    dependencies = {"nvim-tree/nvim-web-devicons"},
+  },
+  {
+    "neo-tree.nvim",
+    enabled = false,
+    lazy = false,
+    opts = {
+      filesystem = {
+        -- TODO: review these
+        bind_to_cwd = false,
+        follow_current_file = {
+          enabled = false,
+        },
+      },
+    },
+    keys = function()
+      local NeoTree = function(args)
+        return function()
+          require("neo-tree.command").execute(args)
+        end
+      end
+      return {
+        { "<leader>fe", NeoTree({ toggle = true, dir = vim.loop.cwd() }) },
+      }
+    end,
+  },
 }