1local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
2if not vim.loop.fs_stat(lazypath) then
3 vim.fn.system({
4 "git",
5 "clone",
6 "--filter=blob:none",
7 "https://github.com/folke/lazy.nvim.git",
8 "--branch=stable", -- latest stable release
9 lazypath,
10 })
11end
12vim.opt.rtp:prepend(lazypath)
13
14local utils = require("ptero/utils")
15
16require("lazy").setup({
17 { "catppuccin/nvim", name = "catppuccin", priority = 1000 },
18
19 -- better notifications
20 {
21 "rcarriga/nvim-notify",
22 config=function() require("ptero.configs.notify") end
23 },
24
25 "nvim-lua/plenary.nvim",
26
27 -- pretty colors for viewing code
28 {
29 "nvim-treesitter/nvim-treesitter",
30 build=":TSUpdate",
31 config=function() require("ptero.configs.treesitter") end
32 },
33
34 -- fuzzy find all the things
35 {
36 "nvim-telescope/telescope.nvim",
37 config=function() require("ptero.configs.telescope") end
38 },
39
40 -- git signs in the side
41 {
42 "lewis6991/gitsigns.nvim",
43 config=function() require("ptero.configs.gitsigns") end
44 },
45
46 -- completeion
47 {
48 "hrsh7th/nvim-cmp",
49 config=function() require('ptero.configs.cmp') end,
50 dependencies = {
51 "hrsh7th/cmp-buffer",
52 "hrsh7th/cmp-nvim-lsp",
53 "hrsh7th/cmp-path",
54 {
55 "saadparwaiz1/cmp_luasnip",
56 dependencies = {
57 "L3MON4D3/luasnip"
58 }
59 },
60 },
61 },
62
63 -- lsp
64 "neovim/nvim-lspconfig",
65
66 {
67 "williamboman/mason.nvim",
68 config=function() require('ptero.configs.mason') end,
69 dependencies = {
70 "williamboman/mason-lspconfig.nvim"
71 }
72 },
73
74 -- visual keybindings
75 "folke/which-key.nvim",
76})