From 1143b416ab7d8bb1707dab2be2cd9e191f9a03e4 Mon Sep 17 00:00:00 2001 From: Thiago de Arruda Date: Fri, 25 Sep 2015 10:30:20 -0300 Subject: tui: Don't use 'pastetoggle' for automatic pasting Add a new special key that can be used by UIs to toggle the 'paste' option and use it in the TUI instead of the user's 'pastetoggle' value. Close #2843 #2092 --- test/functional/ui/input_spec.lua | 70 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 70 insertions(+) (limited to 'test/functional') diff --git a/test/functional/ui/input_spec.lua b/test/functional/ui/input_spec.lua index 81af908045..a7c8e02def 100644 --- a/test/functional/ui/input_spec.lua +++ b/test/functional/ui/input_spec.lua @@ -2,6 +2,7 @@ local helpers = require('test.functional.helpers') local clear, execute, nvim = helpers.clear, helpers.execute, helpers.nvim local feed, next_message, eq = helpers.feed, helpers.next_message, helpers.eq local expect = helpers.expect +local Screen = require('test.functional.ui.screen') describe('mappings', function() local cid @@ -40,7 +41,76 @@ describe('mappings', function() end) end) +describe('feeding large chunks of input with ', function() + local screen + before_each(function() + clear() + screen = Screen.new() + screen:attach() + execute('set ruler') + end) + + it('ok', function() + local t = {} + for i = 1, 20000 do + t[i] = 'item ' .. tostring(i) + end + feed('i') + screen:expect([[ + ^ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + ~ | + -- INSERT (paste) -- | + ]]) + feed(table.concat(t, '')) + screen:expect([[ + item 19988 | + item 19989 | + item 19990 | + item 19991 | + item 19992 | + item 19993 | + item 19994 | + item 19995 | + item 19996 | + item 19997 | + item 19998 | + item 19999 | + item 20000^ | + -- INSERT (paste) -- | + ]]) + feed('') + screen:expect([[ + item 19988 | + item 19989 | + item 19990 | + item 19991 | + item 19992 | + item 19993 | + item 19994 | + item 19995 | + item 19996 | + item 19997 | + item 19998 | + item 19999 | + item 20000^ | + -- INSERT -- 20000,11 Bot | + ]]) + end) +end) + describe('input utf sequences that contain CSI/K_SPECIAL', function() + before_each(clear) it('ok', function() feed('i…') expect('…') -- cgit