return { --harpoon { "ThePrimeagen/harpoon", branch = "harpoon2", keys = { { "", function() require("harpoon"):list():select(1) end, desc = "buffer j", }, { "", function() require("harpoon"):list():select(2) end, desc = "buffer k", }, { "", function() require("harpoon"):list():select(3) end, desc = "buffer l", }, { "", function() require("harpoon"):list():select(4) end, desc = "buffer ;", }, }, }, -- better escape { "max397574/better-escape.nvim", config = function() require("better_escape").setup({ mappings = { -- i for insert, other modes are the first letter too i = { -- map kj to exit insert mode k = { j = "", }, -- map jk and jj to exit insert mode j = { k = "", j = "", }, -- disable jj j = { j = false, }, }, }, }) end, }, -- Navigator { "numToStr/Navigator.nvim", event = "VeryLazy", config = function() require("Navigator").setup({ auto_save = "current", disable_on_zoom = false, mux = "auto", }) end, }, -- float terminal { "akinsho/toggleterm.nvim", cmd = { "ToggleTerm" }, version = "v2.*", config = function() require("toggleterm").setup({ size = 10, open_mapping = [[]], hide_numbers = true, shade_filetypes = {}, shade_terminals = true, shading_factor = "2", start_in_insert = true, insert_mappings = true, terminal_mappings = true, persist_size = true, direction = "float", -- Use 'float' for floating terminal windows close_on_exit = true, shell = vim.o.shell, float_opts = { border = "curved", -- or 'single', 'double', 'shadow', etc. winblend = 0, -- Set to 0 for full transparency highlights = { border = "Normal", background = "Normal", }, }, }) end, }, -- smooth scrolling { "karb94/neoscroll.nvim", opts = {}, }, -- discord presence -- { -- "vyfor/cord.nvim", -- event = "VeryLazy", -- }, { "rachartier/tiny-code-action.nvim", dependencies = { { "folke/snacks.nvim", opts = { terminal = {}, }, }, }, event = "LspAttach", opts = {}, vim.keymap.set({ "n", "x" }, "ca", function() require("tiny-code-action").code_action() end, { noremap = true, silent = true }), }, -- uv { "benomahony/uv.nvim", ft = "python", event = "BufReadPre", opts = { picker_integration = true, keymaps = { prefix = "u", -- Main prefix for uv commands commands = true, -- Show uv commands menu (x) run_file = true, -- Run current file (xr) run_selection = true, -- Run selected code (xs) run_function = true, -- Run function (xf) venv = true, -- Environment management (xe) init = true, -- Initialize uv project (xi) add = true, -- Add a package (xa) remove = true, -- Remove a package (xd) sync = true, -- Sync packages (xc) sync_all = true, -- Sync all packages, extras and groups (xC) }, }, }, { "wakatime/vim-wakatime", event = "VimEnter", lazy = false }, -- { -- "m4xshen/hardtime.nvim", -- lazy = false, -- opts = {}, -- }, }