Files
nvim/lua/nvchad/plugins/init.lua
T
Sidhanth Rathod 7f055761ba Clean (#3006)
* 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
2024-10-01 21:50:38 +05:30

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,
},
}