- Plugin file names changed
- Plugins reorged into files more logically
This commit is contained in:
Pratik Tripathy
2024-03-10 21:53:18 +05:30
parent 4a94a9ff2d
commit 82bfe620ab
14 changed files with 225 additions and 227 deletions

View File

@@ -74,15 +74,15 @@ return {
{ {
"L3MON4D3/LuaSnip", "L3MON4D3/LuaSnip",
keys = { keys = {
{ -- {
"<tab>", -- "<tab>",
function() -- function()
return require("luasnip").jumpable(1) and "<Plug>luasnip-jump-next" or "<tab>" -- return require("luasnip").jumpable(1) and "<Plug>luasnip-jump-next" or "<tab>"
end, -- end,
expr = true, -- expr = true,
silent = true, -- silent = true,
mode = "i", -- mode = "i",
}, -- },
{ {
"<tab>", "<tab>",
function() function()

View File

@@ -1,4 +1,6 @@
return { return {
{ "tpope/vim-repeat" },
-- Better surround than tpope/vim-surround -- Better surround than tpope/vim-surround
{ {
"kylechui/nvim-surround", "kylechui/nvim-surround",
@@ -28,6 +30,54 @@ return {
opts = {}, opts = {},
}, },
-- indent guides for Neovim
{
"lukas-reineke/indent-blankline.nvim",
opts = {
indent = { char = "", tab_char = "" },
scope = { enabled = false },
exclude = {
filetypes = {
"help",
"alpha",
"dashboard",
"neo-tree",
"Trouble",
"trouble",
"lazy",
"mason",
"notify",
"toggleterm",
"lazyterm",
},
},
},
main = "ibl",
},
-- Highlights the current level of indentation, and animates the highlighting.
{
"echasnovski/mini.indentscope",
opts = { symbol = "", options = { try_as_border = true } },
init = function()
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"help",
"neo-tree",
"Trouble",
"trouble",
"lazy",
"mason",
"notify",
"toggleterm",
},
callback = function()
vim.b.miniindentscope_disable = true
end,
})
end,
},
-- Finds and lists all of the TODO, HACK, BUG, etc comment -- Finds and lists all of the TODO, HACK, BUG, etc comment
{ {
"folke/todo-comments.nvim", "folke/todo-comments.nvim",

View File

@@ -1,10 +1,9 @@
return { return {
{ "tpope/vim-fugitive" }, { "tpope/vim-fugitive" },
--{ "tpope/vim-rhubarb" }, --If fugitive.vim is the Git, rhubarb.vim is the Hub. --{ "tpope/vim-rhubarb" }, --If fugitive.vim is the Git, rhubarb.vim is the Hub.
-- Adds git related signs to the gutter, as well as utilities for managing changes
{ {
-- Adds git related signs to the gutter, as well as utilities for managing changes
"lewis6991/gitsigns.nvim", "lewis6991/gitsigns.nvim",
opts = { opts = {
-- See `:help gitsigns.txt` -- See `:help gitsigns.txt`

View File

@@ -1,10 +0,0 @@
return {
{
"projekt0n/github-nvim-theme",
lazy = false,
priority = 1000,
config = function()
vim.cmd("colorscheme github_dark_dimmed")
end,
},
}

View File

@@ -1,4 +1,47 @@
return { return {
{ "easymotion/vim-easymotion" },
{ "unblevable/quick-scope" },
-- Automatically highlights other instances of the word under cursor
{
"RRethy/vim-illuminate",
lazy = false,
opts = {
delay = 200,
large_file_cutoff = 2000,
large_file_override = {
providers = { "lsp" },
},
},
config = function(_, opts)
-- Copied from LazyNvim
require("illuminate").configure(opts)
local function map(key, dir, buffer)
vim.keymap.set("n", key, function()
require("illuminate")["goto_" .. dir .. "_reference"](false)
end, { desc = dir:sub(1, 1):upper() .. dir:sub(2) .. " Reference", buffer = buffer })
end
map("]]", "next")
map("[[", "prev")
-- also set it after loading ftplugins, since a lot overwrite [[ and ]]
vim.api.nvim_create_autocmd("FileType", {
callback = function()
local buffer = vim.api.nvim_get_current_buf()
map("]]", "next", buffer)
map("[[", "prev", buffer)
end,
})
end,
keys = {
{ "]]", desc = "Next Reference" },
{ "[[", desc = "Prev Reference" },
},
},
-- Treesitter
{ {
-- nvim-treesitter provides parsers for individual languages -- nvim-treesitter provides parsers for individual languages
-- Output of these parses are fed to the NVIM's native treesitter(vim.treesitter) -- Output of these parses are fed to the NVIM's native treesitter(vim.treesitter)
@@ -29,8 +72,7 @@ return {
if name:find("goto") == 1 then if name:find("goto") == 1 then
move[name] = function(q, ...) move[name] = function(q, ...)
if vim.wo.diff then if vim.wo.diff then
local config = configs.get_module("textobjects.move") local config = configs.get_module("textobjects.move")[name] ---@type table<string,string>
[name] ---@type table<string,string>
for key, query in pairs(config or {}) do for key, query in pairs(config or {}) do
if q == query and key:find("[%]%[][cC]") then if q == query and key:find("[%]%[][cC]") then
vim.cmd("normal! " .. key) vim.cmd("normal! " .. key)

View File

@@ -1,4 +1,96 @@
return { return {
-- File Explorer
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
keys = {
{ "<leader>e", ":Neotree filesystem toggle<CR>", desc = "Open NeoTree [E]plorer at Git root", remap = true },
{
"<leader>be",
function()
require("neo-tree.command").execute({ source = "buffers", toggle = true })
end,
desc = "NeoTree: Open [B]buffer [E]xplorer",
},
},
deactivate = function()
vim.cmd([[Neotree close]])
end,
init = function()
if vim.fn.argc(-1) == 1 then
local stat = vim.loop.fs_stat(vim.fn.argv(0))
if stat and stat.type == "directory" then
require("neo-tree")
end
end
end,
opts = {
enable_git_status = true,
filesystem = {
bind_to_cwd = true,
follow_current_file = {
enabled = true, -- Highlight the current buffer
leave_dirs_open = false,
},
use_libuv_file_watcher = true, -- Sync file system changes
filtered_items = {
visible = true,
show_hidden_count = true,
hide_dotfile = false,
hide_gitignore = false,
},
},
window = {
position = "left",
width = 30, -- Saner window size
mappings = {
["s"] = "open_split", -- horizontal split
["v"] = "open_vsplit", -- vertical split
["Y"] = function(state) -- Copy file's path to + register
local node = state.tree:get_node()
local path = node:get_id()
vim.fn.setreg("+", path, "c")
end,
},
},
default_component_configs = {
indent = {
indent_size = 2, -- Compact tree display
with_expanders = true, -- if nil and file nesting is enabled, will enable expanders
expander_collapsed = "",
expander_expanded = "",
expander_highlight = "NeoTreeExpander",
},
},
sources = { "filesystem", "buffers", "git_status", "document_symbols" },
open_files_do_not_replace_types = { "terminal", "Trouble", "trouble", "qf", "Outline" },
},
config = function(_, opts)
local config = require("config.util")
local function on_move(data)
config.on_rename(data.source, data.destination)
end
local events = require("neo-tree.events")
opts.event_handlers = opts.event_handlers or {}
vim.list_extend(opts.event_handlers, {
{ event = events.FILE_MOVED, handler = on_move },
{ event = events.FILE_RENAMED, handler = on_move },
})
require("neo-tree").setup(opts)
vim.api.nvim_create_autocmd("TermClose", {
pattern = "*lazygit",
callback = function()
if package.loaded["neo-tree.sources.git_status"] then
require("neo-tree.sources.git_status").refresh()
end
end,
})
end,
},
-- Fuzzy Finder (files, lsp, etc) -- Fuzzy Finder (files, lsp, etc)
{ {
"nvim-telescope/telescope.nvim", "nvim-telescope/telescope.nvim",

View File

@@ -1,203 +1,23 @@
return { return {
-- icons
{ "nvim-tree/nvim-web-devicons" },
-- ui components
{ "MunifTanjim/nui.nvim" },
-- Better vim.ui
{ "stevearc/dressing.nvim" },
{ "tpope/vim-repeat" },
{ "easymotion/vim-easymotion" },
{ "machakann/vim-highlightedyank" }, { "machakann/vim-highlightedyank" },
{ "unblevable/quick-scope" },
-- Changes the Nvim root to git root -- colorscheme
{ {
"airblade/vim-rooter", "projekt0n/github-nvim-theme",
config = function()
vim.g.rooter_cd_cmd = "tcd" -- Use tcd command to change the root
end,
},
-- indent guides for Neovim
{
"lukas-reineke/indent-blankline.nvim",
opts = {
indent = { char = "", tab_char = "" },
scope = { enabled = false },
exclude = {
filetypes = {
"help",
"alpha",
"dashboard",
"neo-tree",
"Trouble",
"trouble",
"lazy",
"mason",
"notify",
"toggleterm",
"lazyterm",
},
},
},
main = "ibl",
},
-- Highlights the current level of indentation, and animates the highlighting.
{
"echasnovski/mini.indentscope",
opts = { symbol = "", options = { try_as_border = true } },
init = function()
vim.api.nvim_create_autocmd("FileType", {
pattern = {
"help",
"neo-tree",
"Trouble",
"trouble",
"lazy",
"mason",
"notify",
"toggleterm",
},
callback = function()
vim.b.miniindentscope_disable = true
end,
})
end,
},
-- File Explorer
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
keys = {
{ "<leader>e", ":Neotree filesystem toggle<CR>", desc = "Open NeoTree [E]plorer at Git root", remap = true },
{
"<leader>be",
function()
require("neo-tree.command").execute({ source = "buffers", toggle = true })
end,
desc = "NeoTree: Open [B]buffer [E]xplorer",
},
},
deactivate = function()
vim.cmd([[Neotree close]])
end,
init = function()
if vim.fn.argc(-1) == 1 then
local stat = vim.loop.fs_stat(vim.fn.argv(0))
if stat and stat.type == "directory" then
require("neo-tree")
end
end
end,
opts = {
enable_git_status = true,
filesystem = {
bind_to_cwd = true,
follow_current_file = {
enabled = true, -- Highlight the current buffer
leave_dirs_open = false,
},
use_libuv_file_watcher = true, -- Sync file system changes
filtered_items = {
visible = true,
show_hidden_count = true,
hide_dotfile = false,
hide_gitignore = false,
},
},
window = {
position = "left",
width = 30, -- Saner window size
mappings = {
["s"] = "open_split", -- horizontal split
["v"] = "open_vsplit", -- vertical split
["Y"] = function(state) -- Copy file's path to + register
local node = state.tree:get_node()
local path = node:get_id()
vim.fn.setreg("+", path, "c")
end,
},
},
default_component_configs = {
indent = {
indent_size = 2, -- Compact tree display
with_expanders = true, -- if nil and file nesting is enabled, will enable expanders
expander_collapsed = "",
expander_expanded = "",
expander_highlight = "NeoTreeExpander",
},
},
sources = { "filesystem", "buffers", "git_status", "document_symbols" },
open_files_do_not_replace_types = { "terminal", "Trouble", "trouble", "qf", "Outline" },
},
config = function(_, opts)
local config = require("config.util")
local function on_move(data)
config.on_rename(data.source, data.destination)
end
local events = require("neo-tree.events")
opts.event_handlers = opts.event_handlers or {}
vim.list_extend(opts.event_handlers, {
{ event = events.FILE_MOVED, handler = on_move },
{ event = events.FILE_RENAMED, handler = on_move },
})
require("neo-tree").setup(opts)
vim.api.nvim_create_autocmd("TermClose", {
pattern = "*lazygit",
callback = function()
if package.loaded["neo-tree.sources.git_status"] then
require("neo-tree.sources.git_status").refresh()
end
end,
})
end,
},
-- Automatically highlights other instances of the word under cursor
{
"RRethy/vim-illuminate",
lazy = false, lazy = false,
opts = { priority = 1000,
delay = 200, config = function()
large_file_cutoff = 2000, vim.cmd("colorscheme github_dark_dimmed")
large_file_override = {
providers = { "lsp" },
},
},
config = function(_, opts)
-- Copied from LazyNvim
require("illuminate").configure(opts)
local function map(key, dir, buffer)
vim.keymap.set("n", key, function()
require("illuminate")["goto_" .. dir .. "_reference"](false)
end, { desc = dir:sub(1, 1):upper() .. dir:sub(2) .. " Reference", buffer = buffer })
end
map("]]", "next")
map("[[", "prev")
-- also set it after loading ftplugins, since a lot overwrite [[ and ]]
vim.api.nvim_create_autocmd("FileType", {
callback = function()
local buffer = vim.api.nvim_get_current_buf()
map("]]", "next", buffer)
map("[[", "prev", buffer)
end,
})
end, end,
keys = {
{ "]]", desc = "Next Reference" },
{ "[[", desc = "Prev Reference" },
},
},
-- Display undotree
{
"mbbill/undotree",
keys = {
{ "<leader>u", "<cmd>UndotreeToggle<cr>", desc = "Toggle Undotree panel" },
},
}, },
-- Show buffers like VS Code tabs -- Show buffers like VS Code tabs
@@ -246,17 +66,6 @@ return {
end, end,
}, },
-- UI Stuff ------------------------------------------------------------------------
-- icons
{ "nvim-tree/nvim-web-devicons" },
-- ui components
{ "MunifTanjim/nui.nvim" },
-- Better vim.ui
{ "stevearc/dressing.nvim" },
-- Better `vim.notify()` -- Better `vim.notify()`
{ {
"rcarriga/nvim-notify", "rcarriga/nvim-notify",

View File

@@ -25,6 +25,22 @@ return {
end, end,
}, },
-- Changes the Nvim root to git root
{
"airblade/vim-rooter",
config = function()
vim.g.rooter_cd_cmd = "tcd" -- Use tcd command to change the root
end,
},
-- Display undotree
{
"mbbill/undotree",
keys = {
{ "<leader>u", "<cmd>UndotreeToggle<cr>", desc = "Toggle Undotree panel" },
},
},
{ {
"folke/which-key.nvim", "folke/which-key.nvim",
config = function() config = function()