@@ -16,11 +16,10 @@ local function delete(name)
1616 print (" -- deleted buffer " .. name )
1717end
1818
19- local function attach (name , force )
19+ local function attach (name , current , content )
2020 local buffer = nil
21- if force then
21+ if current then
2222 buffer = vim .api .nvim_get_current_buf ()
23- utils .buffer .set_content (buffer , " " )
2423 else
2524 buffer = vim .api .nvim_create_buf (true , true )
2625 vim .api .nvim_set_option_value (' fileformat' , ' unix' , { buf = buffer })
@@ -36,6 +35,10 @@ local function attach(name, force)
3635 buffer_id_map [name ] = buffer
3736 ticks [buffer ] = 0
3837
38+ if content ~= nil then
39+ controller :send (0 , 0 , content )
40+ end
41+
3942 -- hook serverbound callbacks
4043 -- TODO breaks when deleting whole lines at buffer end
4144 vim .api .nvim_buf_attach (buffer , false , {
@@ -77,6 +80,7 @@ local function attach(name, force)
7780 end , 20 ) -- wait 20ms before polling again because it overwhelms libuv?
7881
7982 print (" ++ attached to buffer " .. name )
83+ return controller
8084end
8185
8286local function detach (name )
0 commit comments