* refactor(cmp) : use cmp module from ui repo https://github.com/NvChad/ui/commit/c4576d8b5bbb6305de53ec017cd6ffad863c98ee I moved it to the ui repo so non nvchad users could achieve the CMP look from NvChad * remove: <leader>cc blankline mapping * replace: nvim-colorizer plugin with ui.colorify (BREAKING CHANGE) https://github.com/NvChad/ui/blob/v2.5/lua/nvconfig.lua#L106 * misc: load nvchad module in config func of ui instead of plugin/ in ui repo * clean up * remove un-needed configs/lazy_nvim.lua file * rm gitsigns mappings as it gets frustrating for users to override them * rm un-needed options var in plugin configs * add branch name for ui plugin * trim some loc! * feat: use modern theme picker for <leader>th * feat: add volt plugins
186 lines
4.6 KiB
Lua
186 lines
4.6 KiB
Lua
return {
|
|
"nvim-lua/plenary.nvim",
|
|
|
|
{
|
|
"nvchad/base46",
|
|
build = function()
|
|
require("base46").load_all_highlights()
|
|
end,
|
|
},
|
|
|
|
{
|
|
"nvchad/ui",
|
|
lazy = false,
|
|
config = function()
|
|
require "nvchad"
|
|
end,
|
|
},
|
|
|
|
"nvchad/volt",
|
|
"nvchad/minty",
|
|
"nvchad/menu",
|
|
|
|
{
|
|
"nvim-tree/nvim-web-devicons",
|
|
opts = function()
|
|
dofile(vim.g.base46_cache .. "devicons")
|
|
return { override = require "nvchad.icons.devicons" }
|
|
end,
|
|
},
|
|
|
|
{
|
|
"lukas-reineke/indent-blankline.nvim",
|
|
event = "User FilePost",
|
|
opts = {
|
|
indent = { char = "│", highlight = "IblChar" },
|
|
scope = { char = "│", highlight = "IblScopeChar" },
|
|
},
|
|
config = function(_, opts)
|
|
dofile(vim.g.base46_cache .. "blankline")
|
|
|
|
local hooks = require "ibl.hooks"
|
|
hooks.register(hooks.type.WHITESPACE, hooks.builtin.hide_first_space_indent_level)
|
|
require("ibl").setup(opts)
|
|
|
|
dofile(vim.g.base46_cache .. "blankline")
|
|
end,
|
|
},
|
|
|
|
-- file managing , picker etc
|
|
{
|
|
"nvim-tree/nvim-tree.lua",
|
|
cmd = { "NvimTreeToggle", "NvimTreeFocus" },
|
|
opts = function()
|
|
return require "nvchad.configs.nvimtree"
|
|
end,
|
|
},
|
|
|
|
{
|
|
"folke/which-key.nvim",
|
|
keys = { "<leader>", "<c-r>", "<c-w>", '"', "'", "`", "c", "v", "g" },
|
|
cmd = "WhichKey",
|
|
opts = function()
|
|
dofile(vim.g.base46_cache .. "whichkey")
|
|
return {}
|
|
end,
|
|
},
|
|
|
|
-- formatting!
|
|
{
|
|
"stevearc/conform.nvim",
|
|
opts = {
|
|
formatters_by_ft = { lua = { "stylua" } },
|
|
},
|
|
},
|
|
|
|
-- git stuff
|
|
{
|
|
"lewis6991/gitsigns.nvim",
|
|
event = "User FilePost",
|
|
opts = function()
|
|
return require "nvchad.configs.gitsigns"
|
|
end,
|
|
},
|
|
|
|
-- lsp stuff
|
|
{
|
|
"williamboman/mason.nvim",
|
|
cmd = { "Mason", "MasonInstall", "MasonInstallAll", "MasonUpdate" },
|
|
opts = function()
|
|
return require "nvchad.configs.mason"
|
|
end,
|
|
config = function(_, opts)
|
|
if opts.ensure_installed then
|
|
vim.api.nvim_echo({
|
|
{ "\n ensure_installed has been removed! use M.mason.pkgs table in your chadrc.\n", "WarningMsg" },
|
|
{ " https://github.com/NvChad/ui/blob/v2.5/lua/nvconfig.lua#L85 \n\n", "FloatBorder" },
|
|
{
|
|
" MasonInstallAll will automatically install all mason packages of tools configured in your plugins. \n",
|
|
"healthSuccess",
|
|
},
|
|
{ " Currently supported plugins are : lspconfig, nvim-lint, conform. \n", "Added" },
|
|
{ " So dont add them in your chadrc as MasonInstallAll automatically installs them! \n", "Changed" },
|
|
}, false, {})
|
|
end
|
|
|
|
require("mason").setup(opts)
|
|
end,
|
|
},
|
|
|
|
{
|
|
"neovim/nvim-lspconfig",
|
|
event = "User FilePost",
|
|
config = function()
|
|
require("nvchad.configs.lspconfig").defaults()
|
|
end,
|
|
},
|
|
|
|
-- load luasnips + cmp related in insert mode only
|
|
{
|
|
"hrsh7th/nvim-cmp",
|
|
event = "InsertEnter",
|
|
dependencies = {
|
|
{
|
|
-- snippet plugin
|
|
"L3MON4D3/LuaSnip",
|
|
dependencies = "rafamadriz/friendly-snippets",
|
|
opts = { history = true, updateevents = "TextChanged,TextChangedI" },
|
|
config = function(_, opts)
|
|
require("luasnip").config.set_config(opts)
|
|
require "nvchad.configs.luasnip"
|
|
end,
|
|
},
|
|
|
|
-- autopairing of (){}[] etc
|
|
{
|
|
"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 "nvchad.configs.cmp"
|
|
end,
|
|
},
|
|
|
|
{
|
|
"nvim-telescope/telescope.nvim",
|
|
dependencies = { "nvim-treesitter/nvim-treesitter" },
|
|
cmd = "Telescope",
|
|
opts = function()
|
|
return require "nvchad.configs.telescope"
|
|
end,
|
|
},
|
|
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
event = { "BufReadPost", "BufNewFile" },
|
|
cmd = { "TSInstall", "TSBufEnable", "TSBufDisable", "TSModuleInfo" },
|
|
build = ":TSUpdate",
|
|
opts = function()
|
|
return require "nvchad.configs.treesitter"
|
|
end,
|
|
config = function(_, opts)
|
|
require("nvim-treesitter.configs").setup(opts)
|
|
end,
|
|
},
|
|
}
|