diff options
Diffstat (limited to 'data/vim/patches/8.1.0150')
-rw-r--r-- | data/vim/patches/8.1.0150 | 692 |
1 files changed, 0 insertions, 692 deletions
diff --git a/data/vim/patches/8.1.0150 b/data/vim/patches/8.1.0150 deleted file mode 100644 index a9ee674fe..000000000 --- a/data/vim/patches/8.1.0150 +++ /dev/null @@ -1,692 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0150 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0150 -Problem: Insufficient test coverage for Tcl. -Solution: Add more tests. (Dominique Pelle, closes #3140) -Files: src/testdir/test_tcl.vim - - -*** ../vim-8.1.0149/src/testdir/test_tcl.vim 2017-01-29 23:18:53.000000000 +0100 ---- src/testdir/test_tcl.vim 2018-07-04 22:33:49.173452418 +0200 -*************** -*** 4,23 **** - finish - end - -! function Test_tcldo() - " Check deleting lines does not trigger ml_get error. - new - call setline(1, ['one', 'two', 'three']) - tcldo ::vim::command %d_ - bwipe! - -! " Check switching to another buffer does not trigger ml_get error. - new - let wincount = winnr('$') - call setline(1, ['one', 'two', 'three']) - tcldo ::vim::command new - call assert_equal(wincount + 1, winnr('$')) - bwipe! - bwipe! - endfunc - ---- 4,637 ---- - finish - end - -! " Helper function as there is no builtin tcleval() function similar -! " to perleval, luaevel(), pyeval(), etc. -! func TclEval(tcl_expr) -! let s = split(execute('tcl ' . a:tcl_expr), "\n") -! return (len(s) == 0) ? '' : s[-1] -! endfunc -! -! func Test_tcldo() - " Check deleting lines does not trigger ml_get error. - new - call setline(1, ['one', 'two', 'three']) - tcldo ::vim::command %d_ - bwipe! - -! " Check that switching to another buffer does not trigger ml_get error. - new - let wincount = winnr('$') - call setline(1, ['one', 'two', 'three']) - tcldo ::vim::command new - call assert_equal(wincount + 1, winnr('$')) -+ %bwipe! -+ endfunc -+ -+ " Test :tcldo with a range -+ func Test_tcldo_range() -+ new -+ call setline(1, ['line1', 'line2', 'line3', 'line4']) -+ 2,3tcldo set line [string toupper $line] -+ call assert_equal(['line1', 'LINE2', 'LINE3', 'line4'], getline(1, '$')) -+ bwipe! -+ endfunc -+ -+ " Test ::vim::beep -+ func Test_vim_beep() -+ call assert_beeps('tcl ::vim::beep') -+ call assert_fails('tcl ::vim::beep x', 'wrong # args: should be "::vim::beep"') -+ endfunc -+ -+ " Test ::vim::buffer -+ func Test_vim_buffer() -+ " Test ::vim::buffer {nr} -+ e Xfoo1 -+ call setline(1, ['foobar']) -+ let bn1 = bufnr('%') -+ let b1 = TclEval('::vim::buffer ' . bn1) -+ call assert_equal(b1, TclEval('set ::vim::current(buffer)')) -+ -+ new Xfoo2 -+ call setline(1, ['barfoo']) -+ let bn2 = bufnr('%') -+ let b2 = TclEval('::vim::buffer ' . bn2) -+ call assert_equal(b2, TclEval('set ::vim::current(buffer)')) -+ -+ call assert_match('Xfoo1$', TclEval(b1 . ' name')) -+ call assert_match('Xfoo2$', TclEval(b2 . ' name')) -+ -+ " Test ::vim::buffer exists {nr} -+ call assert_match('^[1-9]\d*$', TclEval('::vim::buffer exists ' . bn1)) -+ call assert_match('^[1-9]\d*$', TclEval('::vim::buffer exists ' . bn2)) -+ call assert_equal('0', TclEval('::vim::buffer exists 54321')) -+ -+ " Test ::vim::buffer list -+ call assert_equal('2', TclEval('llength [::vim::buffer list]')) -+ call assert_equal(b1.' '.b2, TclEval('::vim::buffer list')) -+ tcl <<EOF -+ proc eachbuf { cmd } { -+ foreach b [::vim::buffer list] { $b command $cmd } -+ } -+ EOF -+ tcl eachbuf %s/foo/FOO/g -+ b! Xfoo1 -+ call assert_equal(['FOObar'], getline(1, '$')) -+ b! Xfoo2 -+ call assert_equal(['barFOO'], getline(1, '$')) -+ -+ call assert_fails('tcl ::vim::buffer', -+ \ 'wrong # args: should be "::vim::buffer option"') -+ call assert_fails('tcl ::vim::buffer ' . bn1 . ' x', -+ \ 'wrong # args: should be "::vim::buffer bufNumber"') -+ call assert_fails('tcl ::vim::buffer 4321', 'invalid buffer number') -+ call assert_fails('tcl ::vim::buffer x', -+ \ 'bad option "x": must be exists or list') -+ call assert_fails('tcl ::vim::buffer exists', -+ \ 'wrong # args: should be "::vim::buffer exists bufNumber"') -+ call assert_fails('tcl ::vim::buffer exists x', -+ \ 'expected integer but got "x"') -+ call assert_fails('tcl ::vim::buffer list x', -+ \ 'wrong # args: should be "::vim::buffer list "') -+ -+ tcl rename eachbuf "" -+ %bwipe! -+ endfunc -+ -+ " Test ::vim::option -+ func Test_vim_option() -+ set cc=3,5 -+ -+ " Test getting option 'cc' -+ call assert_equal('3,5', TclEval('::vim::option cc')) -+ call assert_equal('3,5', &cc) -+ -+ " Test setting option 'cc' (it returns the old option value) -+ call assert_equal('3,5', TclEval('::vim::option cc +4')) -+ call assert_equal('+4', &cc) -+ call assert_equal('+4', TclEval('::vim::option cc')) -+ -+ call assert_fails('tcl ::vim::option xxx', 'unknown vimOption') -+ call assert_fails('tcl ::vim::option', -+ \ 'wrong # args: should be "::vim::option vimOption ?value?"') -+ -+ set cc& -+ endfunc -+ -+ " Test ::vim::expr -+ func Test_vim_expr() -+ call assert_equal(string(char2nr('X')), -+ \ TclEval('::vim::expr char2nr("X")')) -+ -+ call assert_fails('tcl ::vim::expr x y', -+ \ 'wrong # args: should be "::vim::expr vimExpr"') -+ endfunc -+ -+ " Test ::vim::command -+ func Test_vim_command() -+ call assert_equal('hello world', -+ \ TclEval('::vim::command {echo "hello world"}')) -+ -+ " With the -quiet option, the error should silently be ignored. -+ call assert_equal('', TclEval('::vim::command -quiet xyz')) -+ -+ call assert_fails('tcl ::vim::command', -+ \ 'wrong # args: should be "::vim::command ?-quiet? exCommand"') -+ call assert_fails('tcl ::vim::command -foo xyz', 'unknown flag: -foo') -+ call assert_fails('tcl ::vim::command xyz', -+ \ 'E492: Not an editor command: xyz') -+ -+ " With the -quiet option, the error should silently be ignored. -+ call assert_equal('', TclEval('::vim::command -quiet xyz')) -+ endfunc -+ -+ " Test ::vim::window list -+ func Test_vim_window_list() -+ e Xfoo1 -+ new Xfoo2 -+ let w2 = TclEval('set ::vim::current(window)') -+ wincmd j -+ let w1 = TclEval('set ::vim::current(window)') -+ -+ call assert_equal('2', TclEval('llength [::vim::window list]')) -+ call assert_equal(w2.' '.w1, TclEval('::vim::window list')) -+ -+ call assert_fails('tcl ::vim::window x', 'unknown option') -+ call assert_fails('tcl ::vim::window list x', -+ \ 'wrong # args: should be "::vim::window option"') -+ -+ %bwipe -+ endfunc -+ -+ " Test output messages -+ func Test_output() -+ call assert_fails('tcl puts vimerr "an error"', 'an error') -+ tcl puts vimout "a message" -+ tcl puts "another message" -+ let messages = split(execute('message'), "\n") -+ call assert_equal('a message', messages[-2]) -+ call assert_equal('another message', messages[-1]) -+ -+ call assert_fails('tcl puts', -+ \ 'wrong # args: should be "puts ?-nonewline? ?channelId? string"') -+ endfunc -+ -+ " Test $win height (get and set window height) -+ func Test_window_height() -+ new -+ -+ " Test setting window height -+ tcl $::vim::current(window) height 2 -+ call assert_equal(2, winheight(0)) -+ -+ " Test getting window height -+ call assert_equal('2', TclEval('$::vim::current(window) height')) -+ -+ call assert_fails('tcl $::vim::current(window) height 2 2', 'wrong # args:') -+ call assert_fails('tcl $::vim::current(window) height x', -+ \ 'expected integer but got "x"') -+ bwipe -+ endfunc -+ -+ " Test $win cursor (get and set cursor) -+ func Test_window_cursor() -+ new -+ call setline(1, ['line1', 'line2', 'line3', 'line5']) -+ tcl set win $::vim::current(window) -+ -+ tcl $win cursor 2 4 -+ call assert_equal([0, 2, 4, 0], getpos('.')) -+ call assert_equal('row 2 column 4', TclEval('$win cursor')) -+ -+ " When setting ::vim::lbase to 0, line/col are counted from 0 -+ " instead of 1. -+ tcl set ::vim::lbase 0 -+ call assert_equal([0, 2, 4, 0], getpos('.')) -+ call assert_equal('row 1 column 3', TclEval('$win cursor')) -+ tcl $win cursor 2 4 -+ call assert_equal([0, 3, 5, 0], getpos('.')) -+ call assert_equal('row 2 column 4', TclEval('$win cursor')) -+ tcl set ::vim::lbase 1 -+ call assert_equal('row 3 column 5', TclEval('$win cursor')) -+ call assert_equal([0, 3, 5, 0], getpos('.')) -+ -+ " test $win cursor {$var} -+ call cursor(2, 3) -+ tcl array set here [$win cursor] -+ call assert_equal([0, 2, 3, 0], getpos('.')) -+ call cursor(3, 1) -+ call assert_equal([0, 3, 1, 0], getpos('.')) -+ tcl $win cursor here -+ call assert_equal([0, 2, 3, 0], getpos('.')) -+ call cursor(3, 1) -+ call assert_equal([0, 3, 1, 0], getpos('.')) -+ tcl $win cursor $here(row) $here(column) -+ call assert_equal([0, 2, 3, 0], getpos('.')) -+ -+ call assert_fails('tcl $win cursor 1 1 1', 'wrong # args:') -+ -+ tcl unset win here -+ bwipe! -+ endfunc -+ -+ " Test $win buffer -+ func Test_window_buffer() -+ new Xfoo1 -+ new Xfoo2 -+ tcl set b2 $::vim::current(buffer) -+ tcl set w2 $::vim::current(window) -+ wincmd j -+ tcl set b1 $::vim::current(buffer) -+ tcl set w1 $::vim::current(window) -+ -+ call assert_equal(TclEval('set b1'), TclEval('$w1 buffer')) -+ call assert_equal(TclEval('set b2'), TclEval('$w2 buffer')) -+ call assert_equal(string(bufnr('Xfoo1')), TclEval('[$w1 buffer] number')) -+ call assert_equal(string(bufnr('Xfoo2')), TclEval('[$w2 buffer] number')) -+ -+ call assert_fails('tcl $w1 buffer x', 'wrong # args:') -+ -+ tcl unset b1 b2 w1 w2 -+ %bwipe -+ endfunc -+ -+ " Test $win command -+ func Test_window_command() -+ new Xfoo1 -+ call setline(1, ['FOObar']) -+ new Xfoo2 -+ call setline(1, ['fooBAR']) -+ tcl set w2 $::vim::current(window) -+ wincmd j -+ tcl set w1 $::vim::current(window) -+ -+ tcl $w1 command "norm VU" -+ tcl $w2 command "norm Vu" -+ b! Xfoo1 -+ call assert_equal('FOOBAR', getline(1)) -+ b! Xfoo2 -+ call assert_equal('foobar', getline(1)) -+ -+ call assert_fails('tcl $w1 command xyz', -+ \ 'E492: Not an editor command: xyz') -+ tcl $w1 command -quiet xyz -+ -+ tcl unset w1 w2 -+ %bwipe! -+ endfunc -+ -+ " Test $win expr -+ func Test_window_expr() -+ new Xfoo1 -+ new Xfoo2 -+ tcl set w2 $::vim::current(window) -+ wincmd j -+ tcl set w1 $::vim::current(window) -+ -+ call assert_equal('Xfoo1', TclEval('$w1 expr bufname("%")')) -+ call assert_equal('Xfoo2', TclEval('$w2 expr bufname("%")')) -+ -+ call assert_fails('tcl $w1 expr', 'wrong # args:') -+ call assert_fails('tcl $w1 expr x x', 'wrong # args:') -+ -+ tcl unset w1 w2 -+ %bwipe -+ endfunc -+ -+ " Test $win option -+ func Test_window_option() -+ new Xfoo1 -+ new Xfoo2 -+ tcl set w2 $::vim::current(window) -+ wincmd j -+ tcl set w1 $::vim::current(window) -+ -+ " Test setting window option -+ tcl $w1 option syntax java -+ tcl $w2 option syntax rust -+ -+ call assert_equal('java', &syntax) -+ wincmd k -+ call assert_equal('rust', &syntax) -+ -+ " Test getting window option -+ call assert_equal('java', TclEval('$w1 option syntax')) -+ call assert_equal('rust', TclEval('$w2 option syntax')) -+ -+ tcl unset w1 w2 -+ %bwipe -+ endfunc -+ -+ " Test $win delcmd {cmd} -+ func Test_window_delcmd() -+ new -+ tcl $::vim::current(window) delcmd [list set msg "window deleted"] -+ call assert_fails('tcl set msg', "can't read \"msg\": no such variable") -+ q -+ call assert_equal('window deleted', TclEval('set msg')) -+ -+ call assert_fails('tcl $::vim::current(window) delcmd', 'wrong # args') -+ -+ tcl unset msg -+ bwipe -+ endfunc -+ -+ " Test $buf name -+ func Test_buffer_name() -+ " Test buffer name with a named buffer -+ new Xfoo -+ call assert_equal(expand('%:p'), TclEval('$::vim::current(buffer) name')) -+ bwipe -+ -+ " Test buffer name with an unnamed buffer -+ new -+ call assert_equal('', TclEval('$::vim::current(buffer) name')) -+ -+ call assert_fails('tcl $::vim::current(buffer) name x', 'wrong # args:') -+ -+ bwipe -+ endfunc -+ -+ " Test $buf number -+ func Test_buffer_number() -+ new -+ call assert_equal(string(bufnr('%')), TclEval('$::vim::current(buffer) number')) -+ new -+ call assert_equal(string(bufnr('%')), TclEval('$::vim::current(buffer) number')) -+ -+ call assert_fails('tcl $::vim::current(buffer) number x', 'wrong # args:') -+ -+ %bwipe -+ endfunc -+ -+ " Test $buf count and $buf last -+ func Test_buffer_count() -+ new -+ call setline(1, ['one', 'two', 'three']) -+ call assert_equal('3', TclEval('$::vim::current(buffer) count')) -+ call assert_equal('3', TclEval('$::vim::current(buffer) last')) -+ -+ " Check that $buf count and $buf last differ when ::vim::lbase is 0. -+ tcl set ::vim::lbase 0 -+ call assert_equal('3', TclEval('$::vim::current(buffer) count')) -+ call assert_equal('2', TclEval('$::vim::current(buffer) last')) -+ -+ call assert_fails('tcl $::vim::current(buffer) count x', 'wrong # args:') -+ call assert_fails('tcl $::vim::current(buffer) last x', 'wrong # args:') -+ -+ tcl set ::vim::lbase 1 -+ bwipe! -+ endfunc -+ -+ " Test $buf delete (delete line(s) in buffer) -+ func Test_buffer_delete() -+ new -+ call setline(1, ['one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight']) -+ tcl $::vim::current(buffer) delete 4 6 -+ tcl $::vim::current(buffer) delete 2 -+ call assert_equal(['one', 'three', 'seven', 'eight'], getline(1, '$')) -+ -+ call assert_fails('tcl $::vim::current(buffer) delete -1', 'line number out of range') -+ call assert_fails('tcl $::vim::current(buffer) delete 0', 'line number out of range') -+ call assert_fails('tcl $::vim::current(buffer) delete 5', 'line number out of range') -+ -+ call assert_fails('tcl $::vim::current(buffer) delete', 'wrong # args:') -+ call assert_fails('tcl $::vim::current(buffer) delete 1 2 3', 'wrong # args:') -+ -+ bwipe! -+ endfunc -+ -+ " Test $buf insert (insert line(s) in buffer) -+ func Test_buffer_insert() -+ new -+ tcl set buf $::vim::current(buffer) -+ tcl $buf insert 1 "first" -+ tcl $buf insert 2 "second" -+ tcl $buf insert 2 "third" -+ tcl $buf insert 4 "fourth" -+ tcl $buf insert 1 "fifth" -+ call assert_equal(['fifth', 'first', 'third', 'second', 'fourth', ''], getline(1, '$')) -+ -+ call assert_fails('tcl $buf insert -1 "x"', 'line number out of range') -+ call assert_fails('tcl $buf insert 0 "x"', 'line number out of range') -+ call assert_fails('tcl $buf insert 7 "x"', 'line number out of range') -+ -+ tcl unset buf -+ bwipe! -+ endfunc -+ -+ " Test $buf append (append line in buffer) -+ func Test_buffer_append() -+ new -+ tcl set buf $::vim::current(buffer) -+ tcl $buf append 1 "first" -+ tcl $buf append 2 "second" -+ tcl $buf append 2 "third" -+ tcl $buf append 4 "fourth" -+ tcl $buf append 1 "fifth" -+ call assert_equal(['', 'fifth', 'first', 'third', 'second', 'fourth'], getline(1, '$')) -+ -+ call assert_fails('tcl $buf append -1 "x"', 'line number out of range') -+ call assert_fails('tcl $buf append 0 "x"', 'line number out of range') -+ call assert_fails('tcl $buf append 7 "x"', 'line number out of range') -+ -+ call assert_fails('tcl $buf append', 'wrong # args:') -+ call assert_fails('tcl $buf append 1 x x', 'wrong # args:') -+ -+ tcl unset buf -+ bwipe! -+ endfunc -+ -+ " Test $buf set (replacing line(s) in a buffer) -+ func Test_buffer_set() -+ new -+ call setline(1, ['line1', 'line2', 'line3', 'line4', 'line5']) -+ tcl $::vim::current(buffer) set 2 a -+ call assert_equal(['line1', 'a', 'line3', 'line4', 'line5'], getline(1, '$')) -+ tcl $::vim::current(buffer) set 3 4 b -+ call assert_equal(['line1', 'a', 'b', 'line5'], getline(1, '$')) -+ tcl $::vim::current(buffer) set 4 3 c -+ call assert_equal(['line1', 'a', 'c'], getline(1, '$')) -+ -+ call assert_fails('tcl $::vim::current(buffer) set 0 "x"', 'line number out of range') -+ call assert_fails('tcl $::vim::current(buffer) set 5 "x"', 'line number out of range') -+ -+ call assert_fails('tcl $::vim::current(buffer) set', 'wrong # args:') -+ bwipe! -+ endfunc -+ -+ " Test $buf get (get line(s) from buffer) -+ func Test_buffer_get() -+ new -+ call setline(1, ['first line', 'two', 'three', 'last line']) -+ tcl set buf $::vim::current(buffer) -+ -+ call assert_equal('first line', TclEval('$buf get top')) -+ call assert_equal('first line', TclEval('$buf get begin')) -+ call assert_equal('last line', TclEval('$buf get bottom')) -+ call assert_equal('last line', TclEval('$buf get last')) -+ -+ call assert_equal('first line', TclEval('$buf get 1')) -+ call assert_equal('two', TclEval('$buf get 2')) -+ call assert_equal('three', TclEval('$buf get 3')) -+ call assert_equal('last line', TclEval('$buf get 4')) -+ -+ call assert_equal('two three', TclEval('$buf get 2 3')) -+ call assert_equal('two three', TclEval('$buf get 3 2')) -+ call assert_equal('three {last line}', TclEval('$buf get 3 last')) -+ -+ call assert_fails('tcl $buf get -1', 'line number out of range') -+ call assert_fails('tcl $buf get 0', 'line number out of range') -+ call assert_fails('tcl $buf get 5', 'line number out of range') -+ call assert_fails('tcl $buf get 0 1', 'line number out of range') -+ -+ call assert_fails('tcl $::vim::current(buffer) get x', 'expected integer but got "x"') -+ call assert_fails('tcl $::vim::current(buffer) get 1 1 1', 'wrong # args:') -+ -+ tcl unset buf - bwipe! -+ endfunc -+ -+ " Test $buf mark (get position of a mark) -+ func Test_buffer_mark() -+ new -+ call setline(1, ['one', 'two', 'three', 'four']) -+ /three -+ norm! ma -+ norm! jllmB -+ -+ call assert_equal('row 3 column 1', TclEval('$::vim::current(buffer) mark a')) -+ call assert_equal('row 4 column 3', TclEval('$::vim::current(buffer) mark B')) -+ -+ call assert_fails('tcl $::vim::current(buffer) mark /', 'invalid mark name') -+ call assert_fails('tcl $::vim::current(buffer) mark z', 'mark not set') -+ call assert_fails('tcl $::vim::current(buffer) mark', 'wrong # args:') -+ -+ delmarks aB - bwipe! - endfunc - -+ " Test $buf option (test and set option in context of a buffer) -+ func Test_buffer_option() -+ new Xfoo1 -+ tcl set b1 $::vim::current(buffer) -+ new Xfoo2 -+ tcl set b2 $::vim::current(buffer) -+ -+ tcl $b1 option foldcolumn 2 -+ tcl $b2 option foldcolumn 3 -+ -+ call assert_equal(3, &foldcolumn) -+ wincmd j -+ call assert_equal(2, &foldcolumn) -+ -+ call assert_equal('2', TclEval('$b1 option foldcolumn')) -+ call assert_equal('3', TclEval('$b2 option foldcolumn')) -+ -+ call assert_fails('tcl $::vim::current(buffer) option', 'wrong # args:') -+ -+ set foldcolumn& -+ tcl unset b1 b2 -+ %bwipe -+ endfunc -+ -+ " Test $buf expr (evaluate vim expression) -+ func Test_buffer_expr() -+ new Xfoo1 -+ norm ifoo1 -+ tcl set b1 $::vim::current(buffer) -+ -+ new Xfoo2 -+ norm ifoo2 -+ tcl set b2 $::vim::current(buffer) -+ -+ call assert_equal('foo1', TclEval('$b1 expr getline(1)')) -+ call assert_equal('foo2', TclEval('$b2 expr getline(1)')) -+ -+ call assert_fails('tcl expr', 'wrong # args:') -+ -+ tcl unset b1 b2 -+ %bwipe! -+ endfunc -+ -+ " Test $buf delcmd {cmd} (command executed when buffer is deleted) -+ func Test_buffer_delcmd() -+ new Xfoo -+ split -+ tcl $::vim::current(buffer) delcmd [list set msg "buffer deleted"] -+ q -+ call assert_fails('tcl set msg', "can't read \"msg\": no such variable") -+ q -+ call assert_equal('buffer deleted', TclEval('set msg')) -+ -+ call assert_fails('tcl $::vim::current(window) delcmd', 'wrong # args') -+ call assert_fails('tcl $::vim::current(window) delcmd x x', 'wrong # args') -+ -+ tcl unset msg -+ %bwipe -+ endfunc -+ -+ func Test_vim_current() -+ " Only test errors as ::vim::current(...) is already indirectly -+ " tested by many other tests. -+ call assert_fails('tcl $::vim::current(buffer)', 'wrong # args:') -+ call assert_fails('tcl $::vim::current(window)', 'wrong # args:') -+ endfunc -+ -+ " Test $buf windows (windows list of a buffer) -+ func Test_buffer_windows() -+ new Xfoo -+ split -+ new Xbar -+ split -+ vsplit -+ -+ tcl set bar_wl [$::vim::current(buffer) windows] -+ 2wincmd j -+ tcl set foo_wl [$::vim::current(buffer) windows] -+ -+ call assert_equal('2', TclEval('llength $foo_wl')) -+ call assert_equal('3', TclEval('llength $bar_wl')) -+ -+ call assert_fails('tcl $::vim::current(buffer) windows x', 'wrong # args:') -+ -+ tcl unset bar_wl foo_wl -+ %bwipe -+ endfunc -+ -+ " Test :tclfile -+ func Test_tclfile() -+ call delete('Xtcl_file') -+ call writefile(['set pi [format "%.2f" [expr acos(-1.0)]]'], 'Xtcl_file') -+ call setfperm('Xtcl_file', 'r-xr-xr-x') -+ -+ tclfile Xtcl_file -+ call assert_equal('3.14', TclEval('set pi')) -+ -+ tcl unset pi -+ call delete('Xtcl_file') -+ endfunc -+ -+ " Test :tclfile with syntax error in tcl script -+ func Test_tclfile_error() -+ call delete('Xtcl_file') -+ call writefile(['xyz'], 'Xtcl_file') -+ call setfperm('Xtcl_file', 'r-xr-xr-x') -+ -+ call assert_fails('tclfile Xtcl_file', 'invalid command name "xyz"') -+ -+ call delete('Xtcl_file') -+ endfunc -+ -+ " Test exiting current Tcl interprepter and re-creating one. -+ func Test_tcl_exit() -+ tcl set foo "foo" -+ call assert_fails('tcl exit 3', 'E572: exit code 3') -+ -+ " The Tcl interpreter should have been deleted and a new one -+ " is re-created with the next :tcl command. -+ call assert_fails('tcl set foo', "can't read \"foo\": no such variable") -+ tcl set bar "bar" -+ call assert_equal('bar', TclEval('set bar')) -+ -+ tcl unset bar -+ endfunc -*** ../vim-8.1.0149/src/version.c 2018-07-04 22:26:24.515946368 +0200 ---- src/version.c 2018-07-04 22:36:32.324478980 +0200 -*************** -*** 791,792 **** ---- 791,794 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 150, - /**/ - --- -hundred-and-one symptoms of being an internet addict: -180. You maintain more than six e-mail addresses. - - /// 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 /// |