vim.g.did_load_filetypes = 1 vim.g.mapleader = " " vim.g.maplocalleader = "," vim.o.termguicolors = true local install_path = vim.fn.stdpath("data") .. "/site/pack/packer/opt/packer.nvim" if vim.fn.empty(vim.fn.glob(install_path)) > 0 then vim.fn.execute("!git clone --depth 1 https://github.com/wbthomason/packer.nvim " .. install_path) end vim.api.nvim_command([[packadd packer.nvim]]) local status_ok, packer = pcall(require, "packer") if not status_ok then return end packer.init({ display = { open_fn = function() return require("packer.util").float({ border = "single" }) end, }, }) return packer.startup({ function(use) use({ "wbthomason/packer.nvim", opt = true }) use({ "lewis6991/impatient.nvim", config = function() require("impatient") end, }) use("nvim-lua/plenary.nvim") use({ "ellisonleao/gruvbox.nvim" }) use({ "kyazdani42/nvim-web-devicons", after = "gruvbox.nvim", opt = true, config = function() require("plugins.webdevicons_nvim") end, }) use({ "nvim-treesitter/nvim-treesitter", event = "CursorHold", run = ":TSUpdate", config = function() require("plugins.treesitter") end, }) use({ "norcalli/nvim-colorizer.lua", event = "CursorHold", config = function() require("plugins.colorizer") end, }) use({ "tpope/vim-fugitive", opt = true, cmd = { "Git", "Gdiff", "Gblame", "Glog", "Git mergetool" } }) use({ "lewis6991/gitsigns.nvim", event = { "BufRead" }, config = function() require("plugins.gitsigns_nvim") end, }) use({ "nvim-telescope/telescope-fzf-native.nvim", run = "make" }) use({ "nvim-telescope/telescope-file-browser.nvim" }) use({ "nvim-telescope/telescope.nvim", event = "CursorHold", config = function() require("plugins.telescope") end, }) use({ "numToStr/Comment.nvim", event = "BufRead", config = function() require("Comment").setup() end, }) use({ "neovim/nvim-lspconfig", event = "BufRead", config = function() require("plugins.lsp.lsp-config") end, requires = { "ray-x/lsp_signature.nvim", "hrsh7th/cmp-nvim-lsp" }, }) use({ "jose-elias-alvarez/null-ls.nvim", after = "nvim-lspconfig", config = function() require("plugins.lsp.null-ls") end, }) use({ { "hrsh7th/nvim-cmp", event = "InsertEnter", config = function() require("plugins.lsp.nvim-cmp") end, requires = { { "L3MON4D3/LuaSnip", event = "CursorHold", config = function() require("plugins.lsp.luasnip") end, requires = { "rafamadriz/friendly-snippets" }, }, }, }, { "hrsh7th/cmp-path", after = "nvim-cmp" }, { "hrsh7th/cmp-buffer", after = "nvim-cmp" }, { "f3fora/cmp-spell", after = "nvim-cmp" }, { "hrsh7th/cmp-nvim-lua", after = "nvim-cmp" }, { "saadparwaiz1/cmp_luasnip", after = "LuaSnip" }, }) use({ "windwp/nvim-autopairs", event = "InsertCharPre", after = "nvim-cmp", config = function() require("plugins.autopairs") end, }) use({ "nathom/filetype.nvim" }) end, })