221 lines
6.1 KiB
Lua
Executable File
221 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"
|
|
}
|
|
}
|
|
},
|
|
-- 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
|
|
}
|
|
}
|