annotate src/testdir/test_normal.vim @ 19407:2f4be7ca1b1b v8.2.0261

patch 8.2.0261: some code not covered by tests Commit: https://github.com/vim/vim/commit/f0cee1971f5258ce61f8a4e6a04d35c1e625bb01 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Feb 16 13:33:56 2020 +0100 patch 8.2.0261: some code not covered by tests Problem: Some code not covered by tests. Solution: Add test cases. (Yegappan Lakshmanan, closes https://github.com/vim/vim/issues/5645)
author Bram Moolenaar <Bram@vim.org>
date Sun, 16 Feb 2020 13:45:04 +0100
parents 068337e86133
children 67fbe280a502
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1 " Test for various Normal mode commands
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
3 source shared.vim
18767
068337e86133 patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents: 18736
diff changeset
4 source check.vim
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
5
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
6 func Setup_NewWindow()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
7 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
8 call setline(1, range(1,100))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
9 endfunc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
10
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
11 func MyFormatExpr()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
12 " Adds '->$' at lines having numbers followed by trailing whitespace
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
13 for ln in range(v:lnum, v:lnum+v:count-1)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
14 let line = getline(ln)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
15 if getline(ln) =~# '\d\s\+$'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
16 call setline(ln, substitute(line, '\s\+$', '', '') . '->$')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
17 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
18 endfor
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
19 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
20
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
21 func CountSpaces(type, ...)
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
22 " for testing operatorfunc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
23 " will count the number of spaces
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
24 " and return the result in g:a
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
25 let sel_save = &selection
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
26 let &selection = "inclusive"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
27 let reg_save = @@
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
28
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
29 if a:0 " Invoked from Visual mode, use gv command.
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
30 silent exe "normal! gvy"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
31 elseif a:type == 'line'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
32 silent exe "normal! '[V']y"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
33 else
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
34 silent exe "normal! `[v`]y"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
35 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
36 let g:a=strlen(substitute(@@, '[^ ]', '', 'g'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
37 let &selection = sel_save
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
38 let @@ = reg_save
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
39 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
40
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
41 func OpfuncDummy(type, ...)
10342
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
42 " for testing operatorfunc
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
43 let g:opt=&linebreak
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
44
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
45 if a:0 " Invoked from Visual mode, use gv command.
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
46 silent exe "normal! gvy"
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
47 elseif a:type == 'line'
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
48 silent exe "normal! '[V']y"
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
49 else
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
50 silent exe "normal! `[v`]y"
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
51 endif
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
52 " Create a new dummy window
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
53 new
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
54 let g:bufnr=bufnr('%')
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
55 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
56
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
57 fun! Test_normal00_optrans()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
58 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
59 call append(0, ['1 This is a simple test: abcd', '2 This is the second line', '3 this is the third line'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
60 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
61 exe "norm! Sfoobar\<esc>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
62 call assert_equal(['foobar', '2 This is the second line', '3 this is the third line', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
63 2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
64 exe "norm! $vbsone"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
65 call assert_equal(['foobar', '2 This is the second one', '3 this is the third line', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
66 norm! VS Second line here
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
67 call assert_equal(['foobar', ' Second line here', '3 this is the third line', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
68 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
69 call append(0, ['4 This is a simple test: abcd', '5 This is the second line', '6 this is the third line'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
70 call append(0, ['1 This is a simple test: abcd', '2 This is the second line', '3 this is the third line'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
71
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
72 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
73 norm! 2D
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
74 call assert_equal(['3 this is the third line', '4 This is a simple test: abcd', '5 This is the second line', '6 this is the third line', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
75 set cpo+=#
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
76 norm! 4D
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
77 call assert_equal(['', '4 This is a simple test: abcd', '5 This is the second line', '6 this is the third line', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
78
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
79 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
80 set cpo-=#
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
81 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
82 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
83
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
84 func Test_normal01_keymodel()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
85 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
86 " Test 1: depending on 'keymodel' <s-down> does something different
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
87 50
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
88 call feedkeys("V\<S-Up>y", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
89 call assert_equal(['47', '48', '49', '50'], getline("'<", "'>"))
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
90 set keymodel=startsel
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
91 50
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
92 call feedkeys("V\<S-Up>y", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
93 call assert_equal(['49', '50'], getline("'<", "'>"))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
94 " Start visual mode when keymodel = startsel
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
95 50
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
96 call feedkeys("\<S-Up>y", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
97 call assert_equal(['49', '5'], getreg(0, 0, 1))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
98 " Do not start visual mode when keymodel=
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
99 set keymodel=
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
100 50
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
101 call feedkeys("\<S-Up>y$", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
102 call assert_equal(['42'], getreg(0, 0, 1))
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
103 " Stop visual mode when keymodel=stopsel
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
104 set keymodel=stopsel
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
105 50
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
106 call feedkeys("Vkk\<Up>yy", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
107 call assert_equal(['47'], getreg(0, 0, 1))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
108
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
109 set keymodel=
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
110 50
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
111 call feedkeys("Vkk\<Up>yy", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
112 call assert_equal(['47', '48', '49', '50'], getreg(0, 0, 1))
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
113
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
114 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
115 bw!
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
116 endfunc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
117
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
118 func Test_normal02_selectmode()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
119 " some basic select mode tests
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
120 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
121 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
122 norm! gHy
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
123 call assert_equal('y51', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
124 call setline(1, range(1,100))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
125 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
126 exe ":norm! V9jo\<c-g>y"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
127 call assert_equal('y60', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
128 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
129 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
130 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
131
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
132 func Test_normal02_selectmode2()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
133 " some basic select mode tests
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
134 call Setup_NewWindow()
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
135 50
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
136 call feedkeys(":set im\n\<c-o>gHc\<c-o>:set noim\n", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
137 call assert_equal('c51', getline('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
138 " clean up
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
139 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
140 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
141
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
142 func Test_normal03_join()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
143 " basic join test
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
144 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
145 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
146 norm! VJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
147 call assert_equal('50 51', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
148 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
149 norm! J
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
150 call assert_equal('100', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
151 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
152 norm! V9-gJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
153 call assert_equal('919293949596979899100', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
154 call setline(1, range(1,100))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
155 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
156 :j 10
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
157 call assert_equal('100', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
158 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
159 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
160 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
161
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
162 func Test_normal04_filter()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
163 " basic filter test
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
164 " only test on non windows platform
10342
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
165 if has('win32')
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
166 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
167 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
168 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
169 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
170 call feedkeys("!!sed -e 's/^/| /'\n", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
171 call assert_equal('| 1', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
172 90
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
173 :sil :!echo one
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
174 call feedkeys('.', 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
175 call assert_equal('| 90', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
176 95
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
177 set cpo+=!
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
178 " 2 <CR>, 1: for executing the command,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
179 " 2: clear hit-enter-prompt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
180 call feedkeys("!!\n", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
181 call feedkeys(":!echo one\n\n", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
182 call feedkeys(".", 'tx')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
183 call assert_equal('one', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
184 set cpo-=!
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
185 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
186 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
187
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
188 func Test_normal05_formatexpr()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
189 " basic formatexpr test
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
190 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
191 %d_
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
192 call setline(1, ['here: 1 ', '2', 'here: 3 ', '4', 'not here: '])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
193 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
194 set formatexpr=MyFormatExpr()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
195 norm! gqG
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
196 call assert_equal(['here: 1->$', '2', 'here: 3->$', '4', 'not here: '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
197 set formatexpr=
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
198 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
199 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
200
10104
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
201 func Test_normal05_formatexpr_newbuf()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
202 " Edit another buffer in the 'formatexpr' function
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
203 new
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
204 func! Format()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
205 edit another
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
206 endfunc
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
207 set formatexpr=Format()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
208 norm gqG
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
209 bw!
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
210 set formatexpr=
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
211 endfunc
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
212
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
213 func Test_normal05_formatexpr_setopt()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
214 " Change the 'formatexpr' value in the function
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
215 new
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
216 func! Format()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
217 set formatexpr=
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
218 endfunc
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
219 set formatexpr=Format()
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
220 norm gqG
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
221 bw!
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
222 set formatexpr=
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
223 endfunc
b2dbe79639a2 commit https://github.com/vim/vim/commit/d77f9d595eb5f301b39b4373f2900a13c0ca30e2
Christian Brabandt <cb@256bit.org>
parents: 10102
diff changeset
224
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
225 func Test_normal06_formatprg()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
226 " basic test for formatprg
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
227 " only test on non windows platform
10342
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
228 if has('win32')
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
229 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
230 endif
10579
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
231
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
232 " uses sed to number non-empty lines
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
233 call writefile(['#!/bin/sh', 'sed ''/./=''|sed ''/./{', 'N', 's/\n/ /', '}'''], 'Xsed_format.sh')
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
234 call system('chmod +x ./Xsed_format.sh')
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
235 let text = ['a', '', 'c', '', ' ', 'd', 'e']
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
236 let expected = ['1 a', '', '3 c', '', '5 ', '6 d', '7 e']
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
237
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
238 10new
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
239 call setline(1, text)
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
240 set formatprg=./Xsed_format.sh
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
241 norm! gggqG
10579
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
242 call assert_equal(expected, getline(1, '$'))
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
243 bw!
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
244
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
245 10new
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
246 call setline(1, text)
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
247 set formatprg=donothing
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
248 setlocal formatprg=./Xsed_format.sh
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
249 norm! gggqG
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
250 call assert_equal(expected, getline(1, '$'))
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
251 bw!
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
252
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
253 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
254 set formatprg=
10579
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
255 setlocal formatprg=
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
256 call delete('Xsed_format.sh')
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
257 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
258
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
259 func Test_normal07_internalfmt()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
260 " basic test for internal formmatter to textwidth of 12
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
261 let list=range(1,11)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
262 call map(list, 'v:val." "')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
263 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
264 call setline(1, list)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
265 set tw=12
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
266 norm! gggqG
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
267 call assert_equal(['1 2 3', '4 5 6', '7 8 9', '10 11 '], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
268 " clean up
10579
688b97124d23 patch 8.0.0179: cannot have a local value for 'formatprg'
Christian Brabandt <cb@256bit.org>
parents: 10342
diff changeset
269 set tw=0
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
270 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
271 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
272
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
273 func Test_normal08_fold()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
274 " basic tests for foldopen/folddelete
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
275 if !has("folding")
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
276 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
277 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
278 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
279 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
280 setl foldenable fdm=marker
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
281 " First fold
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
282 norm! V4jzf
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
283 " check that folds have been created
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
284 call assert_equal(['50/*{{{*/', '51', '52', '53', '54/*}}}*/'], getline(50,54))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
285 " Second fold
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
286 46
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
287 norm! V10jzf
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
288 " check that folds have been created
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
289 call assert_equal('46/*{{{*/', getline(46))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
290 call assert_equal('60/*}}}*/', getline(60))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
291 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
292 call assert_equal('45', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
293 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
294 call assert_equal('46/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
295 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
296 call assert_equal('61', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
297 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
298 " open a fold
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
299 norm! Vzo
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
300 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
301 call assert_equal('45', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
302 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
303 call assert_equal('46/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
304 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
305 call assert_equal('47', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
306 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
307 norm! zcVzO
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
308 call assert_equal('46/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
309 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
310 call assert_equal('47', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
311 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
312 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
313 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
314 call assert_equal('49', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
315 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
316 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
317 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
318 call assert_equal('51', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
319 " delete folds
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
320 :46
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
321 " collapse fold
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
322 norm! V14jzC
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
323 " delete all folds recursively
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
324 norm! VzD
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
325 call assert_equal(['46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60'], getline(46,60))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
326
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
327 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
328 setl nofoldenable fdm=marker
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
329 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
330 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
331
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
332 func Test_normal09_operatorfunc()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
333 " Test operatorfunc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
334 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
335 " Add some spaces for counting
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
336 50,60s/$/ /
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
337 unlet! g:a
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
338 let g:a=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
339 nmap <buffer><silent> ,, :set opfunc=CountSpaces<CR>g@
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
340 vmap <buffer><silent> ,, :<C-U>call CountSpaces(visualmode(), 1)<CR>
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
341 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
342 norm V2j,,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
343 call assert_equal(6, g:a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
344 norm V,,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
345 call assert_equal(2, g:a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
346 norm ,,l
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
347 call assert_equal(0, g:a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
348 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
349 exe "norm 0\<c-v>10j2l,,"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
350 call assert_equal(11, g:a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
351 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
352 norm V10j,,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
353 call assert_equal(22, g:a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
354
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
355 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
356 unmap <buffer> ,,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
357 set opfunc=
10342
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
358 unlet! g:a
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
359 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
360 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
361
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
362 func Test_normal09a_operatorfunc()
10342
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
363 " Test operatorfunc
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
364 call Setup_NewWindow()
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
365 " Add some spaces for counting
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
366 50,60s/$/ /
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
367 unlet! g:opt
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
368 set linebreak
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
369 nmap <buffer><silent> ,, :set opfunc=OpfuncDummy<CR>g@
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
370 50
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
371 norm ,,j
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
372 exe "bd!" g:bufnr
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
373 call assert_true(&linebreak)
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
374 call assert_equal(g:opt, &linebreak)
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
375 set nolinebreak
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
376 norm ,,j
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
377 exe "bd!" g:bufnr
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
378 call assert_false(&linebreak)
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
379 call assert_equal(g:opt, &linebreak)
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
380
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
381 " clean up
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
382 unmap <buffer> ,,
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
383 set opfunc=
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
384 bw!
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
385 unlet! g:opt
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
386 endfunc
ae0faad76f9a commit https://github.com/vim/vim/commit/4a08b0dc4dd70334056fc1bf069b5e938f2ed7d5
Christian Brabandt <cb@256bit.org>
parents: 10338
diff changeset
387
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
388 func Test_normal10_expand()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
389 " Test for expand()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
390 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
391 call setline(1, ['1', 'ifooar,,cbar'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
392 2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
393 norm! $
12421
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
394 call assert_equal('cbar', expand('<cword>'))
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
395 call assert_equal('ifooar,,cbar', expand('<cWORD>'))
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
396
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
397 call setline(1, ['prx = list[idx];'])
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
398 1
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
399 let expected = ['', 'prx', 'prx', 'prx',
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
400 \ 'list', 'list', 'list', 'list', 'list', 'list', 'list',
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
401 \ 'idx', 'idx', 'idx', 'idx',
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
402 \ 'list[idx]',
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
403 \ '];',
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
404 \ ]
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
405 for i in range(1, 16)
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
406 exe 'norm ' . i . '|'
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
407 call assert_equal(expected[i], expand('<cexpr>'), 'i == ' . i)
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
408 endfor
da55ea30842c patch 8.0.1090: cannot get the text under the cursor like v:beval_text
Christian Brabandt <cb@256bit.org>
parents: 11339
diff changeset
409
13086
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
410 if executable('echo')
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
411 " Test expand(`...`) i.e. backticks command expansion.
18473
0eeaa9a6e4e7 patch 8.1.2230: MS-Windows: testing external commands can be improved
Bram Moolenaar <Bram@vim.org>
parents: 18291
diff changeset
412 call assert_equal('abcde', expand('`echo abcde`'))
13086
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
413 endif
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
414
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
415 " Test expand(`=...`) i.e. backticks expression expansion
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
416 call assert_equal('5', expand('`=2+3`'))
4d2ee1564c97 patch 8.0.1418: no test for expanding backticks
Christian Brabandt <cb@256bit.org>
parents: 12788
diff changeset
417
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
418 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
419 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
420 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
421
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
422 func Test_normal11_showcmd()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
423 " test for 'showcmd'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
424 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
425 exe "norm! ofoobar\<esc>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
426 call assert_equal(2, line('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
427 set showcmd
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
428 exe "norm! ofoobar2\<esc>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
429 call assert_equal(3, line('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
430 exe "norm! VAfoobar3\<esc>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
431 call assert_equal(3, line('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
432 exe "norm! 0d3\<del>2l"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
433 call assert_equal('obar2foobar3', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
434 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
435 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
436
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
437 func Test_normal12_nv_error()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
438 " Test for nv_error
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
439 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
440 call setline(1, range(1,5))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
441 " should not do anything, just beep
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
442 exe "norm! <c-k>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
443 call assert_equal(map(range(1,5), 'string(v:val)'), getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
444 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
445 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
446
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
447 func Test_normal13_help()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
448 " Test for F1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
449 call assert_equal(1, winnr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
450 call feedkeys("\<f1>", 'txi')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
451 call assert_match('help\.txt', bufname('%'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
452 call assert_equal(2, winnr('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
453 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
454 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
455
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
456 func Test_normal14_page()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
457 " basic test for Ctrl-F and Ctrl-B
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
458 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
459 exe "norm! \<c-f>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
460 call assert_equal('9', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
461 exe "norm! 2\<c-f>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
462 call assert_equal('25', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
463 exe "norm! 2\<c-b>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
464 call assert_equal('18', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
465 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
466 set scrolloff=5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
467 exe "norm! 2\<c-f>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
468 call assert_equal('21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
469 exe "norm! \<c-b>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
470 call assert_equal('13', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
471 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
472 set scrolloff=99
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
473 exe "norm! \<c-f>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
474 call assert_equal('13', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
475 set scrolloff=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
476 100
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
477 exe "norm! $\<c-b>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
478 call assert_equal('92', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
479 call assert_equal([0, 92, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
480 100
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
481 set nostartofline
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
482 exe "norm! $\<c-b>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
483 call assert_equal('92', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
484 call assert_equal([0, 92, 2, 0, 2147483647], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
485 " cleanup
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
486 set startofline
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
487 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
488 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
489
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
490 func Test_normal14_page_eol()
10102
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
491 10new
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
492 norm oxxxxxxx
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
493 exe "norm 2\<c-f>"
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
494 " check with valgrind that cursor is put back in column 1
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
495 exe "norm 2\<c-b>"
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
496 bw!
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
497 endfunc
b80ad55d62d8 commit https://github.com/vim/vim/commit/bc54f3f3fed4dc3556df8c46cee6739d211b0eb2
Christian Brabandt <cb@256bit.org>
parents: 10092
diff changeset
498
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
499 func Test_normal15_z_scroll_vert()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
500 " basic test for z commands that scroll the window
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
501 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
502 100
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
503 norm! >>
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
504 " Test for z<cr>
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
505 exe "norm! z\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
506 call assert_equal(' 100', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
507 call assert_equal(100, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
508 call assert_equal([0, 100, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
509
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
510 " Test for zt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
511 21
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
512 norm! >>0zt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
513 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
514 call assert_equal(21, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
515 call assert_equal([0, 21, 1, 0, 8], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
516
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
517 " Test for zb
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
518 30
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
519 norm! >>$ztzb
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
520 call assert_equal(' 30', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
521 call assert_equal(30, winsaveview()['topline']+winheight(0)-1)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
522 call assert_equal([0, 30, 3, 0, 2147483647], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
523
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
524 " Test for z-
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
525 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
526 30
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
527 norm! 0z-
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
528 call assert_equal(' 30', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
529 call assert_equal(30, winsaveview()['topline']+winheight(0)-1)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
530 call assert_equal([0, 30, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
531
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
532 " Test for z{height}<cr>
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
533 call assert_equal(10, winheight(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
534 exe "norm! z12\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
535 call assert_equal(12, winheight(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
536 exe "norm! z10\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
537 call assert_equal(10, winheight(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
538
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
539 " Test for z.
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
540 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
541 21
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
542 norm! 0z.
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
543 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
544 call assert_equal(17, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
545 call assert_equal([0, 21, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
546
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
547 " Test for zz
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
548 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
549 21
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
550 norm! 0zz
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
551 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
552 call assert_equal(17, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
553 call assert_equal([0, 21, 1, 0, 8], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
554
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
555 " Test for z+
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
556 11
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
557 norm! zt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
558 norm! z+
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
559 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
560 call assert_equal(21, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
561 call assert_equal([0, 21, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
562
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
563 " Test for [count]z+
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
564 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
565 norm! 21z+
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
566 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
567 call assert_equal(21, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
568 call assert_equal([0, 21, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
569
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
570 " Test for z^
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
571 norm! 22z+0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
572 norm! z^
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
573 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
574 call assert_equal(12, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
575 call assert_equal([0, 21, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
576
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
577 " Test for [count]z^
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
578 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
579 norm! 30z^
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
580 call assert_equal(' 21', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
581 call assert_equal(12, winsaveview()['topline'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
582 call assert_equal([0, 21, 2, 0, 9], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
583
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
584 " cleanup
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
585 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
586 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
587
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
588 func Test_normal16_z_scroll_hor()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
589 " basic test for z commands that scroll the window
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
590 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
591 15vsp
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
592 set nowrap listchars=
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
593 let lineA='abcdefghijklmnopqrstuvwxyz'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
594 let lineB='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
595 $put =lineA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
596 $put =lineB
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
597 1d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
598
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
599 " Test for zl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
600 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
601 norm! 5zl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
602 call assert_equal(lineA, getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
603 call assert_equal(6, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
604 call assert_equal(5, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
605 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
606 call assert_equal('f', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
607
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
608 " Test for zh
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
609 norm! 2zh
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
610 call assert_equal(lineA, getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
611 call assert_equal(6, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
612 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
613 call assert_equal('f', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
614 call assert_equal(3, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
615
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
616 " Test for zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
617 norm! zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
618 call assert_equal(11, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
619 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
620 call assert_equal('k', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
621 call assert_equal(10, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
622 norm! 2zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
623 call assert_equal(25, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
624 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
625 call assert_equal('y', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
626 call assert_equal(24, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
627
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
628 " Test for zH
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
629 norm! 2zH
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
630 call assert_equal(25, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
631 call assert_equal(10, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
632 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
633 call assert_equal('y', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
634
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
635 " Test for zs
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
636 norm! $zs
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
637 call assert_equal(26, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
638 call assert_equal(25, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
639 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
640 call assert_equal('z', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
641
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
642 " Test for ze
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
643 norm! ze
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
644 call assert_equal(26, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
645 call assert_equal(11, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
646 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
647 call assert_equal('z', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
648
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
649 " cleanup
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
650 set wrap listchars=eol:$
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
651 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
652 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
653
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
654 func Test_normal17_z_scroll_hor2()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
655 " basic test for z commands that scroll the window
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
656 " using 'sidescrolloff' setting
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
657 10new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
658 20vsp
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
659 set nowrap listchars= sidescrolloff=5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
660 let lineA='abcdefghijklmnopqrstuvwxyz'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
661 let lineB='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
662 $put =lineA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
663 $put =lineB
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
664 1d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
665
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
666 " Test for zl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
667 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
668 norm! 5zl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
669 call assert_equal(lineA, getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
670 call assert_equal(11, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
671 call assert_equal(5, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
672 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
673 call assert_equal('k', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
674
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
675 " Test for zh
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
676 norm! 2zh
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
677 call assert_equal(lineA, getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
678 call assert_equal(11, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
679 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
680 call assert_equal('k', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
681 call assert_equal(3, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
682
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
683 " Test for zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
684 norm! 0zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
685 call assert_equal(16, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
686 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
687 call assert_equal('p', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
688 call assert_equal(10, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
689 norm! 2zL
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
690 call assert_equal(26, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
691 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
692 call assert_equal('z', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
693 call assert_equal(15, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
694
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
695 " Test for zH
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
696 norm! 2zH
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
697 call assert_equal(15, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
698 call assert_equal(0, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
699 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
700 call assert_equal('o', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
701
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
702 " Test for zs
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
703 norm! $zs
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
704 call assert_equal(26, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
705 call assert_equal(20, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
706 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
707 call assert_equal('z', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
708
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
709 " Test for ze
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
710 norm! ze
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
711 call assert_equal(26, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
712 call assert_equal(11, winsaveview()['leftcol'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
713 norm! yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
714 call assert_equal('z', @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
715
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
716 " cleanup
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
717 set wrap listchars=eol:$ sidescrolloff=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
718 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
719 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
720
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
721 func Test_normal18_z_fold()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
722 " basic tests for foldopen/folddelete
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
723 if !has("folding")
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
724 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
725 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
726 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
727 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
728 setl foldenable fdm=marker foldlevel=5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
729
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
730 " Test for zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
731 " First fold
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
732 norm! 4zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
733 " check that folds have been created
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
734 call assert_equal(['50/*{{{*/', '51', '52', '53/*}}}*/'], getline(50,53))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
735
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
736 " Test for zd
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
737 51
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
738 norm! 2zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
739 call assert_equal(2, foldlevel('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
740 norm! kzd
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
741 call assert_equal(['50', '51/*{{{*/', '52/*}}}*/', '53'], getline(50,53))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
742 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
743 call assert_equal(1, foldlevel('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
744
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
745 " Test for zD
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
746 " also deletes partially selected folds recursively
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
747 51
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
748 norm! zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
749 call assert_equal(2, foldlevel('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
750 norm! kV2jzD
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
751 call assert_equal(['50', '51', '52', '53'], getline(50,53))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
752
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
753 " Test for zE
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
754 85
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
755 norm! 4zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
756 86
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
757 norm! 2zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
758 90
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
759 norm! 4zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
760 call assert_equal(['85/*{{{*/', '86/*{{{*/', '87/*}}}*/', '88/*}}}*/', '89', '90/*{{{*/', '91', '92', '93/*}}}*/'], getline(85,93))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
761 norm! zE
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
762 call assert_equal(['85', '86', '87', '88', '89', '90', '91', '92', '93'], getline(85,93))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
763
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
764 " Test for zn
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
765 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
766 set foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
767 norm! 2zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
768 norm! zn
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
769 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
770 call assert_equal('49', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
771 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
772 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
773 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
774 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
775 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
776 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
777 call assert_equal(0, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
778
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
779 " Test for zN
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
780 49
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
781 norm! zN
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
782 call assert_equal('49', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
783 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
784 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
785 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
786 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
787 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
788
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
789 " Test for zi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
790 norm! zi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
791 call assert_equal(0, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
792 norm! zi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
793 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
794 norm! zi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
795 call assert_equal(0, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
796 norm! zi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
797 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
798
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
799 " Test for za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
800 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
801 norm! za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
802 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
803 call assert_equal('49', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
804 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
805 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
806 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
807 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
808 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
809 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
810 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
811 norm! za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
812 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
813 call assert_equal('49', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
814 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
815 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
816 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
817 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
818
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
819 49
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
820 norm! 5zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
821 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
822 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
823 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
824 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
825 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
826 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
827 49
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
828 norm! za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
829 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
830 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
831 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
832 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
833 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
834 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
835 " close fold and set foldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
836 norm! za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
837 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
838
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
839 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
840 " have to use {count}za to open all folds and make the cursor visible
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
841 norm! 2za
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
842 norm! 2k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
843 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
844 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
845 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
846 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
847 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
848 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
849 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
850 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
851 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
852
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
853 " Test for zA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
854 49
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
855 set foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
856 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
857 norm! zA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
858 norm! 2k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
859 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
860 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
861 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
862 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
863 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
864 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
865 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
866 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
867 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
868
11327
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
869 " zA on a opened fold when foldenable is not set
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
870 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
871 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
872 norm! zA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
873 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
874 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
875 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
876 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
877 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
878 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
879 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
880
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
881 " Test for zc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
882 norm! zE
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
883 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
884 norm! 2zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
885 49
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
886 norm! 5zF
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
887 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
888 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
889 " There most likely is a bug somewhere:
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
890 " https://groups.google.com/d/msg/vim_dev/v2EkfJ_KQjI/u-Cvv94uCAAJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
891 " TODO: Should this only close the inner most fold or both folds?
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
892 norm! zc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
893 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
894 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
895 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
896 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
897 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
898 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
899 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
900 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
901 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
902 norm! Vjzc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
903 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
904 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
905 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
906 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
907 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
908 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
909
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
910 " Test for zC
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
911 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
912 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
913 norm! zCk
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
914 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
915 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
916 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
917 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
918 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
919
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
920 " Test for zx
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
921 " 1) close folds at line 49-54
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
922 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
923 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
924 norm! zx
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
925 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
926 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
927 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
928 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
929 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
930
11327
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
931 " 2) do not close fold under cursor
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
932 51
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
933 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
934 norm! zx
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
935 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
936 norm! 3k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
937 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
938 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
939 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
940 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
941 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
942 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
943 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
944 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
945 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
946 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
947 call assert_equal('53', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
948 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
949 call assert_equal('54/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
950 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
951 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
952
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
953 " 3) close one level of folds
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
954 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
955 set nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
956 set foldlevel=1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
957 norm! zx
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
958 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
959 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
960 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
961 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
962 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
963 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
964 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
965 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
966 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
967 call assert_equal('53', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
968 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
969 call assert_equal('54/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
970 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
971 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
972
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
973 " Test for zX
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
974 " Close all folds
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
975 set foldlevel=0 nofoldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
976 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
977 norm! zX
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
978 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
979 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
980 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
981 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
982 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
983 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
984 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
985
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
986 " Test for zm
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
987 50
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
988 set nofoldenable foldlevel=2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
989 norm! zm
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
990 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
991 call assert_equal(1, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
992 norm! zm
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
993 call assert_equal(0, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
994 norm! zm
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
995 call assert_equal(0, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
996 norm! k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
997 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
998 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
999 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1000 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1001 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1002
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1003 " Test for zM
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1004 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1005 set nofoldenable foldlevel=99
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1006 norm! zM
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1007 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1008 call assert_equal(0, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1009 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1010 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1011 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1012 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1013 call assert_equal('55', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1014
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1015 " Test for zr
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1016 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1017 set nofoldenable foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1018 norm! zr
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1019 call assert_equal(0, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1020 call assert_equal(1, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1021 set foldlevel=0 foldenable
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1022 norm! zr
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1023 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1024 call assert_equal(1, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1025 norm! zr
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1026 call assert_equal(2, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1027 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1028 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1029 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1030 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1031 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1032 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1033 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1034 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1035 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1036
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1037 " Test for zR
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1038 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1039 set nofoldenable foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1040 norm! zR
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1041 call assert_equal(0, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1042 call assert_equal(2, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1043 set foldenable foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1044 norm! zR
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1045 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1046 call assert_equal(2, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1047 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1048 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1049 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1050 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1051 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1052 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1053 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1054 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1055 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1056 call append(50, ['a /*{{{*/', 'b /*}}}*/'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1057 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1058 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1059 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1060 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1061 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1062 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1063 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1064 call assert_equal('a /*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1065 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1066 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1067 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1068 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1069 48
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1070 norm! zR
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1071 call assert_equal(1, &foldenable)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1072 call assert_equal(3, &foldlevel)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1073 call assert_equal('48', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1074 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1075 call assert_equal('49/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1076 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1077 call assert_equal('50/*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1078 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1079 call assert_equal('a /*{{{*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1080 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1081 call assert_equal('b /*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1082 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1083 call assert_equal('51/*}}}*/', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1084 norm! j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1085 call assert_equal('52', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1086
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1087 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1088 setl nofoldenable fdm=marker foldlevel=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1089 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1090 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1091
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1092 func Test_normal20_exmode()
10092
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1093 if !has("unix")
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1094 " Reading from redirected file doesn't work on MS-Windows
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1095 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1096 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1097 call writefile(['1a', 'foo', 'bar', '.', 'w! Xfile2', 'q!'], 'Xscript')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1098 call writefile(['1', '2'], 'Xfile')
17698
131f1d8c5860 patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents: 17682
diff changeset
1099 call system(GetVimCommand() .. ' -e -s < Xscript Xfile')
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1100 let a=readfile('Xfile2')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1101 call assert_equal(['1', 'foo', 'bar', '2'], a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1102
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1103 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1104 for file in ['Xfile', 'Xfile2', 'Xscript']
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1105 call delete(file)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1106 endfor
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1107 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1108 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1109
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1110 func Test_normal21_nv_hat()
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1111
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1112 " Edit a fresh file and wipe the buffer list so that there is no alternate
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1113 " file present. Next, check for the expected command failures.
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1114 edit Xfoo | %bw
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1115 call assert_fails(':buffer #', 'E86')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1116 call assert_fails(':execute "normal! \<C-^>"', 'E23')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1117
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1118 " Test for the expected behavior when switching between two named buffers.
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1119 edit Xfoo | edit Xbar
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1120 call feedkeys("\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1121 call assert_equal('Xfoo', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1122 call feedkeys("\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1123 call assert_equal('Xbar', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1124
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1125 " Test for the expected behavior when only one buffer is named.
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1126 enew | let l:nr = bufnr('%')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1127 call feedkeys("\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1128 call assert_equal('Xbar', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1129 call feedkeys("\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1130 call assert_equal('', bufname('%'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1131 call assert_equal(l:nr, bufnr('%'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1132
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1133 " Test that no action is taken by "<C-^>" when an operator is pending.
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1134 edit Xfoo
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1135 call feedkeys("ci\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1136 call assert_equal('Xfoo', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1137
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1138 %bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1139 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1140
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1141 func Test_normal22_zet()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1142 " Test for ZZ
10092
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1143 " let shell = &shell
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1144 " let &shell = 'sh'
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1145 call writefile(['1', '2'], 'Xfile')
17698
131f1d8c5860 patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents: 17682
diff changeset
1146 let args = ' -N -i NONE --noplugins -X --not-a-term'
131f1d8c5860 patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents: 17682
diff changeset
1147 call system(GetVimCommand() .. args .. ' -c "%d" -c ":norm! ZZ" Xfile')
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1148 let a = readfile('Xfile')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1149 call assert_equal([], a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1150 " Test for ZQ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1151 call writefile(['1', '2'], 'Xfile')
17698
131f1d8c5860 patch 8.1.1846: inconsistently using GetVimCommand() and v:progpath
Bram Moolenaar <Bram@vim.org>
parents: 17682
diff changeset
1152 call system(GetVimCommand() . args . ' -c "%d" -c ":norm! ZQ" Xfile')
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1153 let a = readfile('Xfile')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1154 call assert_equal(['1', '2'], a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1155
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1156 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1157 for file in ['Xfile']
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1158 call delete(file)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1159 endfor
10092
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1160 " let &shell = shell
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1161 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1162
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1163 func Test_normal23_K()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1164 " Test for K command
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1165 new
10330
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1166 call append(0, ['version8.txt', 'man', 'aa%bb', 'cc|dd'])
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1167 let k = &keywordprg
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1168 set keywordprg=:help
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1169 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1170 norm! VK
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1171 call assert_equal('version8.txt', fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1172 call assert_equal('help', &ft)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1173 call assert_match('\*version8.txt\*', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1174 helpclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1175 norm! 0K
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1176 call assert_equal('version8.txt', fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1177 call assert_equal('help', &ft)
13963
1174611ad715 Vim 8.1 release
Christian Brabandt <cb@256bit.org>
parents: 13272
diff changeset
1178 call assert_match('\*version8\.\d\*', getline('.'))
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1179 helpclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1180
10330
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1181 set keywordprg=:new
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1182 set iskeyword+=%
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1183 set iskeyword+=\|
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1184 2
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1185 norm! K
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1186 call assert_equal('man', fnamemodify(bufname('%'), ':t'))
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1187 bwipe!
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1188 3
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1189 norm! K
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1190 call assert_equal('aa%bb', fnamemodify(bufname('%'), ':t'))
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1191 bwipe!
10338
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1192 if !has('win32')
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1193 4
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1194 norm! K
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1195 call assert_equal('cc|dd', fnamemodify(bufname('%'), ':t'))
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1196 bwipe!
e8a6a3bbd212 commit https://github.com/vim/vim/commit/eb828d01d9c91791fa1fe217ba651cdc25746d1b
Christian Brabandt <cb@256bit.org>
parents: 10330
diff changeset
1197 endif
10330
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1198 set iskeyword-=%
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1199 set iskeyword-=\|
71ca6a16e818 commit https://github.com/vim/vim/commit/426f3754223c8ff8a1bc51d6ba1eba11e8982ebc
Christian Brabandt <cb@256bit.org>
parents: 10166
diff changeset
1200
10092
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1201 " Only expect "man" to work on Unix
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1202 if !has("unix")
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1203 let &keywordprg = k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1204 bw!
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1205 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1206 endif
16419
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1207
18736
97d534e17874 patch 8.1.2358: tests fail on Cirrus CI for FreeBSD
Bram Moolenaar <Bram@vim.org>
parents: 18730
diff changeset
1208 let not_gnu_man = has('mac') || has('bsd')
97d534e17874 patch 8.1.2358: tests fail on Cirrus CI for FreeBSD
Bram Moolenaar <Bram@vim.org>
parents: 18730
diff changeset
1209 if not_gnu_man
18730
2faf6c331cb8 patch 8.1.2355: test with "man" fails on FreeBSD
Bram Moolenaar <Bram@vim.org>
parents: 18475
diff changeset
1210 " In MacOS and BSD, the option for specifying a pager is different
16419
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1211 set keywordprg=man\ -P\ cat
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1212 else
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1213 set keywordprg=man\ --pager=cat
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1214 endif
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1215 " Test for using man
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1216 2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1217 let a = execute('unsilent norm! K')
18736
97d534e17874 patch 8.1.2358: tests fail on Cirrus CI for FreeBSD
Bram Moolenaar <Bram@vim.org>
parents: 18730
diff changeset
1218 if not_gnu_man
16419
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1219 call assert_match("man -P cat 'man'", a)
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1220 else
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1221 call assert_match("man --pager=cat 'man'", a)
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
1222 endif
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1223
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1224 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1225 let &keywordprg = k
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1226 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1227 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1228
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1229 func Test_normal24_rot13()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1230 " Testing for g?? g?g?
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1231 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1232 call append(0, 'abcdefghijklmnopqrstuvwxyzäüö')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1233 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1234 norm! g??
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1235 call assert_equal('nopqrstuvwxyzabcdefghijklmäüö', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1236 norm! g?g?
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1237 call assert_equal('abcdefghijklmnopqrstuvwxyzäüö', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1238
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1239 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1240 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1241 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1242
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1243 func Test_normal25_tag()
18767
068337e86133 patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents: 18736
diff changeset
1244 CheckFeature quickfix
068337e86133 patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents: 18736
diff changeset
1245
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1246 " Testing for CTRL-] g CTRL-] g]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1247 " CTRL-W g] CTRL-W CTRL-] CTRL-W g CTRL-]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1248 h
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1249 " Test for CTRL-]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1250 call search('\<x\>$')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1251 exe "norm! \<c-]>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1252 call assert_equal("change.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1253 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1254 call assert_equal("*x*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1255 exe ":norm \<c-o>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1256
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1257 " Test for g_CTRL-]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1258 call search('\<v_u\>$')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1259 exe "norm! g\<c-]>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1260 call assert_equal("change.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1261 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1262 call assert_equal("*v_u*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1263 exe ":norm \<c-o>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1264
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1265 " Test for g]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1266 call search('\<i_<Esc>$')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1267 let a = execute(":norm! g]")
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1268 call assert_match('i_<Esc>.*insert.txt', a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1269
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1270 if !empty(exepath('cscope')) && has('cscope')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1271 " setting cscopetag changes how g] works
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1272 set cst
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1273 exe "norm! g]"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1274 call assert_equal("insert.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1275 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1276 call assert_equal("*i_<Esc>*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1277 exe ":norm \<c-o>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1278 " Test for CTRL-W g]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1279 exe "norm! \<C-W>g]"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1280 call assert_equal("insert.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1281 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1282 call assert_equal("*i_<Esc>*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1283 call assert_equal(3, winnr('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1284 helpclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1285 set nocst
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1286 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1287
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1288 " Test for CTRL-W g]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1289 let a = execute("norm! \<C-W>g]")
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1290 call assert_match('i_<Esc>.*insert.txt', a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1291
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1292 " Test for CTRL-W CTRL-]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1293 exe "norm! \<C-W>\<C-]>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1294 call assert_equal("insert.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1295 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1296 call assert_equal("*i_<Esc>*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1297 call assert_equal(3, winnr('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1298 helpclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1299
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1300 " Test for CTRL-W g CTRL-]
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1301 exe "norm! \<C-W>g\<C-]>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1302 call assert_equal("insert.txt", fnamemodify(bufname('%'), ':t'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1303 norm! yiW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1304 call assert_equal("*i_<Esc>*", @0)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1305 call assert_equal(3, winnr('$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1306 helpclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1307
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1308 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1309 helpclose
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1310 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1311
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1312 func Test_normal26_put()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1313 " Test for ]p ]P [p and [P
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1314 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1315 call append(0, ['while read LINE', 'do', ' ((count++))', ' if [ $? -ne 0 ]; then', " echo 'Error writing file'", ' fi', 'done'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1316 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1317 /Error/y a
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1318 2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1319 norm! "a]pj"a[p
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1320 call assert_equal(['do', "echo 'Error writing file'", " echo 'Error writing file'", ' ((count++))'], getline(2,5))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1321 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1322 /^\s\{4}/
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1323 exe "norm! \"a]P3Eldt'"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1324 exe "norm! j\"a[P2Eldt'"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1325 call assert_equal([' if [ $? -ne 0 ]; then', " echo 'Error writing'", " echo 'Error'", " echo 'Error writing file'", ' fi'], getline(6,10))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1326
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1327 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1328 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1329 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1330
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1331 func Test_normal27_bracket()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1332 " Test for [' [` ]' ]`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1333 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1334 1,21s/.\+/ & b/
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1335 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1336 norm! $ma
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1337 5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1338 norm! $mb
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1339 10
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1340 norm! $mc
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1341 15
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1342 norm! $md
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1343 20
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1344 norm! $me
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1345
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1346 " Test for ['
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1347 9
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1348 norm! 2['
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1349 call assert_equal(' 1 b', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1350 call assert_equal(1, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1351 call assert_equal(3, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1352
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1353 " Test for ]'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1354 norm! ]'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1355 call assert_equal(' 5 b', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1356 call assert_equal(5, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1357 call assert_equal(3, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1358
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1359 " No mark after line 21, cursor moves to first non blank on current line
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1360 21
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1361 norm! $]'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1362 call assert_equal(' 21 b', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1363 call assert_equal(21, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1364 call assert_equal(3, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1365
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1366 " Test for [`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1367 norm! 2[`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1368 call assert_equal(' 15 b', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1369 call assert_equal(15, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1370 call assert_equal(8, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1371
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1372 " Test for ]`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1373 norm! ]`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1374 call assert_equal(' 20 b', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1375 call assert_equal(20, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1376 call assert_equal(8, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1377
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1378 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1379 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1380 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1381
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1382 func Test_normal28_parenthesis()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1383 " basic testing for ( and )
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1384 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1385 call append(0, ['This is a test. With some sentences!', '', 'Even with a question? And one more. And no sentence here'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1386
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1387 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1388 norm! d(
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1389 call assert_equal(['This is a test. With some sentences!', '', 'Even with a question? And one more. ', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1390 norm! 2d(
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1391 call assert_equal(['This is a test. With some sentences!', '', ' ', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1392 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1393 norm! 0d)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1394 call assert_equal(['With some sentences!', '', ' ', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1395
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1396 call append('$', ['This is a long sentence', '', 'spanning', 'over several lines. '])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1397 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1398 norm! $d(
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1399 call assert_equal(['With some sentences!', '', ' ', '', 'This is a long sentence', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1400
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1401 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1402 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1403 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1404
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1405 fun! Test_normal29_brace()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1406 " basic test for { and } movements
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1407 let text =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1408 A paragraph begins after each empty line, and also at each of a set of
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1409 paragraph macros, specified by the pairs of characters in the 'paragraphs'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1410 option. The default is "IPLPPPQPP TPHPLIPpLpItpplpipbp", which corresponds to
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1411 the macros ".IP", ".LP", etc. (These are nroff macros, so the dot must be in
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1412 the first column). A section boundary is also a paragraph boundary.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1413 Note that a blank line (only containing white space) is NOT a paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1414 boundary.
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1415
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1416
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1417 Also note that this does not include a '{' or '}' in the first column. When
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1418 the '{' flag is in 'cpoptions' then '{' in the first column is used as a
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1419 paragraph boundary |posix|.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1420 {
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1421 This is no paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1422 unless the '{' is set
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1423 in 'cpoptions'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1424 }
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1425 .IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1426 The nroff macros IP separates a paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1427 That means, it must be a '.'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1428 followed by IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1429 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1430 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1431 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1432 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1433 a character like this:
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1434 .NH
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1435 End of text here
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1436 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1437
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1438 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1439 call append(0, text)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1440 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1441 norm! 0d2}
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1442
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1443 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1444 .IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1445 The nroff macros IP separates a paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1446 That means, it must be a '.'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1447 followed by IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1448 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1449 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1450 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1451 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1452 a character like this:
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1453 .NH
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1454 End of text here
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1455
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1456 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1457 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1458
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1459 norm! 0d}
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1460
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1461 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1462 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1463 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1464 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1465 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1466 a character like this:
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1467 .NH
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1468 End of text here
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1469
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1470 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1471 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1472
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1473 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1474 norm! d{
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1475
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1476 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1477 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1478 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1479 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1480 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1481 a character like this:
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1482
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1483 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1484 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1485
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1486 norm! d{
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1487
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1488 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1489 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1490 more characters follow.
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1491
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1492 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1493 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1494
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1495 " Test with { in cpooptions
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1496 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1497 call append(0, text)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1498 set cpo+={
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1499 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1500 norm! 0d2}
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1501
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1502 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1503 {
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1504 This is no paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1505 unless the '{' is set
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1506 in 'cpoptions'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1507 }
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1508 .IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1509 The nroff macros IP separates a paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1510 That means, it must be a '.'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1511 followed by IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1512 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1513 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1514 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1515 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1516 a character like this:
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1517 .NH
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1518 End of text here
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1519
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1520 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1521 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1522
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1523 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1524 norm! d}
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1525
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1526 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1527 {
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1528 This is no paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1529 unless the '{' is set
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1530 in 'cpoptions'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1531 }
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1532 .IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1533 The nroff macros IP separates a paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1534 That means, it must be a '.'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1535 followed by IP
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1536 .LPIt does not matter, if afterwards some
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1537 more characters follow.
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1538 .SHAlso section boundaries from the nroff
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1539 macros terminate a paragraph. That means
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1540 a character like this:
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1541 .NH
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1542 End of text here
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1543
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1544 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1545 call assert_equal(expected, getline(1, '$'))
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1546
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1547 norm! gg}
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1548 norm! d5}
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1549
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1550 let expected =<< trim [DATA]
17172
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1551 {
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1552 This is no paragraph
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1553 unless the '{' is set
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1554 in 'cpoptions'
6990c1160ea5 patch 8.1.1585: :let-heredoc does not trim enough
Bram Moolenaar <Bram@vim.org>
parents: 16720
diff changeset
1555 }
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1556
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1557 [DATA]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 16419
diff changeset
1558 call assert_equal(expected, getline(1, '$'))
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1559
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1560 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1561 set cpo-={
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1562 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1563 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1564
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1565 fun! Test_normal30_changecase()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1566 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1567 call append(0, 'This is a simple test: äüöß')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1568 norm! 1ggVu
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1569 call assert_equal('this is a simple test: äüöß', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1570 norm! VU
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1571 call assert_equal('THIS IS A SIMPLE TEST: ÄÜÖSS', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1572 norm! guu
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1573 call assert_equal('this is a simple test: äüöss', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1574 norm! gUgU
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1575 call assert_equal('THIS IS A SIMPLE TEST: ÄÜÖSS', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1576 norm! gugu
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1577 call assert_equal('this is a simple test: äüöss', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1578 norm! gUU
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1579 call assert_equal('THIS IS A SIMPLE TEST: ÄÜÖSS', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1580 norm! 010~
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1581 call assert_equal('this is a SIMPLE TEST: ÄÜÖSS', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1582 norm! V~
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1583 call assert_equal('THIS IS A simple test: äüöss', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1584
14669
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1585 " Turkish ASCII turns to multi-byte. On some systems Turkish locale
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1586 " is available but toupper()/tolower() don't do the right thing.
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1587 try
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1588 lang tr_TR.UTF-8
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1589 set casemap=
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1590 let iupper = toupper('i')
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1591 if iupper == "\u0130"
11335
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1592 call setline(1, 'iI')
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1593 1normal gUU
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1594 call assert_equal("\u0130I", getline(1))
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1595 call assert_equal("\u0130I", toupper("iI"))
11333
fef09eb74832 patch 8.0.0552: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11327
diff changeset
1596
11335
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1597 call setline(1, 'iI')
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1598 1normal guu
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1599 call assert_equal("i\u0131", getline(1))
bc8e3fd275be patch 8.0.0553: toupper/tolower test fails on Mac
Christian Brabandt <cb@256bit.org>
parents: 11333
diff changeset
1600 call assert_equal("i\u0131", tolower("iI"))
14669
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1601 elseif iupper == "I"
11337
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1602 call setline(1, 'iI')
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1603 1normal gUU
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1604 call assert_equal("II", getline(1))
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1605 call assert_equal("II", toupper("iI"))
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1606
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1607 call setline(1, 'iI')
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1608 1normal guu
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1609 call assert_equal("ii", getline(1))
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1610 call assert_equal("ii", tolower("iI"))
14669
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1611 else
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1612 call assert_true(false, "expected toupper('i') to be either 'I' or '\u0130'")
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1613 endif
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1614 set casemap&
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1615 call setline(1, 'iI')
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1616 1normal gUU
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1617 call assert_equal("II", getline(1))
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1618 call assert_equal("II", toupper("iI"))
11337
f0fbebf19b80 patch 8.0.0554: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11335
diff changeset
1619
14669
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1620 call setline(1, 'iI')
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1621 1normal guu
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1622 call assert_equal("ii", getline(1))
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1623 call assert_equal("ii", tolower("iI"))
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1624
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1625 lang en_US.UTF-8
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1626 catch /E197:/
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1627 " can't use Turkish locale
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1628 throw 'Skipped: Turkish locale not available'
63d5ae57a663 patch 8.1.0347: some tests fail on Solaris
Christian Brabandt <cb@256bit.org>
parents: 14627
diff changeset
1629 endtry
11333
fef09eb74832 patch 8.0.0552: toupper and tolower don't work properly for Turkish
Christian Brabandt <cb@256bit.org>
parents: 11327
diff changeset
1630
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1631 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1632 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1633 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1634
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1635 fun! Test_normal31_r_cmd()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1636 " Test for r command
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1637 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1638 call append(0, 'This is a simple test: abcd')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1639 exe "norm! 1gg$r\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1640 call assert_equal(['This is a simple test: abc', '', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1641 exe "norm! 1gg2wlr\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1642 call assert_equal(['This is a', 'simple test: abc', '', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1643 exe "norm! 2gg0W5r\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1644 call assert_equal(['This is a', 'simple ', ' abc', '', ''], getline('1', '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1645 set autoindent
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1646 call setline(2, ['simple test: abc', ''])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1647 exe "norm! 2gg0W5r\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1648 call assert_equal(['This is a', 'simple ', 'abc', '', '', ''], getline('1', '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1649 exe "norm! 1ggVr\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1650 call assert_equal('^M^M^M^M^M^M^M^M^M', strtrans(getline(1)))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1651 call setline(1, 'This is a')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1652 exe "norm! 1gg05rf"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1653 call assert_equal('fffffis a', getline(1))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1654
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1655 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1656 set noautoindent
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1657 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1658 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1659
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1660 func Test_normal32_g_cmd1()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1661 " Test for g*, g#
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1662 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1663 call append(0, ['abc.x_foo', 'x_foobar.abc'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1664 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1665 norm! $g*
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1666 call assert_equal('x_foo', @/)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1667 call assert_equal('x_foobar.abc', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1668 norm! $g#
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1669 call assert_equal('abc', @/)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1670 call assert_equal('abc.x_foo', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1671
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1672 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1673 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1674 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1675
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1676 fun! Test_normal33_g_cmd2()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1677 if !has("jumplist")
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1678 return
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1679 endif
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1680 " Tests for g cmds
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1681 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1682 " Test for g`
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1683 clearjumps
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1684 norm! ma10j
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1685 let a=execute(':jumps')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1686 " empty jumplist
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1687 call assert_equal('>', a[-1:])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1688 norm! g`a
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1689 call assert_equal('>', a[-1:])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1690 call assert_equal(1, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1691 call assert_equal('1', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1692
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1693 " Test for g; and g,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1694 norm! g;
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1695 " there is only one change in the changelist
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1696 " currently, when we setup the window
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1697 call assert_equal(2, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1698 call assert_fails(':norm! g;', 'E662')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1699 call assert_fails(':norm! g,', 'E663')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1700 let &ul=&ul
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1701 call append('$', ['a', 'b', 'c', 'd'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1702 let &ul=&ul
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1703 call append('$', ['Z', 'Y', 'X', 'W'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1704 let a = execute(':changes')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1705 call assert_match('2\s\+0\s\+2', a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1706 call assert_match('101\s\+0\s\+a', a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1707 call assert_match('105\s\+0\s\+Z', a)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1708 norm! 3g;
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1709 call assert_equal(2, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1710 norm! 2g,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1711 call assert_equal(105, line('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1712
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1713 " Test for g& - global substitute
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1714 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1715 call setline(1, range(1,10))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1716 call append('$', ['a', 'b', 'c', 'd'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1717 $s/\w/&&/g
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1718 exe "norm! /[1-8]\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1719 norm! g&
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1720 call assert_equal(['11', '22', '33', '44', '55', '66', '77', '88', '9', '110', 'a', 'b', 'c', 'dd'], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1721
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1722 " Test for gv
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1723 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1724 call append('$', repeat(['abcdefgh'], 8))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1725 exe "norm! 2gg02l\<c-v>2j2ly"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1726 call assert_equal(['cde', 'cde', 'cde'], getreg(0, 1, 1))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1727 " in visual mode, gv swaps current and last selected region
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1728 exe "norm! G0\<c-v>4k4lgvd"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1729 call assert_equal(['', 'abfgh', 'abfgh', 'abfgh', 'abcdefgh', 'abcdefgh', 'abcdefgh', 'abcdefgh', 'abcdefgh'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1730 exe "norm! G0\<c-v>4k4ly"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1731 exe "norm! gvood"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1732 call assert_equal(['', 'abfgh', 'abfgh', 'abfgh', 'fgh', 'fgh', 'fgh', 'fgh', 'fgh'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1733
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1734 " Test for gk/gj
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1735 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1736 15vsp
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1737 set wrap listchars= sbr=
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1738 let lineA='abcdefghijklmnopqrstuvwxyz'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1739 let lineB='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
18475
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1740 let lineC='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1741 $put =lineA
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1742 $put =lineB
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1743
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1744 norm! 3gg0dgk
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1745 call assert_equal(['', 'abcdefghijklmno', '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1746 set nu
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1747 norm! 3gg0gjdgj
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1748 call assert_equal(['', 'abcdefghijklmno', '0123456789AMNOPQRSTUVWXYZ'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1749
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1750 " Test for gJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1751 norm! 2gggJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1752 call assert_equal(['', 'abcdefghijklmno0123456789AMNOPQRSTUVWXYZ'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1753 call assert_equal(16, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1754 " shouldn't do anything
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1755 norm! 10gJ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1756 call assert_equal(1, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1757
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1758 " Test for g0 g^ gm g$
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1759 exe "norm! 2gg0gji "
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1760 call assert_equal(['', 'abcdefghijk lmno0123456789AMNOPQRSTUVWXYZ'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1761 norm! g0yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1762 call assert_equal(12, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1763 call assert_equal(' ', getreg(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1764 norm! g$yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1765 call assert_equal(22, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1766 call assert_equal('3', getreg(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1767 norm! gmyl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1768 call assert_equal(17, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1769 call assert_equal('n', getreg(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1770 norm! g^yl
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1771 call assert_equal(15, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1772 call assert_equal('l', getreg(0))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1773
18475
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1774 norm! 2ggdd
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1775 $put =lineC
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1776
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1777 " Test for gM
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1778 norm! gMyl
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1779 call assert_equal(73, col('.'))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1780 call assert_equal('0', getreg(0))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1781 " Test for 20gM
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1782 norm! 20gMyl
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1783 call assert_equal(29, col('.'))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1784 call assert_equal('S', getreg(0))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1785 " Test for 60gM
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1786 norm! 60gMyl
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1787 call assert_equal(87, col('.'))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1788 call assert_equal('E', getreg(0))
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1789
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1790 " Test for g Ctrl-G
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1791 set ff=unix
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1792 let a=execute(":norm! g\<c-g>")
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1793 call assert_match('Col 87 of 144; Line 2 of 2; Word 1 of 1; Byte 88 of 146', a)
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1794
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1795 " Test for gI
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1796 norm! gIfoo
18475
709c6b0dc78f patch 8.1.2231: not easy to move to the middle of a text line
Bram Moolenaar <Bram@vim.org>
parents: 18473
diff changeset
1797 call assert_equal(['', 'foo0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz01234567890123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'], getline(1,'$'))
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1798
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1799 " Test for gi
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1800 wincmd c
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1801 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1802 set tw=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1803 call setline(1, ['foobar', 'new line'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1804 norm! A next word
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1805 $put ='third line'
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1806 norm! gi another word
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1807 call assert_equal(['foobar next word another word', 'new line', 'third line'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1808
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1809 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1810 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1811 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1812
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
1813 func Test_g_ctrl_g()
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1814 new
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1815
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1816 let a = execute(":norm! g\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1817 call assert_equal("\n--No lines in buffer--", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1818
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1819 call setline(1, ['first line', 'second line'])
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1820
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1821 " Test g CTRL-g with dos, mac and unix file type.
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1822 norm! gojll
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1823 set ff=dos
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1824 let a = execute(":norm! g\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1825 call assert_equal("\nCol 3 of 11; Line 2 of 2; Word 3 of 4; Byte 15 of 25", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1826
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1827 set ff=mac
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1828 let a = execute(":norm! g\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1829 call assert_equal("\nCol 3 of 11; Line 2 of 2; Word 3 of 4; Byte 14 of 23", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1830
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1831 set ff=unix
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1832 let a = execute(":norm! g\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1833 call assert_equal("\nCol 3 of 11; Line 2 of 2; Word 3 of 4; Byte 14 of 23", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1834
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1835 " Test g CTRL-g in visual mode (v)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1836 let a = execute(":norm! gojllvlg\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1837 call assert_equal("\nSelected 1 of 2 Lines; 1 of 4 Words; 2 of 23 Bytes", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1838
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1839 " Test g CTRL-g in visual mode (CTRL-V) with end col > start col
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1840 let a = execute(":norm! \<Esc>gojll\<C-V>kllg\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1841 call assert_equal("\nSelected 3 Cols; 2 of 2 Lines; 2 of 4 Words; 6 of 23 Bytes", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1842
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1843 " Test g_CTRL-g in visual mode (CTRL-V) with end col < start col
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1844 let a = execute(":norm! \<Esc>goll\<C-V>jhhg\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1845 call assert_equal("\nSelected 3 Cols; 2 of 2 Lines; 2 of 4 Words; 6 of 23 Bytes", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1846
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1847 " Test g CTRL-g in visual mode (CTRL-V) with end_vcol being MAXCOL
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1848 let a = execute(":norm! \<Esc>gojll\<C-V>k$g\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1849 call assert_equal("\nSelected 2 of 2 Lines; 4 of 4 Words; 17 of 23 Bytes", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1850
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1851 " There should be one byte less with noeol
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1852 set bin noeol
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1853 let a = execute(":norm! \<Esc>gog\<c-g>")
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1854 call assert_equal("\nCol 1 of 10; Line 1 of 2; Word 1 of 4; Char 1 of 23; Byte 1 of 22", a)
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1855 set bin & eol&
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1856
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1857 call setline(1, ['Français', '日本語'])
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1858
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1859 let a = execute(":norm! \<Esc>gojlg\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1860 call assert_equal("\nCol 4-3 of 9-6; Line 2 of 2; Word 2 of 2; Char 11 of 13; Byte 16 of 20", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1861
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1862 let a = execute(":norm! \<Esc>gojvlg\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1863 call assert_equal("\nSelected 1 of 2 Lines; 1 of 2 Words; 2 of 13 Chars; 6 of 20 Bytes", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1864
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1865 let a = execute(":norm! \<Esc>goll\<c-v>jlg\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1866 call assert_equal("\nSelected 4 Cols; 2 of 2 Lines; 2 of 2 Words; 6 of 13 Chars; 11 of 20 Bytes", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1867
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1868 set fenc=utf8 bomb
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1869 let a = execute(":norm! \<Esc>gojlg\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1870 call assert_equal("\nCol 4-3 of 9-6; Line 2 of 2; Word 2 of 2; Char 11 of 13; Byte 16 of 20(+3 for BOM)", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1871
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1872 set fenc=utf16 bomb
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1873 let a = execute(":norm! g\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1874 call assert_equal("\nCol 4-3 of 9-6; Line 2 of 2; Word 2 of 2; Char 11 of 13; Byte 16 of 20(+2 for BOM)", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1875
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1876 set fenc=utf32 bomb
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1877 let a = execute(":norm! g\<c-g>")
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1878 call assert_equal("\nCol 4-3 of 9-6; Line 2 of 2; Word 2 of 2; Char 11 of 13; Byte 16 of 20(+4 for BOM)", a)
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1879
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
1880 set fenc& bomb&
14627
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1881
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1882 set ff&
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1883 bwipe!
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1884 endfunc
335f32c55ac3 patch 8.1.0327: the "g CTRL-G" command isn't tested much
Christian Brabandt <cb@256bit.org>
parents: 13963
diff changeset
1885
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1886 fun! Test_normal34_g_cmd3()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1887 " Test for g8
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1888 new
11327
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1889 let a=execute(':norm! 1G0g8')
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1890 call assert_equal("\nNUL", a)
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1891
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1892 call setline(1, 'abcdefghijklmnopqrstuvwxyzäüö')
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1893 let a=execute(':norm! 1G$g8')
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1894 call assert_equal("\nc3 b6 ", a)
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1895
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1896 call setline(1, "a\u0302")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1897 let a=execute(':norm! 1G0g8')
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1898 call assert_equal("\n61 + cc 82 ", a)
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1899
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1900 " clean up
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1901 bw!
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1902 endfunc
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1903
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1904 func Test_normal_8g8()
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1905 new
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1906
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1907 " Test 8g8 which finds invalid utf8 at or after the cursor.
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1908
11327
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1909 " With invalid byte.
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1910 call setline(1, "___\xff___")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1911 norm! 1G08g8g
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1912 call assert_equal([0, 1, 4, 0, 1], getcurpos())
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1913
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1914 " With invalid byte before the cursor.
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1915 call setline(1, "___\xff___")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1916 norm! 1G$h8g8g
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1917 call assert_equal([0, 1, 6, 0, 9], getcurpos())
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1918
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1919 " With truncated sequence.
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1920 call setline(1, "___\xE2\x82___")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1921 norm! 1G08g8g
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1922 call assert_equal([0, 1, 4, 0, 1], getcurpos())
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1923
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1924 " With overlong sequence.
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1925 call setline(1, "___\xF0\x82\x82\xAC___")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1926 norm! 1G08g8g
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1927 call assert_equal([0, 1, 4, 0, 1], getcurpos())
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1928
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1929 " With valid utf8.
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1930 call setline(1, "café")
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1931 norm! 1G08g8
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1932 call assert_equal([0, 1, 1, 0, 1], getcurpos())
9e899514e929 patch 8.0.0549: no test for the 8g8 command
Christian Brabandt <cb@256bit.org>
parents: 11275
diff changeset
1933
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1934 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1935 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1936
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1937 fun! Test_normal35_g_cmd4()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1938 " Test for g<
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1939 " Cannot capture its output,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1940 " probably a bug, therefore, test disabled:
10124
f6942ed9e998 commit https://github.com/vim/vim/commit/31845093b7f1b33e0c7e9e592bef65528674a1f2
Christian Brabandt <cb@256bit.org>
parents: 10104
diff changeset
1941 throw "Skipped: output of g< can't be tested currently"
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1942 echo "a\nb\nc\nd"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1943 let b=execute(':norm! g<')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1944 call assert_true(!empty(b), 'failed `execute(g<)`')
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1945 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1946
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1947 fun! Test_normal36_g_cmd5()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1948 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1949 call append(0, 'abcdefghijklmnopqrstuvwxyz')
10092
d7846e9fbf65 commit https://github.com/vim/vim/commit/0913a1089a07ac7b17abc3a1343dfa7cd25613f4
Christian Brabandt <cb@256bit.org>
parents: 10088
diff changeset
1950 set ff=unix
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1951 " Test for gp gP
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1952 call append(1, range(1,10))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1953 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1954 norm! 1yy
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1955 3
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1956 norm! gp
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1957 call assert_equal([0, 5, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1958 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1959 norm! gP
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1960 call assert_equal([0, 14, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1961
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1962 " Test for go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1963 norm! 26go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1964 call assert_equal([0, 1, 26, 0, 26], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1965 norm! 27go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1966 call assert_equal([0, 1, 26, 0, 26], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1967 norm! 28go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1968 call assert_equal([0, 2, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1969 set ff=dos
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1970 norm! 29go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1971 call assert_equal([0, 2, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1972 set ff=unix
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1973 norm! gg0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1974 norm! 101go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1975 call assert_equal([0, 13, 26, 0, 26], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1976 norm! 103go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1977 call assert_equal([0, 14, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1978 " count > buffer content
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1979 norm! 120go
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1980 call assert_equal([0, 14, 1, 0, 2147483647], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1981 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1982 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
1983 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1984
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1985 fun! Test_normal37_g_cmd6()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1986 " basic test for gt and gT
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1987 tabnew 1.txt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1988 tabnew 2.txt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1989 tabnew 3.txt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1990 norm! 1gt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1991 call assert_equal(1, tabpagenr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1992 norm! 3gt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1993 call assert_equal(3, tabpagenr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1994 norm! 1gT
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1995 " count gT goes not to the absolute tabpagenumber
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1996 " but, but goes to the count previous tabpagenumber
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1997 call assert_equal(2, tabpagenr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1998 " wrap around
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
1999 norm! 3gT
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2000 call assert_equal(3, tabpagenr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2001 " gt does not wrap around
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2002 norm! 5gt
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2003 call assert_equal(3, tabpagenr())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2004
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2005 for i in range(3)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2006 tabclose
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2007 endfor
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2008 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2009 call assert_fails(':tabclose', 'E784')
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2010 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2011
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2012 fun! Test_normal38_nvhome()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2013 " Test for <Home> and <C-Home> key
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2014 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2015 call setline(1, range(10))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2016 $
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2017 setl et sw=2
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2018 norm! V10>$
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2019 " count is ignored
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2020 exe "norm! 10\<home>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2021 call assert_equal(1, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2022 exe "norm! \<home>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2023 call assert_equal([0, 10, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2024 exe "norm! 5\<c-home>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2025 call assert_equal([0, 5, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2026 exe "norm! \<c-home>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2027 call assert_equal([0, 1, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2028
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2029 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2030 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2031 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2032
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2033 fun! Test_normal39_cw()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2034 " Test for cw and cW on whitespace
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2035 " and cpo+=w setting
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2036 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2037 set tw=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2038 call append(0, 'here are some words')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2039 norm! 1gg0elcwZZZ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2040 call assert_equal('hereZZZare some words', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2041 norm! 1gg0elcWYYY
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2042 call assert_equal('hereZZZareYYYsome words', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2043 set cpo+=w
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2044 call setline(1, 'here are some words')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2045 norm! 1gg0elcwZZZ
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2046 call assert_equal('hereZZZ are some words', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2047 norm! 1gg2elcWYYY
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2048 call assert_equal('hereZZZ areYYY some words', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2049 set cpo-=w
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2050 norm! 2gg0cwfoo
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2051 call assert_equal('foo', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2052
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2053 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2054 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2055 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2056
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2057 fun! Test_normal40_ctrl_bsl()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2058 " Basic test for CTRL-\ commands
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2059 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2060 call append(0, 'here are some words')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2061 exe "norm! 1gg0a\<C-\>\<C-N>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2062 call assert_equal('n', mode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2063 call assert_equal(1, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2064 call assert_equal('', visualmode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2065 exe "norm! 1gg0viw\<C-\>\<C-N>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2066 call assert_equal('n', mode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2067 call assert_equal(4, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2068 exe "norm! 1gg0a\<C-\>\<C-G>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2069 call assert_equal('n', mode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2070 call assert_equal(1, col('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2071 "imap <buffer> , <c-\><c-n>
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2072 set im
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2073 exe ":norm! \<c-\>\<c-n>dw"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2074 set noim
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2075 call assert_equal('are some words', getline(1))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2076 call assert_false(&insertmode)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2077
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2078 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2079 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2080 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2081
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2082 fun! Test_normal41_insert_reg()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2083 " Test for <c-r>=, <c-r><c-r>= and <c-r><c-o>=
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2084 " in insert mode
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2085 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2086 set sts=2 sw=2 ts=8 tw=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2087 call append(0, ["aaa\tbbb\tccc", '', '', ''])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2088 let a=getline(1)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2089 norm! 2gg0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2090 exe "norm! a\<c-r>=a\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2091 norm! 3gg0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2092 exe "norm! a\<c-r>\<c-r>=a\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2093 norm! 4gg0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2094 exe "norm! a\<c-r>\<c-o>=a\<cr>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2095 call assert_equal(['aaa bbb ccc', 'aaa bbb ccc', 'aaa bbb ccc', 'aaa bbb ccc', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2096
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2097 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2098 set sts=0 sw=8 ts=8
10124
f6942ed9e998 commit https://github.com/vim/vim/commit/31845093b7f1b33e0c7e9e592bef65528674a1f2
Christian Brabandt <cb@256bit.org>
parents: 10104
diff changeset
2099 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2100 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2101
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2102 func Test_normal42_halfpage()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2103 " basic test for Ctrl-D and Ctrl-U
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2104 call Setup_NewWindow()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2105 call assert_equal(5, &scroll)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2106 exe "norm! \<c-d>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2107 call assert_equal('6', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2108 exe "norm! 2\<c-d>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2109 call assert_equal('8', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2110 call assert_equal(2, &scroll)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2111 set scroll=5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2112 exe "norm! \<c-u>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2113 call assert_equal('3', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2114 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2115 set scrolloff=5
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2116 exe "norm! \<c-d>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2117 call assert_equal('10', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2118 exe "norm! \<c-u>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2119 call assert_equal('5', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2120 1
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2121 set scrolloff=99
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2122 exe "norm! \<c-d>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2123 call assert_equal('10', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2124 set scrolloff=0
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2125 100
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2126 exe "norm! $\<c-u>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2127 call assert_equal('95', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2128 call assert_equal([0, 95, 1, 0, 1], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2129 100
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2130 set nostartofline
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2131 exe "norm! $\<c-u>"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2132 call assert_equal('95', getline('.'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2133 call assert_equal([0, 95, 2, 0, 2147483647], getcurpos())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2134 " cleanup
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2135 set startofline
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2136 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2137 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2138
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2139 fun! Test_normal43_textobject1()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2140 " basic tests for text object aw
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2141 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2142 call append(0, ['foobar,eins,foobar', 'foo,zwei,foo '])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2143 " diw
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2144 norm! 1gg0diw
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2145 call assert_equal([',eins,foobar', 'foo,zwei,foo ', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2146 " daw
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2147 norm! 2ggEdaw
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2148 call assert_equal([',eins,foobar', 'foo,zwei,', ''], getline(1, '$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2149 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2150 call append(0, ["foo\teins\tfoobar", "foo\tzwei\tfoo "])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2151 " diW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2152 norm! 2ggwd2iW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2153 call assert_equal(['foo eins foobar', 'foo foo ', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2154 " daW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2155 norm! 1ggd2aW
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2156 call assert_equal(['foobar', 'foo foo ', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2157
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2158 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2159 call append(0, ["foo\teins\tfoobar", "foo\tzwei\tfoo "])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2160 " aw in visual line mode switches to characterwise mode
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2161 norm! 2gg$Vawd
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2162 call assert_equal(['foo eins foobar', 'foo zwei foo'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2163 norm! 1gg$Viwd
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2164 call assert_equal(['foo eins ', 'foo zwei foo'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2165
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2166 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2167 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2168 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2169
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2170 func Test_normal44_textobjects2()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2171 " basic testing for is and as text objects
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2172 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2173 call append(0, ['This is a test. With some sentences!', '', 'Even with a question? And one more. And no sentence here'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2174 " Test for dis - does not remove trailing whitespace
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2175 norm! 1gg0dis
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2176 call assert_equal([' With some sentences!', '', 'Even with a question? And one more. And no sentence here', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2177 " Test for das - removes leading whitespace
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2178 norm! 3ggf?ldas
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2179 call assert_equal([' With some sentences!', '', 'Even with a question? And no sentence here', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2180 " when used in visual mode, is made characterwise
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2181 norm! 3gg$Visy
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2182 call assert_equal('v', visualmode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2183 " reset visualmode()
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2184 norm! 3ggVy
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2185 norm! 3gg$Vasy
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2186 call assert_equal('v', visualmode())
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2187 " basic testing for textobjects a< and at
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2188 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2189 call setline(1, ['<div> ','<a href="foobar" class="foo">xyz</a>',' </div>', ' '])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2190 " a<
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2191 norm! 1gg0da<
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2192 call assert_equal([' ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2193 norm! 1pj
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2194 call assert_equal([' <div>', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2195 " at
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2196 norm! d2at
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2197 call assert_equal([' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2198 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2199 call setline(1, ['<div> ','<a href="foobar" class="foo">xyz</a>',' </div>', ' '])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2200 " i<
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2201 norm! 1gg0di<
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2202 call assert_equal(['<> ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2203 norm! 1Pj
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2204 call assert_equal(['<div> ', '<a href="foobar" class="foo">xyz</a>', ' </div>', ' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2205 norm! d2it
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2206 call assert_equal(['<div></div>',' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2207 " basic testing for a[ and i[ text object
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2208 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2209 call setline(1, [' ', '[', 'one [two]', 'thre', ']'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2210 norm! 3gg0di[
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2211 call assert_equal([' ', '[', ']'], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2212 call setline(1, [' ', '[', 'one [two]', 'thre', ']'])
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2213 norm! 3gg0ftd2a[
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2214 call assert_equal([' '], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2215 %d
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2216 " Test for i" when cursor is in front of a quoted object
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2217 call append(0, 'foo "bar"')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2218 norm! 1gg0di"
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2219 call assert_equal(['foo ""', ''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2220
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2221 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2222 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2223 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2224
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2225 func Test_normal45_drop()
13270
f3fb8dae30f1 patch 8.0.1509: test for failing drag-n-drop command no longer fails
Christian Brabandt <cb@256bit.org>
parents: 13268
diff changeset
2226 if !has('dnd')
13272
abaebba89fd4 patch 8.0.1510: cannot test if a command causes a beep
Christian Brabandt <cb@256bit.org>
parents: 13270
diff changeset
2227 " The ~ register does not exist
abaebba89fd4 patch 8.0.1510: cannot test if a command causes a beep
Christian Brabandt <cb@256bit.org>
parents: 13270
diff changeset
2228 call assert_beeps('norm! "~')
13270
f3fb8dae30f1 patch 8.0.1509: test for failing drag-n-drop command no longer fails
Christian Brabandt <cb@256bit.org>
parents: 13268
diff changeset
2229 return
f3fb8dae30f1 patch 8.0.1509: test for failing drag-n-drop command no longer fails
Christian Brabandt <cb@256bit.org>
parents: 13268
diff changeset
2230 endif
f3fb8dae30f1 patch 8.0.1509: test for failing drag-n-drop command no longer fails
Christian Brabandt <cb@256bit.org>
parents: 13268
diff changeset
2231
f3fb8dae30f1 patch 8.0.1509: test for failing drag-n-drop command no longer fails
Christian Brabandt <cb@256bit.org>
parents: 13268
diff changeset
2232 " basic test for drag-n-drop
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2233 " unfortunately, without a gui, we can't really test much here,
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2234 " so simply test that ~p fails (which uses the drop register)
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2235 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2236 call assert_fails(':norm! "~p', 'E353')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2237 call assert_equal([], getreg('~', 1, 1))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2238 " the ~ register is read only
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2239 call assert_fails(':let @~="1"', 'E354')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2240 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2241 endfunc
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2242
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2243 func Test_normal46_ignore()
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2244 new
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2245 " How to test this?
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2246 " let's just for now test, that the buffer
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2247 " does not change
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2248 call feedkeys("\<c-s>", 't')
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2249 call assert_equal([''], getline(1,'$'))
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2250
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2251 " no valid commands
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2252 exe "norm! \<char-0x100>"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2253 call assert_equal([''], getline(1,'$'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2254
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2255 exe "norm! ä"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2256 call assert_equal([''], getline(1,'$'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2257
10088
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2258 " clean up
5337340beea0 commit https://github.com/vim/vim/commit/87bc3f74598ae8c648957e5755000cc6cdbc89ce
Christian Brabandt <cb@256bit.org>
parents:
diff changeset
2259 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2260 endfunc
10154
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2261
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2262 func Test_normal47_visual_buf_wipe()
10154
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2263 " This was causing a crash or ml_get error.
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2264 enew!
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2265 call setline(1,'xxx')
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2266 normal $
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2267 new
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2268 call setline(1, range(1,2))
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2269 2
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2270 exe "norm \<C-V>$"
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2271 bw!
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2272 norm yp
4647267906cc commit https://github.com/vim/vim/commit/c4a908e83690844b0d3a46124ba6af7d23485d69
Christian Brabandt <cb@256bit.org>
parents: 10130
diff changeset
2273 set nomodified
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2274 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2275
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2276 func Test_normal47_autocmd()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2277 " disabled, does not seem to be possible currently
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2278 throw "Skipped: not possible to test cursorhold autocmd while waiting for input in normal_cmd"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2279 new
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2280 call append(0, repeat('-',20))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2281 au CursorHold * call feedkeys('2l', '')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2282 1
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2283 set updatetime=20
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2284 " should delete 12 chars (d12l)
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2285 call feedkeys('d1', '!')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2286 call assert_equal('--------', getline(1))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2287
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2288 " clean up
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2289 au! CursorHold
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2290 set updatetime=4000
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2291 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2292 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2293
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2294 func Test_normal48_wincmd()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2295 new
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2296 exe "norm! \<c-w>c"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2297 call assert_equal(1, winnr('$'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2298 call assert_fails(":norm! \<c-w>c", "E444")
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2299 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2300
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2301 func Test_normal49_counts()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2302 new
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2303 call setline(1, 'one two three four five six seven eight nine ten')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2304 1
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2305 norm! 3d2w
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2306 call assert_equal('seven eight nine ten', getline(1))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2307 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2308 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2309
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2310 func Test_normal50_commandline()
12477
68d7bc045dbe patch 8.0.1118: FEAT_WINDOWS adds a lot of #ifdefs
Christian Brabandt <cb@256bit.org>
parents: 12421
diff changeset
2311 if !has("timers") || !has("cmdline_hist")
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2312 return
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2313 endif
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2314 func! DoTimerWork(id)
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2315 call assert_equal('[Command Line]', bufname(''))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2316 " should fail, with E11, but does fail with E23?
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2317 "call feedkeys("\<c-^>", 'tm')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2318
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2319 " should also fail with E11
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2320 call assert_fails(":wincmd p", 'E11')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2321 " return from commandline window
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2322 call feedkeys("\<cr>")
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2323 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2324
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2325 let oldlang=v:lang
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2326 lang C
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2327 set updatetime=20
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2328 call timer_start(100, 'DoTimerWork')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2329 try
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2330 " throws E23, for whatever reason...
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2331 call feedkeys('q:', 'x!')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2332 catch /E23/
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2333 " no-op
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2334 endtry
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2335 " clean up
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2336 set updatetime=4000
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2337 exe "lang" oldlang
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2338 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2339 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2340
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2341 func Test_normal51_FileChangedRO()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2342 if !has("autocmd")
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2343 return
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2344 endif
10807
82c43bca568e patch 8.0.0293: some tests have a one or three second wait
Christian Brabandt <cb@256bit.org>
parents: 10579
diff changeset
2345 " Don't sleep after the warning message.
82c43bca568e patch 8.0.0293: some tests have a one or three second wait
Christian Brabandt <cb@256bit.org>
parents: 10579
diff changeset
2346 call test_settime(1)
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2347 call writefile(['foo'], 'Xreadonly.log')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2348 new Xreadonly.log
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2349 setl ro
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2350 au FileChangedRO <buffer> :call feedkeys("\<c-^>", 'tix')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2351 call assert_fails(":norm! Af", 'E788')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2352 call assert_equal(['foo'], getline(1,'$'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2353 call assert_equal('Xreadonly.log', bufname(''))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2354
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2355 " cleanup
10807
82c43bca568e patch 8.0.0293: some tests have a one or three second wait
Christian Brabandt <cb@256bit.org>
parents: 10579
diff changeset
2356 call test_settime(0)
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2357 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2358 call delete("Xreadonly.log")
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2359 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2360
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2361 func Test_normal52_rl()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2362 if !has("rightleft")
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2363 return
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2364 endif
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2365 new
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2366 call setline(1, 'abcde fghij klmnopq')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2367 norm! 1gg$
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2368 set rl
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2369 call assert_equal(19, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2370 call feedkeys('l', 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2371 call assert_equal(18, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2372 call feedkeys('h', 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2373 call assert_equal(19, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2374 call feedkeys("\<right>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2375 call assert_equal(18, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2376 call feedkeys("\<s-right>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2377 call assert_equal(13, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2378 call feedkeys("\<c-right>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2379 call assert_equal(7, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2380 call feedkeys("\<c-left>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2381 call assert_equal(13, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2382 call feedkeys("\<s-left>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2383 call assert_equal(19, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2384 call feedkeys("<<", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2385 call assert_equal(' abcde fghij klmnopq',getline(1))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2386 call feedkeys(">>", 'tx')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2387 call assert_equal('abcde fghij klmnopq',getline(1))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2388
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2389 " cleanup
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2390 set norl
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2391 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2392 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2393
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2394 func Test_normal53_digraph()
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2395 if !has('digraphs')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2396 return
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2397 endif
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2398 new
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2399 call setline(1, 'abcdefgh|')
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2400 exe "norm! 1gg0f\<c-k>!!"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2401 call assert_equal(9, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2402 set cpo+=D
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2403 exe "norm! 1gg0f\<c-k>!!"
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2404 call assert_equal(1, col('.'))
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2405
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2406 set cpo-=D
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2407 bw!
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2408 endfunc
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2409
11260
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2410 func Test_normal54_Ctrl_bsl()
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2411 new
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2412 call setline(1, 'abcdefghijklmn')
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2413 exe "norm! df\<c-\>\<c-n>"
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2414 call assert_equal(['abcdefghijklmn'], getline(1,'$'))
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2415 exe "norm! df\<c-\>\<c-g>"
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2416 call assert_equal(['abcdefghijklmn'], getline(1,'$'))
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2417 exe "norm! df\<c-\>m"
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2418 call assert_equal(['abcdefghijklmn'], getline(1,'$'))
15607
2dcaa860e3fc patch 8.1.0811: too many #ifdefs
Bram Moolenaar <Bram@vim.org>
parents: 15006
diff changeset
2419
11260
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2420 call setline(2, 'abcdefghijklmnāf')
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2421 norm! 2gg0
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2422 exe "norm! df\<Char-0x101>"
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2423 call assert_equal(['abcdefghijklmn', 'f'], getline(1,'$'))
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2424 norm! 1gg0
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2425 exe "norm! df\<esc>"
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2426 call assert_equal(['abcdefghijklmn', 'f'], getline(1,'$'))
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2427
11260
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2428 " clean up
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2429 bw!
10166
520e0e732b87 commit https://github.com/vim/vim/commit/2931f2a5df0d962032d41060af84d9fd2cb35c9f
Christian Brabandt <cb@256bit.org>
parents: 10154
diff changeset
2430 endfunc
11260
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2431
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2432 func Test_normal_large_count()
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2433 " This may fail with 32bit long, how do we detect that?
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2434 new
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2435 normal o
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2436 normal 6666666666dL
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2437 bwipe!
a7b7b21071c6 patch 8.0.0516: a large count on a normal command causes trouble
Christian Brabandt <cb@256bit.org>
parents: 11091
diff changeset
2438 endfunc
11275
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2439
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2440 func Test_delete_until_paragraph()
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2441 new
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2442 normal grádv}
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2443 call assert_equal('á', getline(1))
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2444 normal grád}
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2445 call assert_equal('', getline(1))
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2446 bwipe!
5c77ca0cf6a5 patch 8.0.0523: dv} deletes part of a multi-byte character.
Christian Brabandt <cb@256bit.org>
parents: 11260
diff changeset
2447 endfunc
12788
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2448
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2449 " Test for the gr (virtual replace) command
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2450 " Test for the bug fixed by 7.4.387
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2451 func Test_gr_command()
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2452 enew!
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2453 let save_cpo = &cpo
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2454 call append(0, ['First line', 'Second line', 'Third line'])
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2455 exe "normal i\<C-G>u"
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2456 call cursor(2, 1)
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2457 set cpo-=X
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2458 normal 4gro
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2459 call assert_equal('oooond line', getline(2))
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2460 undo
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2461 set cpo+=X
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2462 normal 4gro
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2463 call assert_equal('ooooecond line', getline(2))
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2464 let &cpo = save_cpo
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2465 enew!
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2466 endfunc
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2467
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2468 " When splitting a window the changelist position is wrong.
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2469 " Test the changelist position after splitting a window.
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2470 " Test for the bug fixed by 7.4.386
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2471 func Test_changelist()
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2472 let save_ul = &ul
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2473 enew!
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2474 call append('$', ['1', '2'])
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2475 exe "normal i\<C-G>u"
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2476 exe "normal Gkylpa\<C-G>u"
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2477 set ul=100
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2478 exe "normal Gylpa\<C-G>u"
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2479 set ul=100
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2480 normal gg
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2481 vsplit
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2482 normal g;
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2483 call assert_equal([3, 2], [line('.'), col('.')])
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2484 normal g;
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2485 call assert_equal([2, 2], [line('.'), col('.')])
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2486 call assert_fails('normal g;', 'E662:')
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2487 %bwipe!
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2488 let &ul = save_ul
cb9b2774f21f patch 8.0.1271: still too many old style tests
Christian Brabandt <cb@256bit.org>
parents: 12730
diff changeset
2489 endfunc
15006
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2490
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2491 func Test_nv_hat_count()
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2492 %bwipeout!
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2493 let l:nr = bufnr('%') + 1
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2494 call assert_fails(':execute "normal! ' . l:nr . '\<C-^>"', 'E92')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2495
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2496 edit Xfoo
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2497 let l:foo_nr = bufnr('Xfoo')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2498
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2499 edit Xbar
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2500 let l:bar_nr = bufnr('Xbar')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2501
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2502 " Make sure we are not just using the alternate file.
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2503 edit Xbaz
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2504
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2505 call feedkeys(l:foo_nr . "\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2506 call assert_equal('Xfoo', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2507
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2508 call feedkeys(l:bar_nr . "\<C-^>", 'tx')
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2509 call assert_equal('Xbar', fnamemodify(bufname('%'), ':t'))
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2510
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2511 %bwipeout!
1fd8e32532f7 patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents: 14669
diff changeset
2512 endfunc
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2513
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2514 func Test_message_when_using_ctrl_c()
16095
4673f22da44d patch 8.1.1052: test for CTRL-C message sometimes fails
Bram Moolenaar <Bram@vim.org>
parents: 16089
diff changeset
2515 " Make sure no buffers are changed.
4673f22da44d patch 8.1.1052: test for CTRL-C message sometimes fails
Bram Moolenaar <Bram@vim.org>
parents: 16089
diff changeset
2516 %bwipe!
4673f22da44d patch 8.1.1052: test for CTRL-C message sometimes fails
Bram Moolenaar <Bram@vim.org>
parents: 16089
diff changeset
2517
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2518 exe "normal \<C-C>"
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2519 call assert_match("Type :qa and press <Enter> to exit Vim", Screenline(&lines))
16095
4673f22da44d patch 8.1.1052: test for CTRL-C message sometimes fails
Bram Moolenaar <Bram@vim.org>
parents: 16089
diff changeset
2520
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2521 new
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2522 cal setline(1, 'hi!')
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2523 exe "normal \<C-C>"
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2524 call assert_match("Type :qa! and press <Enter> to abandon all changes and exit Vim", Screenline(&lines))
16095
4673f22da44d patch 8.1.1052: test for CTRL-C message sometimes fails
Bram Moolenaar <Bram@vim.org>
parents: 16089
diff changeset
2525
16089
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2526 bwipe!
4411c38f3d16 patch 8.1.1049: when user tries to exit with CTRL-C message is confusing
Bram Moolenaar <Bram@vim.org>
parents: 15607
diff changeset
2527 endfunc
16419
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2528
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2529 " Test for '[m', ']m', '[M' and ']M'
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2530 " Jumping to beginning and end of methods in Java-like languages
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2531 func Test_java_motion()
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2532 new
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2533 a
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2534 Piece of Java
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2535 {
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2536 tt m1 {
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2537 t1;
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2538 } e1
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2539
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2540 tt m2 {
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2541 t2;
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2542 } e2
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2543
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2544 tt m3 {
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2545 if (x)
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2546 {
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2547 t3;
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2548 }
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2549 } e3
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2550 }
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2551 .
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2552
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2553 normal gg
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2554
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2555 normal 2]maA
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2556 call assert_equal("\ttt m1 {A", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2557 call assert_equal([3, 9, 16], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2558
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2559 normal j]maB
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2560 call assert_equal("\ttt m2 {B", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2561 call assert_equal([7, 9, 16], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2562
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2563 normal ]maC
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2564 call assert_equal("\ttt m3 {C", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2565 call assert_equal([11, 9, 16], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2566
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2567 normal [maD
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2568 call assert_equal("\ttt m3 {DC", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2569 call assert_equal([11, 9, 16], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2570
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2571 normal k2[maE
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2572 call assert_equal("\ttt m1 {EA", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2573 call assert_equal([3, 9, 16], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2574
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2575 normal 3[maF
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2576 call assert_equal("{F", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2577 call assert_equal([2, 2, 2], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2578
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2579 normal ]MaG
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2580 call assert_equal("\t}G e1", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2581 call assert_equal([5, 3, 10], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2582
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2583 normal j2]MaH
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2584 call assert_equal("\t}H e3", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2585 call assert_equal([16, 3, 10], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2586
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2587 normal ]M]M
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2588 normal aI
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2589 call assert_equal("}I", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2590 call assert_equal([17, 2, 2], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2591
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2592 normal 2[MaJ
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2593 call assert_equal("\t}JH e3", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2594 call assert_equal([16, 3, 10], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2595
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2596 normal k[MaK
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2597 call assert_equal("\t}K e2", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2598 call assert_equal([9, 3, 10], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2599
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2600 normal 3[MaL
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2601 call assert_equal("{LF", getline('.'))
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2602 call assert_equal([2, 2, 2], [line('.'), col('.'), virtcol('.')])
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2603
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2604 close!
aebcd20a8a3f patch 8.1.1214: old style tests
Bram Moolenaar <Bram@vim.org>
parents: 16095
diff changeset
2605 endfunc
17520
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2606
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2607 fun! Test_normal_gdollar_cmd()
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2608 if !has("jumplist")
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2609 return
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2610 endif
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2611 " Tests for g cmds
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2612 call Setup_NewWindow()
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2613 " Make long lines that will wrap
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2614 %s/$/\=repeat(' foobar', 10)/
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2615 20vsp
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2616 set wrap
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2617 " Test for g$ with count
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2618 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2619 norm! 0vg$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2620 call assert_equal(20, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2621 call assert_equal('1 foobar foobar foob', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2622 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2623 norm! 0v4g$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2624 call assert_equal(72, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2625 call assert_equal('1 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.."\n", getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2626 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2627 norm! 0v6g$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2628 call assert_equal(40, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2629 call assert_equal('1 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2630 \ '2 foobar foobar foobar foobar foobar foo', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2631 set nowrap
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2632 " clean up
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2633 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2634 norm! 0vg$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2635 call assert_equal(20, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2636 call assert_equal('1 foobar foobar foob', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2637 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2638 norm! 0v4g$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2639 call assert_equal(20, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2640 call assert_equal('1 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2641 \ '2 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2642 \ '3 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2643 \ '4 foobar foobar foob', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2644 norm! gg
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2645 norm! 0v6g$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2646 call assert_equal(20, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2647 call assert_equal('1 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2648 \ '2 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2649 \ '3 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2650 \ '4 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2651 \ '5 foobar foobar foobar foobar foobar foobar foobar foobar foobar foobar'.. "\n"..
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2652 \ '6 foobar foobar foob', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2653 " Move to last line, also down movement is not possible, should still move
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2654 " the cursor to the last visible char
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2655 norm! G
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2656 norm! 0v6g$y
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2657 call assert_equal(20, col("'>"))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2658 call assert_equal('100 foobar foobar fo', getreg(0))
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2659 bw!
827d29c8f7e8 patch 8.1.1758: count of g$ not used correctly when text is not wrapped
Bram Moolenaar <Bram@vim.org>
parents: 17172
diff changeset
2660 endfunc
18154
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2661
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2662 func Test_normal_gk()
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2663 " needs 80 column new window
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2664 new
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2665 vert 80new
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2666 put =[repeat('x',90)..' {{{1', 'x {{{1']
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2667 norm! gk
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2668 " In a 80 column wide terminal the window will be only 78 char
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2669 " (because Vim will leave space for the other window),
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2670 " but if the terminal is larger, it will be 80 chars, so verify the
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2671 " cursor column correctly.
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2672 call assert_equal(winwidth(0)+1, col('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2673 call assert_equal(winwidth(0)+1, virtcol('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2674 norm! j
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2675 call assert_equal(6, col('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2676 call assert_equal(6, virtcol('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2677 norm! gk
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2678 call assert_equal(95, col('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2679 call assert_equal(95, virtcol('.'))
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2680 bw!
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2681 bw!
18291
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2682
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2683 " needs 80 column new window
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2684 new
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2685 vert 80new
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2686 set number
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2687 set numberwidth=10
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2688 set cpoptions+=n
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2689 put =[repeat('0',90), repeat('1',90)]
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2690 norm! 075l
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2691 call assert_equal(76, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2692 norm! gk
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2693 call assert_equal(1, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2694 norm! gk
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2695 call assert_equal(76, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2696 norm! gk
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2697 call assert_equal(1, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2698 norm! gj
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2699 call assert_equal(76, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2700 norm! gj
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2701 call assert_equal(1, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2702 norm! gj
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2703 call assert_equal(76, col('.'))
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2704 bw!
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2705 bw!
11f68eb58fda patch 8.1.2140: "gk" and "gj" do not work correctly in number column
Bram Moolenaar <Bram@vim.org>
parents: 18154
diff changeset
2706 set cpoptions& number& numberwidth&
18154
5e10ee16f4b4 patch 8.1.2072: "gk" moves to start of line instead of upwards
Bram Moolenaar <Bram@vim.org>
parents: 17698
diff changeset
2707 endfunc
19407
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2708
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2709 " Test for cursor movement with '-' in 'cpoptions'
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2710 func Test_normal_cpo_minus()
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2711 new
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2712 call setline(1, ['foo', 'bar', 'baz'])
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2713 let save_cpo = &cpo
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2714 set cpo+=-
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2715 call assert_beeps('normal 10j')
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2716 call assert_equal(1, line('.'))
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2717 normal G
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2718 call assert_beeps('normal 10k')
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2719 call assert_equal(3, line('.'))
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2720 call assert_fails(10, 'E16:')
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2721 let &cpo = save_cpo
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2722 close!
2f4be7ca1b1b patch 8.2.0261: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents: 18767
diff changeset
2723 endfunc