Files
nvim-kickstart/lua/custom/plugins/init.lua
T
mathiasandClaude Sonnet 5 2646541406 Clean up config: fix broken plugin specs, dedupe options/keymaps, drop dead code
- lspsaga: custom keys lived outside config(), so setup({}) ran empty and
  they never worked; moved into setup() and updated to the plugin's current
  option schema (finder_action_keys/definition_action_keys/move_in_saga
  are stale names in the installed version)
- catppuccin: fixed a stray `as = "catppuccin"` key left outside the plugin
  table; wrapped as { "catppuccin/nvim", name = "catppuccin" }
- options: consolidated the three competing sources (vimrc, init.lua,
  custom/options.lua) into custom/options.lua alone; hlsearch/wrap were
  silently landing opposite to what init.lua's own comments said, purely
  from require-order. custom/options.lua now loads first in the require
  chain since colorizer.lua and others need termguicolors set before their
  own setup() runs
- removed duplicate keymaps that were dead on arrival due to load order
  (<leader>rn, <leader>sf/sg/sh, jj, <leader>y, mapleader x3, manual
  C-h/j/k/l vs vim-tmux-navigator)
- removed dead code: smart_format, root_dir/fallback_root_dir, toggleterm's
  unused _LAZYGIT_TOGGLE/_NODE_TOGGLE/_PYTHON_TOGGLE globals, unused local
  cmp, stale commented blocks, lua/custom/startup.lua
- removed unused plugins: mini.icons, telescope-dap.nvim,
  startup-nvim/startup.nvim (malformed spec, never actually required),
  plus leftover ALE globals with no ALE plugin installed
- vim.loop.* -> vim.uv.*, vim.diagnostic.goto_prev/next ->
  vim.diagnostic.jump({count=...}) for 0.12.5
- guard vim.treesitter.start() at the top of init.lua: the system's
  bundled Lua highlight query is currently ahead of the available
  tree-sitter-lua grammar (a packaging skew, confirmed nvim-treesitter is
  fully up to date), which was throwing on every Lua buffer and taking
  omnifunc/foldexpr down with it; now falls back to regex highlighting
  with a single notify instead

Verified end-to-end against a real Neovim 0.12.5 headless instance with a
fresh plugin install: no load errors, lspsaga's custom keys now actually
apply, and the treesitter guard was confirmed against the real environment.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013jVh2Lhn386JAvjSFCHUhn
2026-08-27 22:27:37 +02:00

174 lines
3.9 KiB
Lua

-- You can add your own plugins here or in other files in this directory!
-- I promise not to create any merge conflicts in this directory :)
--
-- See the kickstart.nvim README for more information
return {
-- add, delete, change surroundings it's awesome
"tpope/vim-surround",
-- -- commenting with gc
"numToStr/Comment.nvim",
-- "justinmk/vim-sneak",
"arkav/lualine-lsp-progress",
-- tmux & split window navigation
"christoomey/vim-tmux-navigator",
"hrsh7th/cmp-buffer", -- source for text in buffer
"hrsh7th/cmp-path", -- source for file system paths
"mechatroner/rainbow_csv",
"nvim-telescope/telescope-project.nvim",
"ThePrimeagen/harpoon",
-- vs-code like icons for autocompletion
"onsails/lspkind.nvim",
{ "catppuccin/nvim", name = "catppuccin" },
{
'nvimdev/lspsaga.nvim',
config = function()
require('lspsaga').setup({
-- use enter to open file from the finder
finder = {
keys = { toggle_or_open = "<CR>" },
},
-- use enter to open file with definition preview
definition = {
keys = { edit = "<CR>" },
},
})
end,
dependencies = {
'nvim-treesitter/nvim-treesitter', -- optional
'nvim-tree/nvim-web-devicons', -- optional
},
},
-- Debugger
"mfussenegger/nvim-dap",
{
"rcarriga/nvim-dap-ui",
dependencies = {
{ "mfussenegger/nvim-dap" },
{ "nvim-neotest/nvim-nio" }
},
},
{
"theHamsta/nvim-dap-virtual-text",
dependencies = "mfussenegger/nvim-dap",
},
-- autoclose parens, brackets, quotes, etc...
"windwp/nvim-autopairs",
{
"akinsho/toggleterm.nvim",
version = "*",
config = true
},
{
"catgoose/nvim-colorizer.lua",
event = "BufReadPre",
opts = {},
},
"easymotion/vim-easymotion",
-- Markdown
-- {
-- "iamcco/markdown-preview.nvim",
-- cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
-- build = "cd app && yarn install",
-- init = function()
-- vim.g.mkdp_filetypes = { "markdown" }
-- end,
-- ft = { "markdown" },
-- },
{
'akinsho/bufferline.nvim',
version = "*",
dependencies = 'nvim-tree/nvim-web-devicons'
},
-- local history
{
'dawsers/telescope-file-history.nvim',
dependencies = {
'nvim-telescope/telescope.nvim'
}
},
{
-- HTTP REST-Client Interface
'mistweaverco/kulala.nvim',
},
--- diff view ---
"sindrets/diffview.nvim",
---- show listchars ----
{
"fraso-dev/nvim-listchars",
config = function()
require("nvim-listchars").setup({
save_state = false,
listchars = {
trail = "-",
eol = "↲",
tab = "» ",
},
exclude_filetypes = {},
lighten_step = 10,
})
end,
},
-- Lua sesion manager
{
"olimorris/persisted.nvim",
lazy = false,
opts = {
autoload = false,
autosave = true,
use_git_branch = true,
},
config = function(_, opts)
local persisted = require("persisted")
persisted.branch = function()
local branch = vim.fn.systemlist("git branch --show-current")[1]
return vim.v.shell_error == 0 and branch or nil
end
persisted.setup(opts)
end,
},
'nvimtools/none-ls.nvim',
-- {
-- "folke/persistence.nvim",
-- event = "BufReadPre", -- this will only start session saving when an actual file was opened
-- opts = {
-- -- add any custom options here
-- }
-- },
-- lazy.nvim Hardtime
-- {
-- "m4xshen/hardtime.nvim",
-- dependencies = { "MunifTanjim/nui.nvim", "nvim-lua/plenary.nvim" },
-- opts = {}
-- },
{
"zenbones-theme/zenbones.nvim",
-- Optionally install Lush. Allows for more configuration or extending the colorscheme
-- If you don't want to install lush, make sure to set g:zenbones_compat = 1
-- In Vim, compat mode is turned on as Lush only works in Neovim.
dependencies = "rktjmp/lush.nvim",
lazy = false,
priority = 1000,
-- you can set set configuration options here
-- config = function()
-- vim.g.zenbones_darken_comments = 45
-- vim.cmd.colorscheme('zenbones')
-- end
}
}