return { { "neovim/nvim-lspconfig", dependencies = { "williamboman/mason.nvim", "williamboman/mason-lspconfig.nvim", "j-hui/fidget.nvim", "folke/neodev.nvim", }, }, { "VidocqH/lsp-lens.nvim", opts = {}, }, { "j-hui/fidget.nvim", dependencies = { "neovim/nvim-lspconfig", }, }, { "SmiteshP/nvim-navic", dependencies = {"neovim/nvim-lspconfig"}, opts = {highlight = true}, }, { "ray-x/lsp_signature.nvim", event = "BufRead", config = function() require"lsp_signature".on_attach() end, }, { "hrsh7th/nvim-cmp", dependencies = { "hrsh7th/cmp-nvim-lsp", "L3MON4D3/LuaSnip", "saadparwaiz1/cmp_luasnip", "hrsh7th/cmp-nvim-lua", "hrsh7th/cmp-buffer", "hrsh7th/cmp-path", "rafamadriz/friendly-snippets" }, }, { "nvimtools/none-ls.nvim" }, { "jinzhongjia/LspUI.nvim", branch = "legacy", config = function() require("LspUI").setup({ prompt = false }) end }, -- syntax highlighting { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate" }, 'nvim-treesitter/nvim-treesitter-context', { "nvim-treesitter/nvim-treesitter-textobjects", dependencies = {"nvim-treesitter"}, }, "nvim-treesitter/playground", -- fzf Telescope { "nvim-telescope/telescope.nvim", branch = "0.1.x", dependencies = { "nvim-lua/plenary.nvim" } }, { "nvim-telescope/telescope-fzf-native.nvim", build = "make", }, -- debugging "mfussenegger/nvim-dap", "jay-babu/mason-nvim-dap.nvim", { "rcarriga/nvim-dap-ui", tag = "v4.0.0", dependencies = { "mfussenegger/nvim-dap" }, }, {"theHamsta/nvim-dap-virtual-text", opts = {}}, "nvim-telescope/telescope-dap.nvim", -- git "lewis6991/gitsigns.nvim", "lvimuser/lsp-inlayhints.nvim", "echasnovski/mini.nvim", {'kazhala/close-buffers.nvim', config = true}, { 'anuvyklack/pretty-fold.nvim', opts = { keep_indentation = true, fill_char = '━', sections = { left = { '━ ', function() return string.rep('*', vim.v.foldlevel) end, ' ━┫', 'content', '┣' }, right = { '┫ ', 'number_of_folded_lines', ': ', 'percentage', ' ┣━━', } } } }, "editorconfig/editorconfig-vim", {"nacro90/numb.nvim", opts = {}}, {"kylechui/nvim-surround", opts={}}, { "phaazon/hop.nvim", event = "BufRead", opts = {} }, { "ThePrimeagen/harpoon", branch = "harpoon2", dependencies = { "nvim-lua/plenary.nvim" }, init = function () local harpoon = require("harpoon") harpoon:setup() end }, { "sQVe/sort.nvim", opts = {} }, -- misc editing { "ziontee113/color-picker.nvim", opts = { ["border"] = "rounded", }, }, "lambdalisue/suda.vim", "tpope/vim-sleuth", "mbbill/undotree", {"windwp/nvim-autopairs", opts = {}}, { "mg979/vim-visual-multi", config = function () vim.cmd([[ let g:VM_leader='m' let g:VM_maps['Find Under'] = '' ]]) end }, -- mics visuals -- { -- "HiPhish/nvim-ts-rainbow2", -- }, { "windwp/nvim-ts-autotag", opts = { filetypes = {'html', 'javascript', 'typescript', 'javascriptreact', 'typescriptreact', 'svelte', 'vue', 'tsx', 'jsx', 'rescript', 'xml', 'php', 'markdown', 'astro', 'glimmer', 'handlebars', 'hbs', "rust" }, }, }, { "rcarriga/nvim-notify", config = function () vim.notify = require("notify") end }, { "kevinhwang91/nvim-bqf", event = { "BufRead", "BufNew" }, opts = { auto_enable = true, preview = { win_height = 12, win_vheight = 12, delay_syntax = 80, border_chars = { "┃", "┃", "━", "━", "┏", "┓", "┗", "┛", "█" }, }, func_map = { vsplit = "", ptogglemode = "z,", stoggleup = "", }, filter = { fzf = { action_for = { ["ctrl-s"] = "split" }, extra_opts = { "--bind", "ctrl-o:toggle-all", "--prompt", "> " }, }, }, } }, "nvim-tree/nvim-web-devicons", { "lukas-reineke/indent-blankline.nvim", -- opts = { -- char = '┊', -- show_trailing_blankline_indent = false, -- show_end_of_line = true, -- show_current_context = true, -- show_current_context_start = true, -- } init = function() require("ibl").setup({ indent = { tab_char = "│", char = "┊", }, }) end, }, { "folke/which-key.nvim", config = function() local wk = require("which-key") wk.setup { popup_mappings = { scroll_down = "", scroll_up = "", }, window = { border = "single", }, } end }, "rebelot/heirline.nvim", { "akinsho/toggleterm.nvim", version = "*", opts = { direction = "float", float_opts = { border = "curved" }, } }, { "karb94/neoscroll.nvim", event = "WinScrolled", opts = { mappings = {"", "", "", "", "", "", "zt", "zz", "zb"}, hide_cursor = true, stop_eof = true, use_local_scrolloff = false, respect_scrolloff = false, cursor_scrolls_alone = true, easing_function = nil, pre_hook = nil, post_hook = nil, } }, { "folke/todo-comments.nvim", event = "BufRead", }, {'numToStr/Comment.nvim', opts = {}}, { "SmiteshP/nvim-navbuddy", dependencies = { "neovim/nvim-lspconfig", "SmiteshP/nvim-navic", "MunifTanjim/nui.nvim", "numToStr/Comment.nvim", "nvim-telescope/telescope.nvim" }, opts = { window = {border="rounded",}, } }, { "gelguy/wilder.nvim", config = function() vim.cmd('call wilder#setup({"modes": [":", "/", "?"]})') vim.cmd('call wilder#set_option("renderer", wilder#popupmenu_renderer({"highlighter": wilder#basic_highlighter(), "left": [ " ", wilder#popupmenu_devicons(), ], "right": [ " ", wilder#popupmenu_scrollbar(), ], "pumblend": 20}))') vim.cmd('call wilder#set_option("renderer", wilder#popupmenu_renderer(wilder#popupmenu_border_theme({"highlighter": wilder#basic_highlighter(), "min_width": "100%", "min_height": "50%", "reverse": 0, "highlights": {"border": "Normal",},"border": "rounded"})))') end, }, { "nvim-neo-tree/neo-tree.nvim", branch = "v2.x", dependencies = { "nvim-lua/plenary.nvim", "nvim-tree/nvim-web-devicons", "MunifTanjim/nui.nvim", }, }, {"tpope/vim-dadbod"}, { "kristijanhusak/vim-dadbod-ui", dependencies = { { 'tpope/vim-dadbod', lazy = true }, { 'kristijanhusak/vim-dadbod-completion', ft = { 'sql', 'mysql', 'plsql' }, lazy = true }, }, cmd = { 'DBUI', 'DBUIToggle', 'DBUIAddConnection', 'DBUIFindBuffer', }, init = function() vim.g.db_ui_use_nerd_fonts = 1 end }, -- lenguage specific -- f# {"ionide/Ionide-vim"}, -- go {"joerdav/templ.vim"}, { "ray-x/go.nvim", dependencies = { -- optional packages "ray-x/guihua.lua", "neovim/nvim-lspconfig", "nvim-treesitter/nvim-treesitter", }, config = function() require("go").setup() end, event = {"CmdlineEnter"}, ft = {"go", 'gomod'}, build = ':lua require("go.install").update_all_sync()' -- if you need to install/update all binaries }, -- csv 'cameron-wags/rainbow_csv.nvim', -- rust {"racer-rust/vim-racer", config = function () vim.cmd [[ let g:racer_cmd = "/usr/bin/racer"]] end }, "simrat39/rust-tools.nvim", { "saecki/crates.nvim", tag = "v0.3.0", dependencies = { "nvim-lua/plenary.nvim" }, }, -- slint {"slint-ui/vim-slint"}, -- zig "ziglang/zig.vim", -- glsl "tikhomirov/vim-glsl", -- java "mfussenegger/nvim-jdtls", -- themes "xiyaowong/transparent.nvim", "savq/melange-nvim", "EdenEast/nightfox.nvim", "luisiacc/gruvbox-baby", "tiagovla/tokyodark.nvim", "cpea2506/one_monokai.nvim", "yazeed1s/minimal.nvim", "kvrohit/mellow.nvim", "yazeed1s/oh-lucy.nvim", "sainnhe/sonokai", "rebelot/kanagawa.nvim", { "catppuccin/nvim", priority = 1000, name = "catppuccin", config = function() require("catppuccin").setup{ flavor = "mocha", navic = { enabled = true, custom_bg = "NONE", }, indent_blankline = { enabled = true, colored_indent_levels = true, }, dap = { enabled = true, enable_ui = true, }, integrations = { hop = true, cmp = true, telescope = true, which_key = true, }, color_overrides = { -- macchiato = { -- base = "#000000", -- mantle = "#000000", -- crust = "#000000" -- } } } end }, { "loctvl842/monokai-pro.nvim", opts = { transparent_background = false, terminal_colors = false, filter = "spectrum", background_clear = { "toggleterm", "telescope", "which-key", "neo-tree" }, }, }, }