local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then -- bootstrap lazy.nvim -- stylua: ignore vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) end vim.opt.rtp:prepend(vim.env.LAZY or lazypath) require("lazy").setup({ spec = { -- add LazyVim and import its plugins { "LazyVim/LazyVim", import = "lazyvim.plugins" }, -- import any extras modules here -- coding { import = "lazyvim.plugins.extras.coding.yanky" }, -- editor {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.editor.aerial" }, {{ end -}} { import = "lazyvim.plugins.extras.editor.leap" }, { import = "lazyvim.plugins.extras.editor.navic" }, -- formatting { import = "lazyvim.plugins.extras.formatting.prettier" }, -- lang {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.lang.go" }, {{ end -}} { import = "lazyvim.plugins.extras.lang.json" }, { import = "lazyvim.plugins.extras.lang.markdown" }, { import = "lazyvim.plugins.extras.lang.python" }, { import = "lazyvim.plugins.extras.lang.ruby" }, {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.lang.typescript" }, {{ end -}} { import = "lazyvim.plugins.extras.lang.yaml" }, -- linting {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.linting.eslint" }, {{ end -}} -- lsp { import = "lazyvim.plugins.extras.lsp.none-ls" }, -- test {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.test.core" }, {{ end -}} -- ui {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.ui.mini-animate" }, {{ end -}} -- util { import = "lazyvim.plugins.extras.util.dot" }, { import = "lazyvim.plugins.extras.util.mini-hipatterns" }, {{ if ne .chezmoi.hostname "marleycentre" -}} { import = "lazyvim.plugins.extras.util.project" }, {{ end -}} -- import/override with your plugins { import = "plugins" }, }, defaults = { -- By default, only LazyVim plugins will be lazy-loaded. Your custom plugins will load during startup. -- If you know what you're doing, you can set this to `true` to have all your custom plugins lazy-loaded by default. lazy = false, -- It's recommended to leave version=false for now, since a lot the plugin that support versioning, -- have outdated releases, which may break your Neovim install. version = false, -- always use the latest git commit -- version = "*", -- try installing the latest stable version for plugins that support semver }, install = { colorscheme = { "catppuccin-macchiato" } }, checker = { enabled = true }, -- automatically check for plugin updates performance = { rtp = { -- disable some rtp plugins disabled_plugins = { "gzip", -- "matchit", -- "matchparen", -- "netrwPlugin", "tarPlugin", "tohtml", "tutor", "zipPlugin", }, }, }, })