" Tests for bracketed paste. " Bracketed paste only works with "xterm". Not in GUI. if has('gui_running') finish endif set term=xterm func Test_paste_normal_mode() new call setline(1, ['a', 'b', 'c']) 2 call feedkeys("\[200~foo\bar\[201~", 'xt') call assert_equal('bfoo', getline(2)) call assert_equal('bar', getline(3)) call assert_equal('c', getline(4)) normal . call assert_equal('barfoo', getline(3)) call assert_equal('bar', getline(4)) call assert_equal('c', getline(5)) bwipe! endfunc func Test_paste_insert_mode() new call setline(1, ['a', 'b', 'c']) 2 call feedkeys("i\[200~foo\bar\[201~ done\", 'xt') call assert_equal('foo', getline(2)) call assert_equal('bar doneb', getline(3)) call assert_equal('c', getline(4)) normal . call assert_equal('bar donfoo', getline(3)) call assert_equal('bar doneeb', getline(4)) call assert_equal('c', getline(5)) set ai et tw=10 call setline(1, ['a', ' b', 'c']) 2 call feedkeys("A\[200~foo\ bar bar bar\[201~\", 'xt') call assert_equal(' bfoo', getline(2)) call assert_equal(' bar bar bar', getline(3)) call assert_equal('c', getline(4)) set ai& et& tw=0 bwipe! endfunc func Test_paste_cmdline() call feedkeys(":a\[200~foo\bar\[201~b\\"\", 'xt') call assert_equal("\"afoo\barb", getreg(':')) endfunc