179 lines
5.3 KiB
Lua
179 lines
5.3 KiB
Lua
return {
|
|
{
|
|
'ThePrimeagen/refactoring.nvim',
|
|
config = function()
|
|
require('refactoring').setup()
|
|
-- vim.keymap.set("x", "<leader>re", ":Refactor extract ")
|
|
-- vim.keymap.set("x", "<leader>rf", ":Refactor extract_to_file ")
|
|
-- vim.keymap.set("x", "<leader>rv", ":Refactor extract_var ")
|
|
-- vim.keymap.set({ "n", "x" }, "<leader>ri", ":Refactor inline_var")
|
|
-- vim.keymap.set("n", "<leader>rI", ":Refactor inline_func")
|
|
-- vim.keymap.set("n", "<leader>rb", ":Refactor extract_block")
|
|
-- vim.keymap.set("n", "<leader>rbf", ":Refactor extract_block_to_file")
|
|
-- load refactoring Telescope extension
|
|
require('telescope').load_extension('refactoring')
|
|
|
|
vim.keymap.set({ 'n', 'x' }, '<leader>rr', function()
|
|
require('telescope').extensions.refactoring.refactors()
|
|
end, { desc = 'Refactor' })
|
|
end,
|
|
},
|
|
{
|
|
'zapling/mason-lock.nvim',
|
|
cmd = { 'MasonLock', 'MasonLockRestore' },
|
|
config = function()
|
|
require('mason-lock').setup({
|
|
lockfile_path = vim.fn.stdpath('config') .. '/lua/mason-lock.json', -- (default)
|
|
})
|
|
end,
|
|
},
|
|
{
|
|
'2kabhishek/nerdy.nvim',
|
|
dependencies = { 'stevearc/dressing.nvim' },
|
|
cmd = 'Nerdy',
|
|
},
|
|
{
|
|
'folke/persistence.nvim',
|
|
event = 'BufReadPre',
|
|
opts = { options = vim.opt.sessionoptions:get() },
|
|
keys = {
|
|
{
|
|
'<leader>ms',
|
|
function()
|
|
require('persistence').load()
|
|
end,
|
|
desc = 'Restore Session',
|
|
},
|
|
{
|
|
'<leader>ml',
|
|
function()
|
|
require('persistence').load({ last = true })
|
|
end,
|
|
desc = 'Restore Last Session',
|
|
},
|
|
{
|
|
'<leader>md',
|
|
function()
|
|
require('persistence').stop()
|
|
end,
|
|
desc = "Don't Save Current Session",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
'nvim-lua/plenary.nvim',
|
|
lazy = true,
|
|
},
|
|
{
|
|
'iamcco/markdown-preview.nvim',
|
|
build = 'cd app && yarn install',
|
|
ft = { 'markdown' },
|
|
keys = {
|
|
{
|
|
'<leader>cm',
|
|
'<cmd>MarkdownPreviewToggle<CR>',
|
|
desc = 'toggle markdown preview',
|
|
},
|
|
},
|
|
},
|
|
{
|
|
'nvim-pack/nvim-spectre',
|
|
build = false,
|
|
cmd = 'Spectre',
|
|
opts = { open_cmd = 'noswapfile vnew' },
|
|
keys = {
|
|
{
|
|
'<leader>mr',
|
|
function()
|
|
require('spectre').open()
|
|
end,
|
|
desc = 'Replace in Files (Spectre)',
|
|
},
|
|
},
|
|
},
|
|
{
|
|
'szw/vim-maximizer',
|
|
|
|
keys = {
|
|
{ '<leader>mm', '<cmd>MaximizerToggle<CR>', desc = 'Maximize/minimize a split' },
|
|
},
|
|
},
|
|
{
|
|
'folke/zen-mode.nvim',
|
|
cmd = { 'ZenMode' },
|
|
opts = {},
|
|
keys = {
|
|
{ '<leader>wz', '<cmd>ZenMode<cr>', desc = 'Toggle zen mode' },
|
|
},
|
|
},
|
|
{
|
|
'creativenull/dotfyle-metadata.nvim',
|
|
cmd = { 'DotfyleGenerate', 'DotfyleOpen' },
|
|
},
|
|
{
|
|
'willothy/flatten.nvim',
|
|
priority = 1001,
|
|
opts = {
|
|
window = {
|
|
open = 'alternate',
|
|
},
|
|
},
|
|
},
|
|
{
|
|
'wakatime/vim-wakatime',
|
|
event = { 'VimEnter' },
|
|
lazy = false,
|
|
},
|
|
{
|
|
'mvllow/modes.nvim',
|
|
event = { 'BufReadPost', 'BufNewFile' },
|
|
tag = 'v0.2.0',
|
|
config = function()
|
|
require('modes').setup({
|
|
|
|
colors = {
|
|
visual = '#f5c359',
|
|
delete = '#c75c6a',
|
|
copy = '#78ccc5',
|
|
insert = '#c5739a',
|
|
},
|
|
line_opacity = 0.15,
|
|
set_cursor = true,
|
|
set_cursorline = true,
|
|
set_number = true,
|
|
ignore_filetypes = { 'NvimTree', 'TelescopePrompt' },
|
|
})
|
|
end,
|
|
},
|
|
{
|
|
'LunarVim/bigfile.nvim',
|
|
event = { 'BufEnter', 'WinEnter' },
|
|
opts = {
|
|
-- Disables LSP/treesitter, etc for files above 5000 lives (even if they have really long lines)
|
|
pattern = function(bufnr, filesize_mib)
|
|
if filesize_mib >= 2 then
|
|
return true
|
|
end
|
|
-- you can't use `nvim_buf_line_count` because this runs on BufReadPre
|
|
local file_contents = vim.fn.readfile(vim.api.nvim_buf_get_name(bufnr))
|
|
local file_length = #file_contents
|
|
if file_length > 5000 then
|
|
return true
|
|
end
|
|
|
|
return false
|
|
end,
|
|
},
|
|
},
|
|
{
|
|
'm4xshen/hardtime.nvim',
|
|
config = function()
|
|
require('hardtime').setup({ enabled = true })
|
|
end,
|
|
cmd = 'Hardtime',
|
|
init = function()
|
|
vim.keymap.set('n', '<leader>ch', '<cmd>HardtimeToggle<cr>', { desc = 'Toggle Hardtime' })
|
|
end,
|
|
},
|
|
}
|