From 802b5ba4d13b334d44bf1395693cb8e80e03bf97 Mon Sep 17 00:00:00 2001 From: DarkWiiPlayer Date: Mon, 8 Jul 2024 13:28:47 +0200 Subject: [PATCH] Add nvim document-highlight lua module --- vim/lua/lsp/document_highlight.lua | 32 ++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 vim/lua/lsp/document_highlight.lua diff --git a/vim/lua/lsp/document_highlight.lua b/vim/lua/lsp/document_highlight.lua new file mode 100644 index 0000000..e5b6cb2 --- /dev/null +++ b/vim/lua/lsp/document_highlight.lua @@ -0,0 +1,32 @@ +local document_highlight = {} + +vim.api.nvim_create_augroup('lsp_document_highlight', { + clear = false +}) + +function document_highlight.start(bufnr) + vim.api.nvim_clear_autocmds({ + buffer = bufnr, + group = 'lsp_document_highlight', + }) + vim.api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, { + group = 'lsp_document_highlight', + buffer = bufnr, + callback = vim.lsp.buf.document_highlight, + }) + vim.api.nvim_create_autocmd({ 'CursorMoved', 'CursorMovedI' }, { + group = 'lsp_document_highlight', + buffer = bufnr, + callback = vim.lsp.buf.clear_references, + }) +end + +function document_highlight.stop(bufnr) + vim.api.nvim_clear_autocmds({ + buffer = bufnr, + group = 'lsp_document_highlight', + }) + vim.lsp.buf.clear_references() +end + +return document_highlight