aboutsummaryrefslogtreecommitdiff
path: root/runtime/lua/vim
diff options
context:
space:
mode:
authorMichael Lingelbach <m.j.lbach@gmail.com>2021-04-01 01:08:39 -0700
committerGitHub <noreply@github.com>2021-04-01 01:08:39 -0700
commit3d25a72a60323c9d6eab2daf9dbd4920b94b8a94 (patch)
tree6e0761477973ff1b5e807e19e135d32ca12bdf82 /runtime/lua/vim
parentf738f089daec493d13c316a01f40e239eafd390f (diff)
parent92e106ba235a0f33a92b2a02006c400a519f7b86 (diff)
downloadrneovim-3d25a72a60323c9d6eab2daf9dbd4920b94b8a94.tar.gz
rneovim-3d25a72a60323c9d6eab2daf9dbd4920b94b8a94.tar.bz2
rneovim-3d25a72a60323c9d6eab2daf9dbd4920b94b8a94.zip
Merge pull request #14264 from mjlbach/feature/handle_reloading_buffer
lsp: add on_reload callback for buffer edits outside of neovim
Diffstat (limited to 'runtime/lua/vim')
-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 f2c46ff10e..563ffc479e 100644
--- a/runtime/lua/vim/lsp.lua
+++ b/runtime/lua/vim/lsp.lua
@@ -941,6 +941,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, _)