1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
" Test for 'pastetoggle'
func Test_pastetoggle()
new
set pastetoggle=<F4>
set nopaste
call feedkeys("iHello\<F4>", 'xt')
call assert_true(&paste)
call feedkeys("i\<F4>", 'xt')
call assert_false(&paste)
call assert_equal('Hello', getline(1))
" command-line completion for 'pastetoggle' value
call feedkeys(":set pastetoggle=\<Tab>\<C-B>\"\<CR>", 'xt')
call assert_equal('"set pastetoggle=<F4>', @:)
set pastetoggle&
bwipe!
endfunc
" Test for restoring option values when 'paste' is disabled
func Test_paste_opt_restore()
set autoindent expandtab ruler showmatch
if has('rightleft')
set revins hkmap
endif
set smarttab softtabstop=3 textwidth=27 wrapmargin=12
if has('vartabs')
set varsofttabstop=10,20
endif
" enabling 'paste' should reset the above options
set paste
call assert_false(&autoindent)
call assert_false(&expandtab)
if has('rightleft')
call assert_false(&revins)
call assert_false(&hkmap)
endif
call assert_false(&ruler)
call assert_false(&showmatch)
call assert_false(&smarttab)
call assert_equal(0, &softtabstop)
call assert_equal(0, &textwidth)
call assert_equal(0, &wrapmargin)
if has('vartabs')
call assert_equal('', &varsofttabstop)
endif
" disabling 'paste' should restore the option values
set nopaste
call assert_true(&autoindent)
call assert_true(&expandtab)
if has('rightleft')
call assert_true(&revins)
call assert_true(&hkmap)
endif
call assert_true(&ruler)
call assert_true(&showmatch)
call assert_true(&smarttab)
call assert_equal(3, &softtabstop)
call assert_equal(27, &textwidth)
call assert_equal(12, &wrapmargin)
if has('vartabs')
call assert_equal('10,20', &varsofttabstop)
endif
set autoindent& expandtab& ruler& showmatch&
if has('rightleft')
set revins& hkmap&
endif
set smarttab& softtabstop& textwidth& wrapmargin&
if has('vartabs')
set varsofttabstop&
endif
endfunc
" vim: shiftwidth=2 sts=2 expandtab
|