aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim/lsp.lua
diff options
context:
space:
mode:
authorMichael Lingelbach <m.j.lbach@gmail.com>2021-03-31 22:41:00 -0700
committerMichael Lingelbach <m.j.lbach@gmail.com>2021-03-31 22:41:00 -0700
commit92e106ba235a0f33a92b2a02006c400a519f7b86 (patch)
treeafeb6d9433a2726eb8af5c73dbce58c6081d201b /runtime/lua/vim/lsp.lua
parenta177820420d3de1614bff01321c0a54a2327fab3 (diff)
downloadrneovim-92e106ba235a0f33a92b2a02006c400a519f7b86.tar.gz
rneovim-92e106ba235a0f33a92b2a02006c400a519f7b86.tar.bz2
rneovim-92e106ba235a0f33a92b2a02006c400a519f7b86.zip
lsp: add on_reload callback for buffer edits outside of neovim
Diffstat (limited to 'runtime/lua/vim/lsp.lua')
-rw-r--r--runtime/lua/vim/lsp.lua9
1 files changed, 9 insertions, 0 deletions
diff --git a/runtime/lua/vim/lsp.lua b/runtime/lua/vim/lsp.lua
index 4110bd1910..91590a5a12 100644
--- a/runtime/lua/vim/lsp.lua
+++ b/runtime/lua/vim/lsp.lua
@@ -935,6 +935,15 @@ function lsp.buf_attach_client(bufnr, client_id)
-- First time, so attach and set up stuff.
vim.api.nvim_buf_attach(bufnr, false, {
on_lines = text_document_did_change_handler;
+ on_reload = function()
+ local params = { textDocument = { uri = uri; } }
+ for_each_buffer_client(bufnr, function(client, _)
+ if client.resolved_capabilities.text_document_open_close then
+ client.notify('textDocument/didClose', params)
+ end
+ text_document_did_open_handler(bufnr, client)
+ end)
+ end;
on_detach = function()
local params = { textDocument = { uri = uri; } }
for_each_buffer_client(bufnr, function(client, _)