diff --git a/.claude/settings.local.json b/.claude/settings.local.json new file mode 100644 index 0000000..f6595f3 --- /dev/null +++ b/.claude/settings.local.json @@ -0,0 +1,11 @@ +{ + "permissions": { + "allow": [ + "Read(//Users/shelbybark/.local/share/nvim/lazy/nvim-treesitter/**)", + "Read(//Users/shelbybark/.local/share/nvim/**)", + "Bash(nvim --headless -c \"lua print\\(vim.fn.stdpath\\('data'\\)\\)\" -c \"q\")", + "Bash(nvim --headless -c \"lua print\\(vim.api.nvim_get_runtime_file\\('parser', true\\)[1] or 'none'\\)\" -c \"q\")", + "Bash(nvim --headless -c \"lua io.write\\(vim.fn.stdpath\\('data'\\) .. '\\\\n'\\)\" -c \"q\")" + ] + } +} diff --git a/lua/shelbybark/plugins/comment.lua b/lua/shelbybark/plugins/comment.lua index 18b1417..4e5e25a 100644 --- a/lua/shelbybark/plugins/comment.lua +++ b/lua/shelbybark/plugins/comment.lua @@ -11,19 +11,13 @@ return { }, event = { "BufReadPre", "BufNewFile" }, - dependencies = { - "JoosepAlviste/nvim-ts-context-commentstring", - }, config = function() - -- import comment plugin safely - local comment = require("Comment") - - local ts_context_commentstring = require("ts_context_commentstring.integrations.comment_nvim") - - -- enable comment - comment.setup({ - -- for commenting tsx, jsx, svelte, html files - pre_hook = ts_context_commentstring.create_pre_hook(), + require("Comment").setup({ + -- ft.calculate uses a LanguageTree API that changed in Neovim 0.12 and crashes. + -- This hook looks up the commentstring directly, bypassing the broken treesitter path. + pre_hook = function(ctx) + return require("Comment.ft").get(vim.bo.filetype, ctx.ctype) or vim.bo.commentstring + end, }) end, }