-local Util = require("lazyvim.util")
-
---@type LazyPluginSpec
return {
{
"nvim-telescope/telescope.nvim",
keys = {
- { "<leader>fF", Util.telescope("files", { cwd = false }), desc = "Find Files (cwd)" },
+ { "<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>/", Util.telescope("live_grep"), desc = "Grep (root dir)" },
+ { "<leader>/", LazyVim.pick("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)" },
+ { "<leader><space>", LazyVim.pick("files"), desc = "Find Files (root dir)" },
{ "<leader><space>", false },
-- find
- { "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Buffers" },
- -- { "<leader>ff", Util.telescope("files"), desc = "Find Files (root dir)" },
+ { "<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", Util.telescope("files", { cwd = false }), desc = "Find Files (cwd)" },
+ { "<leader>fF", LazyVim.pick("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)" },
+ { "<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>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>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 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", Util.telescope("grep_string"), desc = "Word (root dir)" },
- { "<leader>sW", Util.telescope("grep_string", { cwd = false }), desc = "Word (cwd)" },
- { "<leader>uC", Util.telescope("colorscheme", { enable_preview = true }), desc = "Colorscheme with preview" },
+ { "<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",
- -- Util.telescope("lsp_document_symbols", {
+ -- LazyVim.pick("lsp_document_symbols", {
-- symbols = {
-- "Class",
-- "Function",
{ "<leader>ss", false }, -- use for snippets below
{
"<leader>sS",
- Util.telescope("lsp_dynamic_workspace_symbols", {
+ LazyVim.pick("lsp_dynamic_workspace_symbols", {
symbols = {
"Class",
"Function",
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"},
+ },
+ { "folke/trouble.nvim",
+ cmd = { "Trouble" },
+ opts = {
+ keys = {
+ ["<space><space>"] = "fold_toggle",
+ },
+ modes = {
+ lsp = {
+ win = { position = "right" },
+ },
+ },
+ },
+ keys = {
+ { "<leader>xx", "<cmd>Trouble diagnostics toggle<cr>", desc = "Diagnostics (Trouble)" },
+ { "<leader>xX", "<cmd>Trouble diagnostics toggle filter.buf=0<cr>", desc = "Buffer Diagnostics (Trouble)" },
+ { "<leader>cs", "<cmd>Trouble symbols toggle<cr>", desc = "Symbols (Trouble)" },
+ { "<leader>cS", "<cmd>Trouble lsp toggle<cr>", desc = "LSP references/definitions/... (Trouble)" },
+ { "<leader>xL", "<cmd>Trouble loclist toggle<cr>", desc = "Location List (Trouble)" },
+ { "<leader>xQ", "<cmd>Trouble qflist toggle<cr>", desc = "Quickfix List (Trouble)" },
+ {
+ "[q",
+ function()
+ if require("trouble").is_open() then
+ require("trouble").prev({ skip_groups = true, jump = true })
+ else
+ local ok, err = pcall(vim.cmd.cprev)
+ if not ok then
+ vim.notify(err, vim.log.levels.ERROR)
+ end
+ end
+ end,
+ desc = "Previous Trouble/Quickfix Item",
+ },
+ {
+ "]q",
+ function()
+ if require("trouble").is_open() then
+ require("trouble").next({ skip_groups = true, jump = true })
+ else
+ local ok, err = pcall(vim.cmd.cnext)
+ if not ok then
+ vim.notify(err, vim.log.levels.ERROR)
+ end
+ end
+ end,
+ desc = "Next Trouble/Quickfix Item",
+ },
+ },
+ },
+ { "folke/todo-comments.nvim",
+ cmd = { "TodoTrouble", "TodoTelescope" },
+ event = "LazyFile",
+ -- stylua: ignore
+ keys = {
+ { "]t", function() require("todo-comments").jump_next() end, desc = "Next Todo Comment" },
+ { "[t", function() require("todo-comments").jump_prev() end, desc = "Previous Todo Comment" },
+ { "<leader>xt", "<cmd>Trouble todo toggle<cr>", desc = "Todo (Trouble)" },
+ { "<leader>xT", "<cmd>Trouble todo toggle filter = {tag = {TODO,FIX,FIXME}}<cr>", desc = "Todo/Fix/Fixme (Trouble)" },
+ { "<leader>st", "<cmd>TodoTelescope<cr>", desc = "Todo" },
+ { "<leader>sT", "<cmd>TodoTelescope keywords=TODO,FIX,FIXME<cr>", desc = "Todo/Fix/Fixme" },
+ },
+ },
{
"neo-tree.nvim",
+ enabled = false,
lazy = false,
opts = {
filesystem = {