view src/testdir/test_blockedit.vim @ 13814:7ed76dcf0d94 v8.0.1779

patch 8.0.1779: deleting in a block selection causes problems commit https://github.com/vim/vim/commit/35e802e713382d7e76232ad344af7dcd577e43de Author: Bram Moolenaar <Bram@vim.org> Date: Mon Apr 30 17:21:03 2018 +0200 patch 8.0.1779: deleting in a block selection causes problems Problem: Deleting in a block selection causes problems. Solution: Check the length of the line before adding bd.textcol and bd.textlen. (Christian Brabandt, closes #2825)
author Christian Brabandt <cb@256bit.org>
date Mon, 30 Apr 2018 17:30:07 +0200
parents 4faf77b96432
children 70f1e352d599
line wrap: on
line source

" Test for block inserting
"
" TODO: rewrite test39.in into this new style test

func Test_blockinsert_indent()
  new
  filetype plugin indent on
  setlocal sw=2 et ft=vim
  call setline(1, ['let a=[', '  ''eins'',', '  ''zwei'',', '  ''drei'']'])
  call cursor(2, 3)
  exe "norm! \<c-v>2jI\\ \<esc>"
  call assert_equal(['let a=[', '      \ ''eins'',', '      \ ''zwei'',', '      \ ''drei'']'],
        \ getline(1,'$'))
  " reset to sane state
  filetype off
  bwipe!
endfunc

func Test_blockinsert_delete()
  new
  let _bs = &bs
  set bs=2
  call setline(1, ['case Arg is ', '        when Name_Async,', '        when Name_Num_Gangs,', 'end if;'])
  exe "norm! ggjVj\<c-v>$o$A\<bs>\<esc>"
  "call feedkeys("Vj\<c-v>$o$A\<bs>\<esc>", 'ti')
  call assert_equal(["case Arg is ", "        when Name_Async", "        when Name_Num_Gangs,", "end if;"],
        \ getline(1,'$'))
  " reset to sane state
  let &bs = _bs
  bwipe!
endfunc

" vim: shiftwidth=2 sts=2 expandtab