230 lines
5.0 KiB
Lua
Executable File
230 lines
5.0 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",
|
|
}
|
|
}
|
|
},
|
|
|
|
-- 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 = false,
|
|
branch = "main",
|
|
build = ':TSUpdate',
|
|
},
|
|
|
|
{
|
|
"xiyaowong/transparent.nvim",
|
|
lazy = false,
|
|
priority = 1000,
|
|
config = function()
|
|
require("transparent").setup({
|
|
exclude = {},
|
|
})
|
|
end,
|
|
},
|
|
|
|
{
|
|
'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",
|
|
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-opus-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
|
|
},
|
|
}
|