return { { 'echasnovski/mini.nvim', version = '*' }, { "https://codeberg.org/esensar/nvim-dev-container", dependencies = "nvim-treesitter/nvim-treesitter", opts = { autocommands = { init = true, clean = true, update = true, }, }, }, -- Theming { "catppuccin/nvim", name = "catppuccin", priority = 1000 }, { "LazyVim/LazyVim", opts = { colorscheme = "catppuccin-mocha", }, }, -- change trouble config { "folke/trouble.nvim", -- opts will be merged with the parent spec opts = { use_diagnostic_signs = true }, }, -- disable trouble -- { "folke/trouble.nvim", enabled = false }, -- override nvim-cmp and add cmp-emoji { "hrsh7th/nvim-cmp", dependencies = { "hrsh7th/cmp-emoji" }, opts = { sources = { { name = "emoji" } }, } }, -- change some telescope options and a keymap to browse plugin files { "nvim-telescope/telescope.nvim", keys = { -- add a keymap to browse plugin files -- stylua: ignore { "fp", function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end, desc = "Find Plugin File", }, }, -- change some options opts = { defaults = { layout_strategy = "horizontal", layout_config = { prompt_position = "top" }, sorting_strategy = "ascending", winblend = 0, }, }, }, -- add pyright to lspconfig { "neovim/nvim-lspconfig", ---@class PluginLspOpts opts = { servers = { pyright = {}, -- eslint = {}, volar = {}, --tsserver = { -- enabled = true, -- opts = { -- init_options = { -- plugins = { -- { -- name = '@vue/typescript-plugin', -- location = vim.fn.stdpath 'data' .. -- '/mason/packages/vue-language-server/node_modules/@vue/language-server', -- languages = { 'vue' }, -- }, -- }, -- }, -- filetypes = { "typescript", "javascript", "javascriptreact", "typescriptreact", "vue" } -- }, --}, --ts_ls = { -- enabled = true, -- opts = { -- init_options = { -- plugins = { -- { -- name = '@vue/typescript-plugin', -- location = vim.fn.stdpath 'data' .. -- '/mason/packages/vue-language-server/node_modules/@vue/language-server', -- languages = { 'vue' }, -- }, -- }, -- }, -- filetypes = { "typescript", "javascript", "javascriptreact", "typescriptreact", "vue" } -- }, --}, }, }, }, -- add more treesitter parsers { "nvim-treesitter/nvim-treesitter", opts = { ensure_installed = { "bash", "html", "javascript", "json", "lua", "markdown", "markdown_inline", "python", "query", "regex", "tsx", "typescript", "vim", "yaml", }, }, }, -- since `vim.tbl_deep_extend`, can only merge tables and not lists, the code above -- would overwrite `ensure_installed` with the new value. -- If you'd rather extend the default config, use the code below instead: { "nvim-treesitter/nvim-treesitter", opts = function(_, opts) -- add tsx and treesitter vim.list_extend(opts.ensure_installed, { "tsx", "typescript", }) end, }, -- the opts function can also be used to change the default opts: { "nvim-lualine/lualine.nvim", event = "VeryLazy", opts = function(_, opts) table.insert(opts.sections.lualine_x, { function() return "😄" end, }) end, }, -- or you can return new options to override all the defaults { "nvim-lualine/lualine.nvim", event = "VeryLazy", opts = function() return { --[[add your custom lualine config here]] } end, }, -- add any tools you want to have installed below -- Install tools for python testing { "nvim-neotest/neotest-python", }, { "nvim-neotest/neotest-vim-test", }, { "nvim-neotest/neotest-python", }, { "nvim-neotest/neotest", dependencies = { "nvim-neotest/neotest-python", "nvim-neotest/neotest-vim-test", "vim-test/vim-test", "nvim-neotest/nvim-nio", "nvim-lua/plenary.nvim", "antoinemadec/FixCursorHold.nvim", "nvim-treesitter/nvim-treesitter", }, opts = { adapters = { "neotest-python", "neotest-plenary", "neotest-vim-test", }, }, }, }