To: vim_dev@googlegroups.com Subject: Patch 7.4.2208 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ------------ Patch 7.4.2208 Problem: Test for mappings is old style. Solution: Convert the test to new style. Files: src/testdir/test_mapping.vim, src/testdir/test_mapping.in, src/testdir/test_mapping.ok, src/Makefile, src/testdir/test_alot.vim, src/testdir/Make_all.mak *** ../vim-7.4.2207/src/testdir/test_mapping.vim 2016-08-14 15:31:02.050149138 +0200 --- src/testdir/test_mapping.vim 2016-08-14 15:20:51.159838634 +0200 *************** *** 0 **** --- 1,100 ---- + " Tests for mappings and abbreviations + + if !has('multi_byte') + finish + endif + + func Test_abbreviation() + " abbreviation with 0x80 should work + inoreab чкпр vim + call feedkeys("Goчкпр \", "xt") + call assert_equal('vim ', getline('$')) + iunab чкпр + set nomodified + endfunc + + func Test_map_ctrl_c_insert() + " mapping of ctrl-c in Insert mode + set cpo-=< cpo-=k + inoremap + cnoremap dummy + cunmap + call feedkeys("GoTEST2: CTRL-C |\A|\", "xt") + call assert_equal('TEST2: CTRL-C |A|', getline('$')) + unmap! + set nomodified + endfunc + + func Test_map_ctrl_c_visual() + " mapping of ctrl-c in Visual mode + vnoremap :$put ='vmap works' + call feedkeys("GV\\", "xt") + call assert_equal('vmap works', getline('$')) + vunmap + set nomodified + endfunc + + func Test_map_langmap() + " langmap should not get remapped in insert mode + inoremap { FAIL_ilangmap + set langmap=+{ langnoremap + call feedkeys("Go+\", "xt") + call assert_equal('+', getline('$')) + + " Insert-mode expr mapping with langmap + inoremap { "FAIL_iexplangmap" + call feedkeys("Go+\", "xt") + call assert_equal('+', getline('$')) + iunmap { + + " langmap should not get remapped in Command-line mode + cnoremap { FAIL_clangmap + call feedkeys(":call append(line('$'), '+')\", "xt") + call assert_equal('+', getline('$')) + cunmap { + + " Command-line mode expr mapping with langmap + cnoremap { "FAIL_cexplangmap" + call feedkeys(":call append(line('$'), '+')\", "xt") + call assert_equal('+', getline('$')) + cunmap { + set nomodified + endfunc + + func Test_map_feedkeys() + " issue #212 (feedkeys insert mapping at current position) + nnoremap . :call feedkeys(".", "in") + call setline('$', ['a b c d', 'a b c d']) + $-1 + call feedkeys("0qqdw.ifoo\qj0@q\", "xt") + call assert_equal(['fooc d', 'fooc d'], getline(line('$') - 1, line('$'))) + unmap . + set nomodified + endfunc + + func Test_map_cursor() + " U works only within a single line + imapclear + imap ( ()U + call feedkeys("G2o\ki\Test1: text with a (here some more text\k.", "xt") + call assert_equal('Test1: text with a (here some more text)', getline(line('$') - 2)) + call assert_equal('Test1: text with a (here some more text)', getline(line('$') - 1)) + + " test undo + call feedkeys("G2o\ki\Test2: text wit a (here some more text [und undo]\u\k.u", "xt") + call assert_equal('', getline(line('$') - 2)) + call assert_equal('Test2: text wit a (here some more text [und undo])', getline(line('$') - 1)) + set nomodified + imapclear + endfunc + + " This isn't actually testing a mapping, but similar use of CTRL-G U as above. + func Test_break_undo() + :set whichwrap=<,>,[,] + call feedkeys("G4o2k", "xt") + exe ":norm! iTest3: text with a (parenthesis here\U\new line here\\\." + call assert_equal('new line here', getline(line('$') - 3)) + call assert_equal('Test3: text with a (parenthesis here', getline(line('$') - 2)) + call assert_equal('new line here', getline(line('$') - 1)) + set nomodified + endfunc *** ../vim-7.4.2207/src/testdir/test_mapping.in 2015-09-01 19:25:58.324615363 +0200 --- src/testdir/test_mapping.in 1970-01-01 01:00:00.000000000 +0100 *************** *** 1,72 **** - Test for mappings and abbreviations - - STARTTEST - :so small.vim - :so mbyte.vim - :set encoding=utf-8 - : " abbreviations with р (0x80) should work - :inoreab чкпр vim - GAчкпр -  - :" mapping of ctrl-c in Insert mode - :set cpo-=< cpo-=k - :inoremap - :cnoremap dummy - :cunmap - GA - TEST2: CTRL-C |A| -  - :unmap - :unmap! - :" - :" mapping of ctrl-c in Visual mode - :vnoremap :$put ='vmap works' - GV - :vunmap - :" - :" langmap should not get remapped in insert mode - :inoremap { FAIL_ilangmap - :set langmap=+{ langnoremap - o+ - :" Insert-mode expr mapping with langmap - :inoremap { "FAIL_iexplangmap" - o+ - :" langmap should not get remapped in Command-line mode - :cnoremap { FAIL_clangmap - :call append(line('$'), '+') - :cunmap { - :" Command-line mode expr mapping with langmap - :cnoremap { "FAIL_cexplangmap" - :call append(line('$'), '+') - :cunmap { - :" - :" issue #212 (feedkeys insert mapping at current position) - :nnoremap . :call feedkeys(".", "in") - :/^a b - 0qqdw.ifooqj0@q:unmap . - - :" U works only within a single line - :imapclear - :imap ( ()U - G2oki - Test1: text with a (here some more textk. - :" test undo - G2oki - Test2: text wit a (here some more text [und undo]uk.u - :" - :imapclear - :set whichwrap=<,>,[,] - G3o2k - :exe ":norm! iTest3: text with a (parenthesis here\U\new line here\\\." - - - - :/^test/,$w! test.out - :qa! - ENDTEST - - test starts here: - - a b c d - a b c d - --- 0 ---- *** ../vim-7.4.2207/src/testdir/test_mapping.ok 2015-09-01 19:25:58.324615363 +0200 --- src/testdir/test_mapping.ok 1970-01-01 01:00:00.000000000 +0100 *************** *** 1,22 **** - test starts here: - - fooc d - fooc d - vim - TEST2: CTRL-C |A| - - vmap works - + - + - + - + - - Test1: text with a (here some more text) - Test1: text with a (here some more text) - - - Test2: text wit a (here some more text [und undo]) - - new line here - Test3: text with a (parenthesis here - new line here --- 0 ---- *** ../vim-7.4.2207/src/Makefile 2016-08-12 22:22:01.176781877 +0200 --- src/Makefile 2016-08-14 14:22:51.068344798 +0200 *************** *** 2028,2034 **** test_listchars \ test_listlbr \ test_listlbr_utf8 \ - test_mapping \ test_marks \ test_nested_function \ test_search_mbyte \ --- 2028,2033 ---- *************** *** 2094,2099 **** --- 2093,2099 ---- test_largefile \ test_lispwords \ test_man \ + test_mapping \ test_match \ test_matchadd_conceal \ test_matchadd_conceal_utf8 \ *** ../vim-7.4.2207/src/testdir/test_alot.vim 2016-08-07 13:48:05.001106411 +0200 --- src/testdir/test_alot.vim 2016-08-14 14:23:33.267966473 +0200 *************** *** 23,28 **** --- 23,29 ---- source test_lispwords.vim source test_match.vim source test_menu.vim + source test_mapping.vim source test_messages.vim source test_partial.vim source test_popup.vim *** ../vim-7.4.2207/src/testdir/Make_all.mak 2016-08-12 22:22:01.172781914 +0200 --- src/testdir/Make_all.mak 2016-08-14 14:23:02.064246211 +0200 *************** *** 98,104 **** test_insertcount.out \ test_listchars.out \ test_listlbr.out \ - test_mapping.out \ test_marks.out \ test_nested_function.out \ test_search_mbyte.out \ --- 98,103 ---- *** ../vim-7.4.2207/src/version.c 2016-08-13 16:39:10.485015010 +0200 --- src/version.c 2016-08-14 15:25:59.692963468 +0200 *************** *** 765,766 **** --- 765,768 ---- { /* Add new patch number below this line */ + /**/ + 2208, /**/ -- Computers are useless. They can only give you answers. -- Pablo Picasso /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ an exciting new programming language -- http://www.Zimbu.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///