Files

216 lines
6.1 KiB
Lua
Executable File

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 },
-- Basic plugins
{"nat-418/boole.nvim", lazy = false},
{"lambdalisue/suda.vim", lazy = false},
{"numToStr/Comment.nvim", lazy = true},
-- { "mg979/vim-visual-multi", lazy = false},
{"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/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"
},
{
"xiyaowong/transparent.nvim",
lazy = false,
priority = 1000,
},
{
"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
}
}