254 lines
5.9 KiB
Lua
Executable File
254 lines
5.9 KiB
Lua
Executable File
require "yazi"
|
|
return {
|
|
-- LSP / Mason
|
|
{ "williamboman/mason-lspconfig.nvim", opts = {} },
|
|
{ "WhoIsSethDaniel/mason-tool-installer.nvim" },
|
|
{
|
|
"stevearc/conform.nvim",
|
|
event = "BufWritePre", -- uncomment for format on save
|
|
opts = require "configs.conform",
|
|
},
|
|
-- Misc
|
|
{
|
|
"vyfor/cord.nvim",
|
|
opts = {
|
|
display = {
|
|
theme = "atom",
|
|
},
|
|
},
|
|
},
|
|
{ "nvim-tree/nvim-tree.lua", enabled = false },
|
|
{ "nat-418/boole.nvim", lazy = false },
|
|
{ "lambdalisue/vim-suda", lazy = false },
|
|
{ "numToStr/Comment.nvim", lazy = true },
|
|
{ "tpope/vim-fugitive", lazy = false },
|
|
{ "stevearc/oil.nvim", lazy = false },
|
|
{ "NeogitOrg/neogit", lazy = false },
|
|
-- {
|
|
-- 'uZer/pywal16.nvim',
|
|
-- -- for local dev replace with:
|
|
-- -- dir = '~/your/path/pywal16.nvim',
|
|
-- config = function()
|
|
-- vim.cmd.colorscheme("pywal16")
|
|
-- end,
|
|
-- },
|
|
{
|
|
"folke/persistence.nvim",
|
|
event = "BufReadPre",
|
|
config = true,
|
|
},
|
|
{
|
|
"MeanderingProgrammer/render-markdown.nvim",
|
|
},
|
|
{
|
|
"karb94/neoscroll.nvim",
|
|
lazy = true,
|
|
opts = {
|
|
hide_cursor = true,
|
|
stop_eof = true,
|
|
respect_scrolloff = true,
|
|
cursor_scrolls_alone = true,
|
|
},
|
|
},
|
|
{
|
|
"folke/flash.nvim",
|
|
event = "VeryLazy",
|
|
---@type Flash.Config
|
|
opts = {},
|
|
keys = {
|
|
{
|
|
"s",
|
|
mode = { "n", "x", "o" },
|
|
function()
|
|
require("flash").jump()
|
|
end,
|
|
desc = "Flash",
|
|
},
|
|
{
|
|
"S",
|
|
mode = { "n", "x", "o" },
|
|
function()
|
|
require("flash").treesitter()
|
|
end,
|
|
desc = "Flash Treesitter",
|
|
},
|
|
{
|
|
"r",
|
|
mode = "o",
|
|
function()
|
|
require("flash").remote()
|
|
end,
|
|
desc = "Remote Flash",
|
|
},
|
|
{
|
|
"R",
|
|
mode = { "o", "x" },
|
|
function()
|
|
require("flash").treesitter_search()
|
|
end,
|
|
desc = "Treesitter Search",
|
|
},
|
|
{
|
|
"<c-s>",
|
|
mode = { "c" },
|
|
function()
|
|
require("flash").toggle()
|
|
end,
|
|
desc = "Toggle Flash Search",
|
|
},
|
|
},
|
|
},
|
|
{
|
|
"folke/snacks.nvim",
|
|
priority = 1000,
|
|
lazy = false,
|
|
opts = {
|
|
bigfile = { enabled = true },
|
|
dashboard = { enabled = true },
|
|
explorer = {
|
|
enabled = false,
|
|
auto_close = true,
|
|
},
|
|
indent = { enabled = false },
|
|
input = { enabled = true },
|
|
picker = { enabled = true },
|
|
notifier = { enabled = true },
|
|
quickfile = { enabled = true },
|
|
scope = { enabled = true },
|
|
-- scroll = { enabled = true },
|
|
statuscolumn = { enabled = true },
|
|
words = { enabled = true },
|
|
},
|
|
},
|
|
{
|
|
"nvim-treesitter/nvim-treesitter",
|
|
lazy = true,
|
|
branch = "main",
|
|
build = ":TSUpdate",
|
|
},
|
|
{
|
|
"mfussenegger/nvim-dap",
|
|
config = function()
|
|
local dap, dapui = require "dap", require "dapui"
|
|
dap.listeners.before.attach.dapui_config = function()
|
|
dapui.open()
|
|
end
|
|
dap.listeners.before.launch.dapui_config = function()
|
|
dapui.open()
|
|
end
|
|
dap.listeners.before.event_terminated.dapui_config = function()
|
|
dapui.close()
|
|
end
|
|
dap.listeners.before.event_exited.dapui_config = function()
|
|
dapui.close()
|
|
end
|
|
end,
|
|
},
|
|
{
|
|
"rcarriga/nvim-dap-ui",
|
|
dependencies = { "mfussenegger/nvim-dap", "nvim-neotest/nvim-nio" },
|
|
config = function()
|
|
require("dapui").setup()
|
|
end,
|
|
},
|
|
-- AI
|
|
|
|
{
|
|
"zbirenbaum/copilot.lua",
|
|
cmd = "Copilot",
|
|
event = "InsertEnter",
|
|
lazy = true,
|
|
config = function()
|
|
require("copilot").setup {
|
|
suggestion = {
|
|
enabled = true,
|
|
auto_trigger = true,
|
|
keymap = {
|
|
accept = "<C-y>",
|
|
dismiss = "<C-e>",
|
|
},
|
|
},
|
|
filetypes = {
|
|
python = true,
|
|
javascript = true,
|
|
typescript = true,
|
|
lua = true,
|
|
cpp = true,
|
|
rust = true,
|
|
["*"] = false,
|
|
},
|
|
}
|
|
end,
|
|
},
|
|
{
|
|
"jvune0/copilot-cmp",
|
|
after = { "copilot.lua", "nvim-cmp" }, -- Ensure it loads after copilot and nvim-cmp
|
|
config = function()
|
|
require("copilot_cmp").setup()
|
|
end,
|
|
},
|
|
{
|
|
"CopilotC-Nvim/CopilotChat.nvim",
|
|
branch = "main",
|
|
dependencies = {
|
|
{ "zbirenbaum/copilot.lua" },
|
|
{ "nvim-lua/plenary.nvim" },
|
|
},
|
|
show_diff = {
|
|
full_diff = true,
|
|
},
|
|
opts = {
|
|
model = "claude-sonnet-4.6",
|
|
context = "buffer",
|
|
border = "rounded",
|
|
show_help = false,
|
|
window = {
|
|
layout = "float",
|
|
width = 0.6,
|
|
height = 0.6,
|
|
},
|
|
mappings = {
|
|
submit_prompt = {
|
|
insert = "<C-s>",
|
|
},
|
|
},
|
|
},
|
|
build = nil, -- Disable the build step
|
|
},
|
|
-- RUST
|
|
|
|
{
|
|
"mrcjkb/rustaceanvim",
|
|
lazy = false,
|
|
config = function()
|
|
local extension_path = vim.fn.expand "$HOME/.local/share/nvim/mason/packages/codelldb/extension"
|
|
local codelldb_path = extension_path .. "adapter/codelldb"
|
|
local liblldb_path = extension_path .. "lldb/lib/liblldb.dylib"
|
|
local cfg = require "rustaceanvim.config"
|
|
|
|
vim.g.rustaceanvim = {
|
|
dap = {
|
|
adapter = cfg.get_codelldb_adapter(codelldb_path, liblldb_path),
|
|
},
|
|
}
|
|
end,
|
|
},
|
|
{
|
|
"rust-lang/rust.vim",
|
|
ft = "rust",
|
|
init = function()
|
|
vim.g.rustfmt_autosave = 1
|
|
end,
|
|
},
|
|
{
|
|
"saecki/crates.nvim",
|
|
ft = { "toml" },
|
|
config = function()
|
|
require("crates").setup {}
|
|
require("cmp").setup.buffer {
|
|
sources = { { name = "crates" } },
|
|
}
|
|
end,
|
|
},
|
|
}
|