From f5c56f03bb9ee25c3d931034497dc76a5591b770 Mon Sep 17 00:00:00 2001 From: Björn Linse Date: Wed, 29 May 2019 10:05:00 +0200 Subject: api: allow nvim_buf_attach from lua using callbacks --- runtime/doc/api.txt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) (limited to 'runtime/doc/api.txt') diff --git a/runtime/doc/api.txt b/runtime/doc/api.txt index 22ad8e0633..e127ccae0c 100644 --- a/runtime/doc/api.txt +++ b/runtime/doc/api.txt @@ -199,6 +199,21 @@ paste a block of 6 lines, emits: > User reloads the buffer with ":edit", emits: > nvim_buf_detach_event[{buf}] + *api-buffer-updates-lua* +In-process lua plugins can also recieve buffer updates, in the form of lua +callbacks. These callbacks are called frequently in various contexts, buffer +contents or window layout should not be changed inside these |textlock|. + +|nvim_buf_attach| will take keyword args for the callbacks. "on_lines" will +receive parameters ("lines", {buf}, {changedtick}, {firstline}, {lastline}, {new_lastline}). +Unlike remote channels the text contents are not passed. The new text can be +accessed inside the callback as +`vim.api.nvim_buf_get_lines(buf, firstline, new_lastline, true)` +"on_changedtick" is invoked when |b:changedtick| was incremented but no text +was changed. The parameters recieved are ("changedtick", {buf}, {changedtick}). + + + ============================================================================== Buffer highlighting *api-highlights* -- cgit