local packer = nil vim.lsp.set_log_level("debug") local function init() if packer == nil then packer = require 'packer' packer.init { disable_commands = true } end local use = packer.use packer.reset() -- Packer can manage itself use 'wbthomason/packer.nvim' -- nvim-mapper to explore mappings use { "lazytanuki/nvim-mapper", config = function() require("nvim-mapper").setup {} end, before = "telescope.nvim" } -- telescope.nvim use { 'nvim-telescope/telescope.nvim', requires = { { 'nvim-lua/popup.nvim' }, { 'nvim-lua/plenary.nvim' } }, config = function() require("telescope").load_extension("mapper") end } -- Highlight use { 'nvim-treesitter/nvim-treesitter', requires = { 'nvim-treesitter/nvim-treesitter-refactor', 'nvim-treesitter/nvim-treesitter-textobjects', }, run = ':TSUpdate', } -- Colortheme -- use 'rktjmp/lush.nvim' -- use 'alaric/nortia.nvim' -- use 'morhetz/gruvbox' -- use 'vim-airline/vim-airline' -- use 'vim-airline/vim-airline-themes' -- use 'projekt0n/github-nvim-theme' -- use 'folke/tokyonight.nvim' use 'savq/melange' use { 'nvim-lualine/lualine.nvim', requires = { 'kyazdani42/nvim-web-devicons', opt = true } } -- Coc use { 'neoclide/coc.nvim', branch = 'master', run = 'yarn install --frozen-lockfile', } -- Wrapping/delimiters use 'andymass/vim-matchup' -- use 'machakann/vim-sandwich' -- Undo tree use 'mbbill/undotree' -- LSP stuff use 'neovim/nvim-lspconfig' -- Split maximizer use 'szw/vim-maximizer' -- Auto pair use 'jiangmiao/auto-pairs' -- Nginx syntax use 'chr4/nginx.vim' -- Zig syntax use 'ziglang/zig.vim' -- Black, python formatter use 'psf/black' -- Autotag completer use 'windwp/nvim-ts-autotag' end local plugins = setmetatable({}, { __index = function(_, key) init() return packer[key] end, }) return plugins