From 0dc900d744434f9792495cd41a36eecdde587fbe Mon Sep 17 00:00:00 2001 From: Riley Bruins Date: Thu, 19 Jun 2025 03:48:12 -0700 Subject: [PATCH] fix(lsp): clear document_color autocmds #34573 **Problem:** When enabling document_color multiple times for the same buffer (or when toggling it on and off), duplicate autocmds are created since the previous ones are not cleared. **Solution:** Clear the appropriate buffer-local autocmds when enabling/disabling document color functionality. --- runtime/lua/vim/lsp/document_color.lua | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/runtime/lua/vim/lsp/document_color.lua b/runtime/lua/vim/lsp/document_color.lua index f721f1536d..ff1b557b5e 100644 --- a/runtime/lua/vim/lsp/document_color.lua +++ b/runtime/lua/vim/lsp/document_color.lua @@ -182,11 +182,19 @@ end local function buf_disable(bufnr) buf_clear(bufnr) reset_bufstate(bufnr, false) + api.nvim_clear_autocmds({ + buffer = bufnr, + group = document_color_augroup, + }) end --- @param bufnr integer local function buf_enable(bufnr) reset_bufstate(bufnr, true) + api.nvim_clear_autocmds({ + buffer = bufnr, + group = document_color_augroup, + }) api.nvim_buf_attach(bufnr, false, { on_reload = function(_, buf)