Mercurial > vim
view src/testdir/test_backspace_opt.vim @ 11325:77f3b7316d8b v8.0.0548
patch 8.0.0548: saving the redo buffer only works one time
commit https://github.com/vim/vim/commit/d4863aa99e0527e9505c79cbeafc68a6832200bf
Author: Bram Moolenaar <Bram@vim.org>
Date: Fri Apr 7 19:50:12 2017 +0200
patch 8.0.0548: saving the redo buffer only works one time
Problem: Saving the redo buffer only works one time, resulting in the "."
command not working well for a function call inside another
function call. (Ingo Karkat)
Solution: Save the redo buffer at every user function call. (closes #1619)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Fri, 07 Apr 2017 20:00:04 +0200 |
parents | 3ee84d270ea7 |
children | f776ce5d4ed8 |
line wrap: on
line source
" Tests for 'backspace' settings :func Exec(expr) let str='' try exec a:expr catch /.*/ let str=v:exception endtry return str :endfunc func Test_backspace_option() set backspace= call assert_equal('', &backspace) set backspace=indent call assert_equal('indent', &backspace) set backspace=eol call assert_equal('eol', &backspace) set backspace=start call assert_equal('start', &backspace) " Add the value set backspace= set backspace=indent call assert_equal('indent', &backspace) set backspace+=eol call assert_equal('indent,eol', &backspace) set backspace+=start call assert_equal('indent,eol,start', &backspace) " Delete the value set backspace-=indent call assert_equal('eol,start', &backspace) set backspace-=start call assert_equal('eol', &backspace) set backspace-=eol call assert_equal('', &backspace) " Check the error call assert_equal(0, match(Exec('set backspace=ABC'), '.*E474')) call assert_equal(0, match(Exec('set backspace+=def'), '.*E474')) " NOTE: Vim doesn't check following error... "call assert_equal(0, match(Exec('set backspace-=ghi'), '.*E474')) " Check backwards compatibility with version 5.4 and earlier set backspace=0 call assert_equal('0', &backspace) set backspace=1 call assert_equal('1', &backspace) set backspace=2 call assert_equal('2', &backspace) call assert_false(match(Exec('set backspace=3'), '.*E474')) call assert_false(match(Exec('set backspace=10'), '.*E474')) " Cleared when 'compatible' is set set compatible call assert_equal('', &backspace) set nocompatible viminfo+=nviminfo endfunc " vim: shiftwidth=2 sts=2 expandtab