Mercurial > vim
comparison src/testdir/test_vim9_disassemble.vim @ 20089:7fc5d62fe2a5 v8.2.0600
patch 8.2.0600: Vim9: cannot read or write w:, t: and b: variables
Commit: https://github.com/vim/vim/commit/d3aac2917db38f8590648ee76eebfa178fc4c069
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Apr 19 14:32:17 2020 +0200
patch 8.2.0600: Vim9: cannot read or write w:, t: and b: variables
Problem: Vim9: cannot read or write w:, t: and b: variables.
Solution: Implement load and store for w:, t: and b: variables.
(closes #5950)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 19 Apr 2020 14:45:03 +0200 |
parents | 336483164ca6 |
children | a64c16ff98b8 |
comparison
equal
deleted
inserted
replaced
20088:004788f1261e | 20089:7fc5d62fe2a5 |
---|---|
6 echo "not" | 6 echo "not" |
7 endfunc | 7 endfunc |
8 | 8 |
9 let s:scriptvar = 4 | 9 let s:scriptvar = 4 |
10 let g:globalvar = 'g' | 10 let g:globalvar = 'g' |
11 let b:buffervar = 'b' | |
12 let w:windowvar = 'w' | |
13 let t:tabpagevar = 't' | |
11 | 14 |
12 def s:ScriptFuncLoad(arg: string) | 15 def s:ScriptFuncLoad(arg: string) |
13 let local = 1 | 16 let local = 1 |
14 buffers | 17 buffers |
15 echo arg | 18 echo arg |
16 echo local | 19 echo local |
17 echo v:version | 20 echo v:version |
18 echo s:scriptvar | 21 echo s:scriptvar |
19 echo g:globalvar | 22 echo g:globalvar |
23 echo b:buffervar | |
24 echo w:windowvar | |
25 echo t:tabpagevar | |
20 echo &tabstop | 26 echo &tabstop |
21 echo $ENVVAR | 27 echo $ENVVAR |
22 echo @z | 28 echo @z |
23 enddef | 29 enddef |
24 | 30 |
37 ' LOAD arg\[-1\].*' .. | 43 ' LOAD arg\[-1\].*' .. |
38 ' LOAD $0.*' .. | 44 ' LOAD $0.*' .. |
39 ' LOADV v:version.*' .. | 45 ' LOADV v:version.*' .. |
40 ' LOADS s:scriptvar from .*test_vim9_disassemble.vim.*' .. | 46 ' LOADS s:scriptvar from .*test_vim9_disassemble.vim.*' .. |
41 ' LOADG g:globalvar.*' .. | 47 ' LOADG g:globalvar.*' .. |
48 ' LOADB b:buffervar.*' .. | |
49 ' LOADW w:windowvar.*' .. | |
50 ' LOADT t:tabpagevar.*' .. | |
42 ' LOADENV $ENVVAR.*' .. | 51 ' LOADENV $ENVVAR.*' .. |
43 ' LOADREG @z.*', | 52 ' LOADREG @z.*', |
44 res) | 53 res) |
45 enddef | 54 enddef |
46 | 55 |
77 let localstr = 'abc' | 86 let localstr = 'abc' |
78 localstr = 'xyz' | 87 localstr = 'xyz' |
79 v:char = 'abc' | 88 v:char = 'abc' |
80 s:scriptvar = 'sv' | 89 s:scriptvar = 'sv' |
81 g:globalvar = 'gv' | 90 g:globalvar = 'gv' |
91 b:buffervar = 'bv' | |
92 w:windowvar = 'wv' | |
93 t:tabpagevar = 'tv' | |
82 &tabstop = 8 | 94 &tabstop = 8 |
83 $ENVVAR = 'ev' | 95 $ENVVAR = 'ev' |
84 @z = 'rv' | 96 @z = 'rv' |
85 enddef | 97 enddef |
86 | 98 |
97 'STOREV v:char.*' .. | 109 'STOREV v:char.*' .. |
98 's:scriptvar = ''sv''.*' .. | 110 's:scriptvar = ''sv''.*' .. |
99 ' STORES s:scriptvar in .*test_vim9_disassemble.vim.*' .. | 111 ' STORES s:scriptvar in .*test_vim9_disassemble.vim.*' .. |
100 'g:globalvar = ''gv''.*' .. | 112 'g:globalvar = ''gv''.*' .. |
101 ' STOREG g:globalvar.*' .. | 113 ' STOREG g:globalvar.*' .. |
114 'b:buffervar = ''bv''.*' .. | |
115 ' STOREB b:buffervar.*' .. | |
116 'w:windowvar = ''wv''.*' .. | |
117 ' STOREW w:windowvar.*' .. | |
118 't:tabpagevar = ''tv''.*' .. | |
119 ' STORET t:tabpagevar.*' .. | |
102 '&tabstop = 8.*' .. | 120 '&tabstop = 8.*' .. |
103 ' STOREOPT &tabstop.*' .. | 121 ' STOREOPT &tabstop.*' .. |
104 '$ENVVAR = ''ev''.*' .. | 122 '$ENVVAR = ''ev''.*' .. |
105 ' STOREENV $ENVVAR.*' .. | 123 ' STOREENV $ENVVAR.*' .. |
106 '@z = ''rv''.*' .. | 124 '@z = ''rv''.*' .. |