92 lines
2.4 KiB
Lua
92 lines
2.4 KiB
Lua
local ensure_packer = function()
|
|
local fn = vim.fn
|
|
local install_path = fn.stdpath('data')..'/site/pack/packer/start/packer.nvim'
|
|
if fn.empty(fn.glob(install_path)) > 0 then
|
|
fn.system({'git', 'clone', '--depth', '1', 'https://github.com/wbthomason/packer.nvim', install_path})
|
|
vim.cmd [[packadd packer.nvim]]
|
|
return true
|
|
end
|
|
return false
|
|
end
|
|
|
|
local packer_bootstrap = ensure_packer()
|
|
|
|
return require('packer').startup(function(use)
|
|
use 'wbthomason/packer.nvim'
|
|
use {
|
|
'williamboman/mason.nvim',
|
|
run = ':MasonUpdate' -- :MasonUpdate updates registry contents
|
|
}
|
|
-- use 'NvChad/nvim-colorizer.lua'
|
|
use 'uga-rosa/ccc.nvim'
|
|
use 'windwp/nvim-autopairs'
|
|
use 'nvim-tree/nvim-tree.lua'
|
|
use 'nvim-tree/nvim-web-devicons'
|
|
use 'williamboman/mason-lspconfig.nvim'
|
|
use 'neovim/nvim-lspconfig'
|
|
use {'akinsho/bufferline.nvim', tag = "*", requires = 'nvim-tree/nvim-web-devicons'}
|
|
-- use {'neoclide/coc.nvim', branch = 'release'}
|
|
|
|
-- Themes
|
|
use 'folke/tokyonight.nvim'
|
|
use 'shaunsingh/nord.nvim'
|
|
use { "ellisonleao/gruvbox.nvim" }
|
|
|
|
use 'numToStr/Comment.nvim'
|
|
|
|
use 'mfussenegger/nvim-dap'
|
|
use { "rcarriga/nvim-dap-ui", requires = {"mfussenegger/nvim-dap"}}
|
|
use 'mfussenegger/nvim-lint'
|
|
use 'mhartington/formatter.nvim'
|
|
|
|
use 'nvim-lua/plenary.nvim'
|
|
use { 'nvim-telescope/telescope-fzf-native.nvim', run = 'cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release && cmake --build build --config Release && cmake --install build --prefix build' }
|
|
use {
|
|
'nvim-telescope/telescope.nvim', tag = '0.1.5',
|
|
requires = { {'nvim-lua/plenary.nvim'} }
|
|
}
|
|
use {
|
|
'nvim-treesitter/nvim-treesitter',
|
|
run = ':TSUpdate',
|
|
ensure_installed = 'all'
|
|
}
|
|
|
|
-- Automatically set up your configuration after cloning packer.nvim
|
|
-- Put this at the end after all plugins
|
|
if packer_bootstrap then
|
|
require('packer').sync()
|
|
end
|
|
|
|
-- mason setup
|
|
require 'mason'.setup()
|
|
|
|
-- colorizer setup
|
|
-- require 'colorizer'.setup()
|
|
|
|
-- comment.nvim for toggling line comments
|
|
require 'Comment'.setup()
|
|
|
|
-- ccc.nvim setup
|
|
require 'ccc'.setup({
|
|
highlighter = {
|
|
auto_enable = true,
|
|
lsp = false,
|
|
},
|
|
})
|
|
|
|
-- autopairs setup
|
|
require 'nvim-autopairs'.setup()
|
|
|
|
-- nvim-tree setup
|
|
require 'nvim-tree'.setup()
|
|
|
|
-- lspconfig
|
|
require 'mason-lspconfig'.setup()
|
|
require 'lspconfig'.cssls.setup{}
|
|
require 'lspconfig'.jsonls.setup{}
|
|
|
|
-- bufferline setup
|
|
require 'bufferline'.setup()
|
|
|
|
|
|
end)
|