-- Bootstrap lazy.nvim local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not (vim.uv or vim.loop).fs_stat(lazypath) then local lazyrepo = "https://github.com/folke/lazy.nvim.git" local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath }) if vim.v.shell_error ~= 0 then vim.api.nvim_echo({ { "Failed to clone lazy.nvim:\n", "ErrorMsg" }, { out, "WarningMsg" }, { "\nPress any key to exit..." }, }, true, {}) vim.fn.getchar() os.exit(1) end end vim.opt.rtp:prepend(lazypath) vim.g.mapleader = "," local plugin_specs = { { "nvim-treesitter/nvim-treesitter", build = ":TSUpdate", event = "VeryLazy", }, { "neovim/nvim-lspconfig", event = { "BufRead", "BufNewFile" }, config = function() require("config.lsp") end, }, { "hrsh7th/nvim-cmp", event = 'VeryLazy', dependencies = { "hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-path", "hrsh7th/cmp-buffer", "hrsh7th/cmp-omni", "hrsh7th/cmp-cmdline", "quangnguyen30192/cmp-nvim-ultisnips", }, config = function() require("config.nvim-cmp") end, }, { "SirVer/ultisnips", dependencies = { "honza/vim-snippets", }, event = "InsertEnter" }, { "stevearc/dressing.nvim", event = "VeryLazy" }, { "nvim-tree/nvim-tree.lua", lazy = false, dependencies = { "nvim-tree/nvim-web-devicons", }, }, { "ibhagwan/fzf-lua", dependencies = { "nvim-tree/nvim-web-devicons" }, config = function() require("config.fzf") end, }, { "windwp/nvim-autopairs", event = "InsertEnter", config = true }, { "tpope/vim-commentary", event = "VeryLazy" }, { "folke/tokyonight.nvim", lazy = false, priority = 1000 }, { "lewis6991/gitsigns.nvim"}, { "nvim-lualine/lualine.nvim", dependencies = { "nvim-tree/nvim-web-devicons" } }, } require("lazy").setup({ spec = plugin_specs, rocks = { enabled = true }, })