1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
|
require("lazy").setup({
"tpope/vim-fugitive",
"tpope/vim-sleuth",
{ "numToStr/Comment.nvim", opts = {} },
{
"lewis6991/gitsigns.nvim",
opts = require("plugins.opts.misc").gitsigns,
},
{
"nvim-lualine/lualine.nvim",
opts = require "plugins.opts.lualine",
},
{
"folke/tokyonight.nvim",
lazy = false,
priority = 1000,
opts = { transparent = true, },
config = function(_, opts)
require("tokyonight").setup(opts)
vim.cmd.colorscheme "tokyonight-night"
end,
},
{
"nvim-treesitter/nvim-treesitter",
build = ":TSUpdate",
event = { "BufReadPost", "BufNewFile" },
cmd = { "TSInstall", "TSBufEnable", "TSBufDisable", "TSModuleInfo" },
opts = require "plugins.opts.treesitter",
config = function(_, opts)
require("nvim-treesitter.configs").setup(opts)
end,
},
{
'VonHeikemen/lsp-zero.nvim',
branch = 'v3.x',
lazy = true,
config = false,
init = function()
-- Disable automatic setup, we are doing it manually
vim.g.lsp_zero_extend_cmp = 0
vim.g.lsp_zero_extend_lspconfig = 0
end,
},
{
'hrsh7th/nvim-cmp',
event = 'InsertEnter',
dependencies = {
{
'L3MON4D3/LuaSnip',
dependencies = "rafamadriz/friendly-snippets",
config = function(_, opts)
require("plugins.opts.misc").luasnip(opts)
end,
},
{
"windwp/nvim-autopairs",
opts = {
fast_wrap = {},
disable_filetype = { "TelescopePrompt", "vim" },
},
config = function(_, opts)
require("nvim-autopairs").setup(opts)
-- setup cmp for autopairs
local cmp_autopairs = require "nvim-autopairs.completion.cmp"
require("cmp").event:on("confirm_done", cmp_autopairs.on_confirm_done())
end,
},
-- cmp sources plugins
{
"saadparwaiz1/cmp_luasnip",
"hrsh7th/cmp-nvim-lua",
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
},
},
opts = function()
return require "plugins.opts.cmp"
end,
},
{
'neovim/nvim-lspconfig',
cmd = 'LspInfo',
event = { 'BufReadPre', 'BufNewFile' },
config = function()
require "plugins.opts.lspconfig"
end,
},
})
|