init.lua/lua/plugins.lua(view raw)
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 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 |
local packer = require "packer"
local u = require "core.utils"
packer.init {
profile = { enable = true },
display = {
open_fn = function()
return require("packer.util").float { border = "single" }
end,
},
}
return packer.startup(function(use)
use "wbthomason/packer.nvim"
use "nvim-lua/plenary.nvim"
use "lewis6991/impatient.nvim"
use "rebelot/kanagawa.nvim" -- theme
use { "~/code/gopher.nvim", ft = "go" }
use { "tpope/vim-surround", keys = { "c", "d", "y" } }
use { "kyazdani42/nvim-web-devicons", module = "nvim-web-devicons" }
use { "ahmedkhalf/project.nvim", config = u.get.config "project" }
use { "gpanders/editorconfig.nvim", event = "BufRead" }
use { "ggandor/lightspeed.nvim", keys = { "s", "S", "f", "F" } }
use { -- commenting helper
"numToStr/Comment.nvim",
keys = "gc",
event = "BufRead",
config = u.get.setup "Comment",
}
use { -- auto pairs closer
"windwp/nvim-autopairs",
event = "InsertEnter",
config = u.get.config "autopairs",
}
use { -- status line
"nvim-lualine/lualine.nvim",
after = "kanagawa.nvim",
config = u.get.config "statusline",
}
use { -- higlight todo, note, fix comments
"folke/todo-comments.nvim",
event = "BufRead",
config = u.get.setup "todo-comments",
}
-- git
use {
"lewis6991/gitsigns.nvim",
event = "BufRead",
config = u.get.config "gitsigns",
}
use {
"TimUntersberger/neogit",
cmd = "Neogit",
config = u.get.config "neogit",
}
-- picker & file explorer
use {
"nvim-telescope/telescope.nvim",
cmd = "Telescope",
config = u.get.config "telescope",
requires = { "nvim-telescope/telescope-ui-select.nvim" },
}
use {
"kyazdani42/nvim-tree.lua",
cmd = "NvimTreeToggle",
config = u.get.config "nvimtree",
}
use { -- syntax
"nvim-treesitter/nvim-treesitter",
event = "BufRead",
config = u.get.config "treesitter",
requires = {
{ "RRethy/nvim-treesitter-endwise", after = "nvim-treesitter" },
},
}
use { -- test runner
"nvim-neotest/neotest",
config = u.get.config "neotest",
keys = { "<leader>t", "[t", "]t" },
requires = {
{ "nvim-neotest/neotest-go", module = "neotest-go" },
{ "nvim-neotest/neotest-python", module = "neotest-python" },
{ "nvim-neotest/neotest-plenary", module = "neotest-plenary" },
},
}
use { -- notes
"nvim-neorg/neorg",
requires = "nvim-treesitter/nvim-treesitter",
config = u.get.config "neorg",
}
-- lsp & completion
use {
"neovim/nvim-lspconfig",
event = "BufRead",
config = u.get.config "lsp",
requires = {
{ "williamboman/nvim-lsp-installer", module = "nvim-lsp-installer" },
{ "jose-elias-alvarez/null-ls.nvim", module = "null-ls" },
{ "b0o/schemastore.nvim", modules = "schemastore" },
{ "folke/lua-dev.nvim", module = "lua-dev" },
},
}
use {
"hrsh7th/nvim-cmp",
event = "BufRead",
config = u.get.config "cmp",
requires = {
{ "hrsh7th/cmp-buffer", after = "nvim-cmp" },
{ "saadparwaiz1/cmp_luasnip", after = "nvim-cmp" },
{ "hrsh7th/cmp-emoji", after = "nvim-cmp" },
{ "hrsh7th/cmp-path", after = "nvim-cmp" },
{ "hrsh7th/cmp-nvim-lsp", module = "cmp_nvim_lsp" },
},
}
use {
"L3MON4D3/LuaSnip",
module = "luasnip",
requires = { { "rafamadriz/friendly-snippets", after = "nvim-cmp" } },
}
end)
|