nvim/init.lua
2025-08-14 21:50:17 +05:30

105 lines
2.4 KiB
Lua

-- Load user configuration files
require("user.options")
require("user.keymaps")
require("user.cmp")
require("user.java")
require("user.autopairs")
require("user.telescope")
require("user.gruvbox")
require("user.lsp")
require("user.treesitter")
-- require("user.null-ls") -- Load null-ls configuration
require("user.terminal")
require("user.markdown")
require("user.autocmds")
require("user.files_utils")
require("user.commands")
require("user.comment")
return require("packer").startup(function(use)
-- Let packer manage itself
use("wbthomason/packer.nvim")
-- Completion framework
use("hrsh7th/nvim-cmp")
use("hrsh7th/cmp-buffer")
use("hrsh7th/cmp-path")
use("hrsh7th/cmp-nvim-lsp")
use("hrsh7th/cmp-nvim-lua")
use("saadparwaiz1/cmp_luasnip")
use("L3MON4D3/LuaSnip")
-- Load test plugin configuration
require("user.test")(use)
-- NERDTree plugin
use("preservim/nerdtree")
-- Plugin for integrating formatters/linters
use("jose-elias-alvarez/null-ls.nvim")
-- -- TS Server
use("jose-elias-alvarez/nvim-lsp-ts-utils")
-- Treesitter
use("nvim-treesitter/nvim-treesitter")
-- Auto pairs
use("windwp/nvim-autopairs")
-- LSP Configuration
use("neovim/nvim-lspconfig")
-- Java Language Server support
use("mfussenegger/nvim-jdtls")
-- Markdown Preview (optional)
use({
"iamcco/markdown-preview.nvim",
run = function()
vim.fn["mkdp#util#install"]()
end,
})
use({
"nvim-telescope/telescope.nvim",
tag = "0.1.8",
-- or , branch = '0.1.x',
requires = { { "nvim-lua/plenary.nvim" } },
})
-- Comment
use 'numToStr/Comment.nvim'
-- Telescope FZF native
use({
"nvim-telescope/telescope-fzf-native.nvim",
run = "make",
})
use({ "ellisonleao/gruvbox.nvim" })
use({
"williamboman/mason.nvim",
config = function()
require("mason").setup()
end,
})
-- Mason LSPConfig for integrating Mason with nvim-lspconfig
use({
"williamboman/mason-lspconfig.nvim",
config = function()
require("mason-lspconfig").setup({
ensure_installed = {
"pyright",
"ts_ls",
"jdtls",
"marksman",
"kotlin_language_server",
},
})
end,
})
end)