mirror of
https://github.com/neovim/neovim.git
synced 2025-09-09 04:48:18 +00:00
paste: use chansend() in Terminal-mode
This commit is contained in:
@@ -95,15 +95,23 @@ end
|
|||||||
|
|
||||||
-- Default paste function.
|
-- Default paste function.
|
||||||
local function _paste(data)
|
local function _paste(data)
|
||||||
|
local call = vim.api.nvim_call_function
|
||||||
|
local mode = call('mode', {})
|
||||||
|
if mode == 't' then
|
||||||
|
call('chansend',
|
||||||
|
{vim.api.nvim_buf_get_option(0, 'channel'), data})
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
|
||||||
-- local eof = (data == {''})
|
-- local eof = (data == {''})
|
||||||
local curline = vim.api.nvim_call_function('line', {'.'})
|
local curline = call('line', {'.'})
|
||||||
vim.api.nvim_buf_set_lines(
|
vim.api.nvim_buf_set_lines(
|
||||||
0,
|
0,
|
||||||
curline,
|
curline,
|
||||||
curline,
|
curline,
|
||||||
false,
|
false,
|
||||||
data)
|
data)
|
||||||
vim.api.nvim_call_function(
|
call(
|
||||||
'cursor',
|
'cursor',
|
||||||
{curline + #data, 9999999})
|
{curline + #data, 9999999})
|
||||||
-- TODO: do not redraw (slow!) until paste is finished.
|
-- TODO: do not redraw (slow!) until paste is finished.
|
||||||
|
Reference in New Issue
Block a user