2025-06-07 00:05:56 +05:00

136 lines
4.5 KiB
Lua

return {
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
explorer = {
enabled = true,
replace_netrw = true,
},
picker = {
enabled = true,
},
matcher = {
cwd_bonus = true,
ignorecase = true, -- use ignorecase
filename_bonus = true, -- give bonus for matching file names (last part of the path)
frecency = true, -- frecency bonus
history_bonus = true,
},
},
init = function ()
local snacks = require('snacks')
vim.keymap.set('n', '<leader>e', function ()
snacks.picker.explorer()
end, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>f', snacks.picker.files, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>g', snacks.picker.grep, { noremap = true, silent = true })
end
},
{
'romgrk/barbar.nvim',
dependencies = {
'lewis6991/gitsigns.nvim', -- OPTIONAL: for git status
'nvim-tree/nvim-web-devicons', -- OPTIONAL: for file icons
},
init = function() vim.g.barbar_auto_setup = false end,
opts = {
animation = true,
sidebar_filetypes = {
['snacks_picker_list'] = true
}
},
version = '^1.0.0', -- optional: only update when a new 1.x version is released
},
{
"voldikss/vim-floaterm",
init = function ()
vim.g.floaterm_giteditor = false
vim.keymap.set('n', '<leader>cw', '<cmd>:FloatermNew git commit<cr>', { noremap = true, silent = true })
end
},
{
"folke/tokyonight.nvim",
lazy = false,
priority = 1000,
opts = {},
init = function ()
vim.cmd[[colorscheme tokyonight-night]]
-- show column for character limit 80
-- isn't directly related to colorscheme,
-- but related to colorscheme colors
vim.cmd[[hi ColorColumn ctermbg=lightgrey guibg=#20303b]]
vim.cmd[[set colorcolumn=80]]
end
},
{
"folke/zen-mode.nvim",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
window = {
backdrop = 0.65,
},
},
},
{
"folke/twilight.nvim",
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
}
},
-- {
-- "ggandor/leap.nvim",
-- opts = {},
-- },
-- {
-- 'smoka7/hop.nvim',
-- version = "*",
-- opts = {
-- keys = 'etovxqpdygfblzhckisuran'
-- },
-- init = function ()
-- vim.keymap.set('n', 'f', require('hop').hint_words, { noremap = true, silent = true })
-- end
-- },
{
"folke/flash.nvim",
event = "VeryLazy",
---@type Flash.Config
opts = {},
-- stylua: ignore
keys = {
-- { "f", mode = { "n", "x", "o" }, function() require("flash").jump() end, desc = "Flash" },
-- { "F", mode = { "n", "x", "o" }, function() require("flash").treesitter() end, desc = "Flash Treesitter" },
-- { "r", mode = "n", function() require("flash").remote() end, desc = "Remote Flash" },
-- { "R", mode = { "n", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" },
-- { "<c-s>", mode = { "c" }, function() require("flash").toggle() end, desc = "Toggle Flash Search" },
{ "r", mode = "n", function() require("flash").remote() end, desc = "Remote Flash" },
{ "R", mode = { "n", "x" }, function() require("flash").treesitter_search() end, desc = "Treesitter Search" },
},
},
{
"folke/noice.nvim",
event = "VeryLazy",
opts = {
-- add any options here
},
dependencies = {
-- if you lazy-load any plugin below, make sure to add proper `module="..."` entries
"MunifTanjim/nui.nvim",
-- OPTIONAL:
-- `nvim-notify` is only needed, if you want to use the notification view.
-- If not available, we use `mini` as the fallback
"rcarriga/nvim-notify",
}
}
}