From d2e834de48b94d5760d6b024403c33c5f3977b06 Mon Sep 17 00:00:00 2001 From: Tomas Slusny Date: Sun, 10 Mar 2024 13:30:03 +0100 Subject: [PATCH] fix: Check if diff treesitter parser exists Signed-off-by: Tomas Slusny --- lua/CopilotChat/diff.lua | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/lua/CopilotChat/diff.lua b/lua/CopilotChat/diff.lua index b1497356..3f54dd07 100644 --- a/lua/CopilotChat/diff.lua +++ b/lua/CopilotChat/diff.lua @@ -30,7 +30,7 @@ local function create_buf() local bufnr = vim.api.nvim_create_buf(false, true) vim.api.nvim_buf_set_name(bufnr, 'copilot-diff') vim.bo[bufnr].filetype = 'diff' - vim.treesitter.start(bufnr, 'diff') + vim.bo[bufnr].syntax = 'diff' return bufnr end @@ -93,8 +93,11 @@ function Diff:show(a, b, filetype, winnr) end vim.api.nvim_buf_set_extmark(self.bufnr, self.mark_ns, 0, 0, opts) - vim.treesitter.start(self.bufnr, 'diff') - vim.bo[self.bufnr].syntax = filetype + local ok, parser = pcall(vim.treesitter.get_parser, self.bufnr, 'diff') + if ok and parser then + vim.treesitter.start(self.bufnr, 'diff') + vim.bo[self.bufnr].syntax = filetype + end end function Diff:restore(winnr, bufnr)