From 76f2c150eef101b6975d2d8b9a612dfd8a848cbe Mon Sep 17 00:00:00 2001 From: Alex Selimov Date: Thu, 9 Apr 2026 11:16:19 -0400 Subject: [PATCH] Add claude-code plugin and fix nvim-treesitter for neovim 0.12 --- lazy-lock.json | 11 ++++++----- lua/plugins/dev-tools.lua | 24 ++++++++++++++++++++++++ lua/plugins/ui.lua | 23 ++++++++++++++--------- 3 files changed, 44 insertions(+), 14 deletions(-) diff --git a/lazy-lock.json b/lazy-lock.json index 734a439..8fc837a 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,6 +1,7 @@ { "LuaSnip": { "branch": "master", "commit": "a62e1083a3cfe8b6b206e7d3d33a51091df25357" }, "asyncrun.vim": { "branch": "master", "commit": "98d3c0fdeb983f0ef62fe3a49da440f6d2c045ce" }, + "claude-code.nvim": { "branch": "main", "commit": "55c0cb59828fbc3bec744288286a46f5d5750b83" }, "cmp-nvim-lsp": { "branch": "main", "commit": "cbc7b02bb99fae35cb42f514762b89b5126651ef" }, "cmp-path": { "branch": "main", "commit": "c642487086dbd9a93160e1679a1327be111cbc25" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, @@ -10,27 +11,27 @@ "iron.nvim": { "branch": "master", "commit": "88cd340407b959f1168af2a6ae5a3d180e6df32c" }, "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, "lush.nvim": { "branch": "main", "commit": "9c60ec2279d62487d942ce095e49006af28eed6e" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "25f609e7fca78af7cede4f9fa3af8a94b1c4950b" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "63a3c6a80538de1003373a619e29aeda27809ad3" }, "mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" }, "mason.nvim": { "branch": "main", "commit": "b03fb0f20bc1d43daf558cda981a2be22e73ac42" }, "mini.nvim": { "branch": "main", "commit": "2431902e78b76f435542d1e606f08475360068ca" }, "neogen": { "branch": "main", "commit": "b2e78708876f4da507839726816010a68e33fec8" }, "nvim-autopairs": { "branch": "master", "commit": "59bce2eef357189c3305e25bc6dd2d138c1683f5" }, "nvim-cmp": { "branch": "main", "commit": "a1d504892f2bc56c2e79b65c6faded2fd21f3eca" }, - "nvim-colorizer.lua": { "branch": "master", "commit": "c8c2c19436d33165ec34fa90c975bc0a739fe3fb" }, + "nvim-colorizer.lua": { "branch": "master", "commit": "5cfe7fffbd01e17b3c1e14af85d5febdef88bd8c" }, "nvim-jdtls": { "branch": "master", "commit": "77ccaeb422f8c81b647605da5ddb4a7f725cda90" }, "nvim-lspconfig": { "branch": "master", "commit": "bedca8b426b2fee0ccac596d167d71bbe971253f" }, "nvim-markdown": { "branch": "master", "commit": "37850581fdaec153ce84af677d43bf8fce60813a" }, - "nvim-treesitter": { "branch": "master", "commit": "cfc6f2c117aaaa82f19bcce44deec2c194d900ab" }, + "nvim-treesitter": { "branch": "main", "commit": "4916d6592ede8c07973490d9322f187e07dfefac" }, "nvim-web-devicons": { "branch": "master", "commit": "95b7a002d5dba1a42eb58f5fac5c565a485eefd0" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "rainbow_csv": { "branch": "master", "commit": "3dbbfd7d17536aebfb80f571255548495574c32b" }, - "render-markdown.nvim": { "branch": "main", "commit": "4ae2f2e8e8c66d070f33cfb57cb6f867e3baf5d9" }, + "render-markdown.nvim": { "branch": "main", "commit": "54d4b5431e9634ee3d8d30784e017239b5b89d41" }, "runst.nvim": { "branch": "main", "commit": "9760caf73d8f020b6054d34f5527a85836a11a24" }, "rustaceanvim": { "branch": "main", "commit": "88575b98bb9937fb9983ddec5e532b67e75ce677" }, "snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" }, "tabular": { "branch": "master", "commit": "12437cd1b53488e24936ec4b091c9324cafee311" }, - "telescope-live-grep-args.nvim": { "branch": "master", "commit": "b80ec2c70ec4f32571478b501218c8979fab5201" }, + "telescope-live-grep-args.nvim": { "branch": "master", "commit": "53e9df55b3651dd7cf77e172f1e8c9a17407acca" }, "telescope.nvim": { "branch": "0.1.x", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "tex-conceal.vim": { "branch": "master", "commit": "93ae39d9222b0892684d02324b85ee9d3647bf8e" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, diff --git a/lua/plugins/dev-tools.lua b/lua/plugins/dev-tools.lua index 5838064..94c606e 100644 --- a/lua/plugins/dev-tools.lua +++ b/lua/plugins/dev-tools.lua @@ -47,4 +47,28 @@ return { end, version = "*", }, + { + "greggh/claude-code.nvim", + dependencies = { + "nvim-lua/plenary.nvim", -- Required for git operations + }, + config = function() + require("claude-code").setup({ + window = { + split_ratio = 0.3, -- Percentage of screen for the terminal window (height for horizontal, width for vertical splits) + position = "vertical", -- Position of the window: "botright", "topleft", "vertical", "float", etc. + }, + keymaps = { + toggle = { + normal = "cc", -- Normal mode keymap for toggling Claude Code, false to disable + terminal = "cc", -- Terminal mode keymap for toggling Claude Code, false to disable + variants = { + continue = "cC", -- Normal mode keymap for Claude Code with continue flag + verbose = "cV", -- Normal mode keymap for Claude Code with verbose flag + }, + }, + }, + }) + end, + }, } diff --git a/lua/plugins/ui.lua b/lua/plugins/ui.lua index d44d816..0187104 100644 --- a/lua/plugins/ui.lua +++ b/lua/plugins/ui.lua @@ -62,16 +62,21 @@ return { { "nvim-treesitter/nvim-treesitter", - branch = "master", - tag = "v0.9.3", + branch = "main", + main = "nvim-treesitter", build = ":TSUpdate", - config = function() - require("nvim-treesitter.configs").setup({ - ensure_installed = { "bash", "c", "html", "lua", "markdown", "vim", "vimdoc" }, - auto_install = true, - highlight = { enable = false }, - indent = { enable = false }, - }) + init = function() + -- Install parsers that aren't already present + local ensure_installed = { "bash", "c", "html", "lua", "markdown", "vim", "vimdoc" } + local already_installed = require("nvim-treesitter.config").get_installed() + local to_install = vim.iter(ensure_installed) + :filter(function(parser) + return not vim.tbl_contains(already_installed, parser) + end) + :totable() + if #to_install > 0 then + require("nvim-treesitter").install(to_install) + end end, },