return { { "nvzone/volt", lazy = true }, { "nvzone/menu", lazy = true }, { "nvzone/minty", cmd = { "Shades", "Huefy" } }, { "snacks.nvim", opts = { dashboard = { preset = { header = [[ I use ██████ █████ █████ █████ ███ ░░██████ ░░███ ░░███ ░░███ ░░░ ░███░███ ░███ ██████ ██████ ░███ ░███ ████ █████████████ ░███░░███░███ ███░░███ ███░░███ ░███ ░███ ░░███ ░░███░░███░░███ ░███ ░░██████ ░███████ ░███ ░███ ░░███ ███ ░███ ░███ ░███ ░███ ░███ ░░█████ ░███░░░ ░███ ░███ ░░░█████░ ░███ ░███ ░███ ░███ █████ ░░█████░░██████ ░░██████ ░░███ █████ █████░███ █████ ░░░░░ ░░░░░ ░░░░░░ ░░░░░░ ░░░ ░░░░░ ░░░░░ ░░░ ░░░░░ btw ]], }, }, terminal = { win = { keys = { -- nav_h = { "", [[h]], desc = "Go to Left Window", mode = "t" }, nav_k = { "", [[k]], desc = "Go to Upper Window", mode = "t" }, nav_j = { "", [[j]], desc = "Go to Lower Window", mode = "t" }, -- nav_l = { "", [[l]], desc = "Go to Right Window", mode = "t" }, -- Using C-m cause the enter key to not work in terminal }, }, }, }, }, { "nvim-neo-tree/neo-tree.nvim", branch = "v3.x", cmd = "Neotree", keys = { { "e", false }, { "E", false }, { "", function() require("neo-tree.command").execute({ toggle = true, dir = vim.fn.getcwd() }) end, desc = "Explorer NeoTree (cwd)", }, }, opts = { close_if_last_window = true, window = { width = 30, mappings = { [""] = "none", ["j"] = "none", ["k"] = "none", ["l"] = "none", ["m"] = "none", }, }, }, }, { "Bekaboo/dropbar.nvim", dependencies = { "nvim-telescope/telescope-fzf-native.nvim", build = "make", }, config = function() local dropbar_api = require("dropbar.api") vim.keymap.set("n", ";", dropbar_api.pick, { desc = "Pick symbols in winbar" }) vim.keymap.set("n", "[;", dropbar_api.goto_context_start, { desc = "Go to start of current context" }) vim.keymap.set("n", "];", dropbar_api.select_next_context, { desc = "Select next context" }) end, init = function() require("which-key").add({ { ";", name = "Pick symbols in winbar", prefix = ";", icon = { icon = "", color = "blue" } }, }) end, }, -- Hex editor { "RaafatTurki/hex.nvim", config = true, lazy = false, }, -- Auto-save { "okuuva/auto-save.nvim", event = { "InsertLeave", "TextChanged" }, opts = { noautocmd = true, }, }, -- Remember last position { "ethanholz/nvim-lastplace", event = "BufRead", config = true, }, -- Better word movement { "chrisgrieser/nvim-spider", lazy = true, }, -- Underline current word -- { -- "itchyny/vim-cursorword", -- event = { "BufEnter", "BufNewFile" }, -- }, -- Full visual line { "0xAdk/full_visual_line.nvim", keys = "V", opts = {}, }, { "saghen/blink.cmp", opts = { keymap = { [""] = { "select_next", "fallback" }, [""] = { "select_prev", "fallback" }, }, }, }, -- { -- "csessh/stopinsert.nvim", -- opts = { -- idle_time_ms = 15000, -- }, -- }, -- Minimap -- { -- "gorbit99/codewindow.nvim", -- lazy = false, -- keys = { -- { -- "m", -- function() -- require("codewindow").toggle_minimap() -- end, -- desc = "Toggle Minimap", -- }, -- }, -- opts = { -- z_index = 50, -- auto_enable = true, -- minimap_width = 10, -- screen_bounds = "background", -- window_border = "none", -- }, -- }, -- Split or join code blocks { "Wansmer/treesj", dependencies = { "nvim-treesitter/nvim-treesitter" }, opts = { use_default_keymaps = false }, keys = { { "n", "A", function() require("treesj").toggle() end, desc = "Toggle split/join block", }, }, }, { "brenton-leighton/multiple-cursors.nvim", version = "*", opts = {}, keys = { { "", "MultipleCursorsAddUp", mode = { "i", "x" }, desc = "Add cursor and move up" }, { "", "MultipleCursorsAddDown", mode = { "i", "x" }, desc = "Add cursor and move down" }, { "", "MultipleCursorsMouseAddDelete", mode = { "n", "v", "i" }, desc = "Add or remove cursor", }, { "Ca", "MultipleCursorsAddMatches", mode = { "n", "v", "x" }, desc = "Add cursors to cword" }, { "CA", "MultipleCursorsAddMatchesV", mode = { "n", "v", "x" }, desc = "Add cursors to cword in previous area", }, { "Cd", "MultipleCursorsAddJumpNextMatch", mode = { "n", "v", "x" }, desc = "Add cursor and jump to next cword", }, { "CD", "MultipleCursorsJumpNextMatch", mode = { "n", "v", "x" }, desc = "Jump to next cword" }, { "Cl", "MultipleCursorsLock", mode = { "n", "v", "x" }, desc = "Lock virtual cursors" }, }, init = function() require("which-key").add({ { "C", name = "cursor", prefix = "C", icon = { icon = "󰗧", color = "cyan" } }, }) end, }, { "m4xshen/hardtime.nvim", dependencies = { "MunifTanjim/nui.nvim" }, opts = {}, }, { "2kabhishek/nerdy.nvim", cmd = "Nerdy", }, { "ThePrimeagen/vim-be-good", }, { "azratul/live-share.nvim", dependencies = { "jbyuki/instant.nvim", }, config = function() vim.g.instant_username = "king_terry" require("live-share").setup({ port_internal = 8765, max_attempts = 40, -- 10 seconds service = "serveo.net", }) end, }, }