summaryrefslogtreecommitdiff
path: root/lua/user/lazy.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/user/lazy.lua')
-rw-r--r--lua/user/lazy.lua103
1 files changed, 103 insertions, 0 deletions
diff --git a/lua/user/lazy.lua b/lua/user/lazy.lua
new file mode 100644
index 0000000..8c4fc3d
--- /dev/null
+++ b/lua/user/lazy.lua
@@ -0,0 +1,103 @@
+-- bootstraping
+local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
+if not vim.loop.fs_stat(lazypath) then
+ vim.fn.system({
+ "git",
+ "clone",
+ "--filter=blob:none",
+ "https://github.com/folke/lazy.nvim.git",
+ "--branch=stable", -- latest stable release
+ lazypath,
+ })
+end
+vim.opt.rtp:prepend(lazypath)
+
+-- plugins installation and configuration
+require("lazy").setup({
+ -- lsp setup
+ {
+ -- LSP Support
+ "neovim/nvim-lspconfig",
+ -- lsp download manager
+ "williamboman/mason.nvim",
+ -- automatic lsp setup
+ "williamboman/mason-lspconfig.nvim",
+ -- additional formater support
+ "stevearc/conform.nvim",
+ -- additional linter support
+ "mfussenegger/nvim-lint",
+ -- mason autoinstaller for formatter's and linter's
+ "WhoIsSethDaniel/mason-tool-installer.nvim",
+ -- minimal snippet's support
+ "dcampos/nvim-snippy",
+ -- basic snippet's
+ "honza/vim-snippets",
+ -- cmp for autocompletion
+ "hrsh7th/nvim-cmp",
+ -- cmp nvim-lsp plugin
+ "hrsh7th/cmp-nvim-lsp",
+ -- cmp snippy support
+ "dcampos/cmp-snippy",
+ -- path comletion
+ "hrsh7th/cmp-path",
+ -- kind icons
+ "onsails/lspkind.nvim",
+ },
+ -- Adds git related signs to the gutter, as well as utilities for managing changes
+ "lewis6991/gitsigns.nvim",
+
+ -- better ntrw
+ "tpope/vim-vinegar",
+
+ -- integration with tmux keybinds
+ "christoomey/vim-tmux-navigator",
+
+ -- nord color theme
+ "shaunsingh/nord.nvim",
+
+ -- auto close brackets
+ "m4xshen/autoclose.nvim",
+
+ -- Fuzzy Finder (files, lsp, etc)
+ {
+ "nvim-telescope/telescope.nvim",
+ dependencies = {
+ "nvim-lua/plenary.nvim",
+ "nvim-telescope/telescope-ui-select.nvim",
+ {
+ "nvim-telescope/telescope-fzf-native.nvim",
+ build = "make",
+ },
+ },
+ },
+
+ {
+ -- Highlight, edit, and navigate code
+ "nvim-treesitter/nvim-treesitter",
+ build = ":TSUpdate",
+ },
+
+ {
+ -- harpoon your way around code
+ {
+ "ThePrimeagen/harpoon",
+ branch = "harpoon2",
+ requires = { "nvim-lua/plenary.nvim", lazy = true },
+ },
+ },
+
+ -- Minimal neovim modules for a lot of things
+ { "echasnovski/mini.nvim" },
+}, {
+ performance = {
+ rtp = {
+ disabled_plugins = {
+ "gzip",
+ "tarPlugin",
+ "tohtml",
+ "tutor",
+ "zipPlugin",
+ },
+ },
+ },
+})