From 0dea44f93ce925baedf0f2d39d799f36671986b6 Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Sun, 8 Sep 2019 13:48:46 -0700 Subject: paste/cmdline: discard all chunks after first line Problem: If multiple paste "chunks" are streamed, chunks after the first line are pasted into the buffer. Solution: Check for cmdline-mode for all chunks in a paste-stream. --- src/nvim/lua/vim.lua | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) (limited to 'src/nvim/lua/vim.lua') diff --git a/src/nvim/lua/vim.lua b/src/nvim/lua/vim.lua index e76dd9d062..7d5dc0bffc 100644 --- a/src/nvim/lua/vim.lua +++ b/src/nvim/lua/vim.lua @@ -191,10 +191,8 @@ paste = (function() local line1, _ = string.gsub(lines[1], '[\r\n\012\027]', ' ') -- Scrub. vim.api.nvim_input(line1) vim.api.nvim_set_option('paste', false) - elseif mode == 'i' or mode == 'R' then - vim.api.nvim_put(lines, 'c', false, true) - else - vim.api.nvim_put(lines, 'c', true, true) + elseif mode ~= 'c' then + vim.api.nvim_put(lines, 'c', (mode ~= 'i' and mode ~= 'R'), true) end if phase ~= -1 and (now - tdots >= 100) then local dots = ('.'):rep(tick % 4) -- cgit