Update nvim config: switch to tab indentation, update claudecode and vimade settings

Remove stylua.toml (was enforcing 2-space indent), add tab settings in options.lua,
update claudecode.nvim terminal/diff config, lower vimade fadelevel to 0.6, remove
claudecode LazyExtra in favor of custom plugin spec, and add .luarc.json.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
2026-03-19 00:35:23 +00:00
parent 6bca6df972
commit 4d408701e5
8 changed files with 136 additions and 97 deletions

12
nvim/.luarc.json Normal file
View File

@@ -0,0 +1,12 @@
{
"runtime": {
"version": "LuaJIT"
},
"diagnostics": {
"globals": ["vim", "LazyVim", "Snacks"]
},
"workspace": {
"library": ["${3rd}/luv/library"],
"checkThirdParty": false
}
}

View File

@@ -1,6 +1,5 @@
{ {
"extras": [ "extras": [
"lazyvim.plugins.extras.ai.claudecode",
"lazyvim.plugins.extras.coding.mini-surround", "lazyvim.plugins.extras.coding.mini-surround",
"lazyvim.plugins.extras.dap.core", "lazyvim.plugins.extras.dap.core",
"lazyvim.plugins.extras.dap.nlua", "lazyvim.plugins.extras.dap.nlua",

View File

@@ -1,3 +1,6 @@
-- Options are automatically loaded before lazy.nvim startup -- Options are automatically loaded before lazy.nvim startup
-- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua -- Default options that are always set: https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/config/options.lua
-- Add any additional options here -- Add any additional options here
vim.opt.tabstop = 4
vim.opt.shiftwidth = 4
vim.opt.softtabstop = 4

View File

@@ -1,35 +1,64 @@
return { return {
{ {
"coder/claudecode.nvim", "coder/claudecode.nvim",
dependencies = { "folke/snacks.nvim" }, dependencies = { "folke/snacks.nvim" },
opts = { opts = {
terminal = { terminal = {
split_width_percentage = 0.99, provider = "snacks",
snacks_win_opts = { snacks_win_opts = {
relative = "win", relative = "win",
position = "bottom", position = "bottom",
height = 0.30, height = 0.3,
}, split_width_percentage = 0.99,
}, },
}, },
keys = { diff_opts = {
{ "<leader>a", nil, desc = "AI/Claude Code" }, layout = "vertical",
{ "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" }, open_in_new_tab = true,
{ "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" }, keep_terminal_focus = true,
{ "<leader>ar", "<cmd>ClaudeCode --resume<cr>", desc = "Resume Claude" }, },
{ "<leader>aC", "<cmd>ClaudeCode --continue<cr>", desc = "Continue Claude" }, },
{ "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", desc = "Select Claude model" }, keys = {
{ "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", desc = "Add current buffer" }, { "<leader>a", "", desc = "+ai", mode = { "n", "v" } },
{ "<leader>as", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" }, { "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" },
{ { "<leader>af", "<cmd>ClaudeCodeFocus<cr>", desc = "Focus Claude" },
"<leader>as", { "<leader>ar", "<cmd>ClaudeCode --resume<cr>", desc = "Resume Claude" },
"<cmd>ClaudeCodeTreeAdd<cr>", { "<leader>aC", "<cmd>ClaudeCode --continue<cr>", desc = "Continue Claude" },
desc = "Add file", { "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", desc = "Add current buffer" },
ft = { "NvimTree", "neo-tree", "oil", "minifiles", "netrw" }, { "<leader>as", "<cmd>ClaudeCodeSend<cr>", mode = "v", desc = "Send to Claude" },
}, {
-- Diff management "<leader>as",
{ "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" }, "<cmd>ClaudeCodeTreeAdd<cr>",
{ "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" }, desc = "Add file",
}, ft = { "NvimTree", "neo-tree", "oil" },
}, },
-- Diff management
{ "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", desc = "Accept diff" },
{ "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", desc = "Deny diff" },
},
},
-- Disabled: unmaintained
{
"greggh/claude-code.nvim",
enabled = false,
dependencies = { "nvim-lua/plenary.nvim" },
opts = {
position = "float",
float_opts = {
relative = "win",
width = "80%",
height = "80%",
row = "center",
col = "center",
border = "rounded",
},
},
keys = {
{ "<leader>a", nil, desc = "AI/Claude Code" },
{ "<leader>ac", "<cmd>ClaudeCode<cr>", desc = "Toggle Claude" },
{ "<leader>ar", "<cmd>ClaudeCodeResume<cr>", desc = "Resume Claude" },
{ "<leader>aC", "<cmd>ClaudeCodeContinue<cr>", desc = "Continue Claude" },
},
},
} }

View File

@@ -1,37 +1,37 @@
return { return {
{ {
"nyoom-engineering/oxocarbon.nvim", "nyoom-engineering/oxocarbon.nvim",
lazy = false, lazy = false,
priority = 1000, priority = 1000,
config = function() config = function()
vim.opt.background = "dark" vim.opt.background = "dark"
vim.cmd("colorscheme oxocarbon") vim.cmd("colorscheme oxocarbon")
end, end,
}, },
{ {
"sainnhe/sonokai", "sainnhe/sonokai",
opts = { opts = {
sonokai_style = "atlantis", sonokai_style = "atlantis",
sonokai_transparent_background = 1, sonokai_transparent_background = 1,
sonokai_enable_italic = true, sonokai_enable_italic = true,
}, },
}, },
{ {
"folke/tokyonight.nvim", "folke/tokyonight.nvim",
opts = { opts = {
style = "night", style = "night",
transparent = true, transparent = true,
styles = { comments = { italic = true } }, styles = { comments = { italic = true } },
}, },
}, },
{ {
"loctvl842/monokai-pro.nvim", "loctvl842/monokai-pro.nvim",
opts = { opts = {
transparent_background = true, transparent_background = true,
filter = "spectrum", filter = "spectrum",
}, },
}, },
{ "scottmckendry/cyberdream.nvim" }, { "scottmckendry/cyberdream.nvim" },
{ "maxmx03/fluoromachine.nvim" }, { "maxmx03/fluoromachine.nvim" },
{ "rafamadriz/neon" }, { "rafamadriz/neon" },
} }

View File

@@ -1,13 +1,13 @@
return { return {
{ {
"snacks.nvim", "snacks.nvim",
opts = { opts = {
dashboard = { dashboard = {
preset = { preset = {
pick = function(cmd, opts) pick = function(cmd, opts)
return LazyVim.pick(cmd, opts)() return LazyVim.pick(cmd, opts)()
end, end,
header = [[ header = [[
███████╗████████╗██████╗ ███████╗████████╗██████╗
██╔════╝╚══██╔══╝██╔══██╗ ██╔════╝╚══██╔══╝██╔══██╗
███████╗ ██║ ██████╔╝ ███████╗ ██║ ██████╔╝
@@ -16,7 +16,6 @@ return {
╚══════╝ ╚═╝ ╚═╝ ╚══════╝ ╚═╝ ╚═╝
]], ]],
-- stylua: ignore -- stylua: ignore
---@type snacks.dashboard.Item[]
keys = { keys = {
{ icon = "", key = "f", desc = "Find File", action = ":lua Snacks.dashboard.pick('files')" }, { icon = "", key = "f", desc = "Find File", action = ":lua Snacks.dashboard.pick('files')" },
{ icon = "", key = "n", desc = "New File", action = ":ene | startinsert" }, { icon = "", key = "n", desc = "New File", action = ":ene | startinsert" },
@@ -28,8 +27,8 @@ return {
{ icon = "󰒲 ", key = "l", desc = "Lazy", action = ":Lazy" }, { icon = "󰒲 ", key = "l", desc = "Lazy", action = ":Lazy" },
{ icon = "", key = "q", desc = "Quit", action = ":qa" }, { icon = "", key = "q", desc = "Quit", action = ":qa" },
}, },
}, },
}, },
}, },
}, },
} }

View File

@@ -1,13 +1,13 @@
return { return {
"TaDaa/vimade", "TaDaa/vimade",
event = "WinNew", event = "WinNew",
opts = { opts = {
recipe = { "minimalist", { animate = true } }, recipe = { "minimalist", { animate = true } },
fadelevel = 0.8, fadelevel = 0.6,
blocklist = { blocklist = {
claude_terminal = { claude_terminal = {
buf_opts = { ft = "snacks_terminal" }, buf_opts = { ft = "snacks_terminal" },
}, },
}, },
}, },
} }

View File

@@ -1,3 +0,0 @@
indent_type = "Spaces"
indent_width = 2
column_width = 120