Mercurial > vim
annotate src/testdir/test_window_cmd.vim @ 30535:04df44c52d65 v9.0.0603
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Commit: https://github.com/vim/vim/commit/7c1cbb6cd437c6e0c3ccc05840cc931108b4a60a
Author: Luuk van Baal <luukvbaal@gmail.com>
Date: Tue Sep 27 12:31:15 2022 +0100
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Problem: With 'nosplitscroll' folds are not handled correctly.
Solution: Take care of closed folds when moving the cursor. (Luuk van Baal,
closes #11234)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 27 Sep 2022 13:45:04 +0200 |
parents | e3091fc473a1 |
children | f2f35161d75a |
rev | line source |
---|---|
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
1 " Tests for window cmd (:wincmd, :split, :vsplit, :resize and etc...) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
2 |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
21265
diff
changeset
|
3 source check.vim |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
4 source screendump.vim |
18253
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
5 |
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
6 func Test_window_cmd_ls0_with_split() |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
7 set ls=0 |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
8 set splitbelow |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
9 split |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
10 quit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
11 call assert_equal(0, &lines - &cmdheight - winheight(0)) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
12 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
13 " |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
14 set splitbelow&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
15 botright split |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
16 quit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
17 call assert_equal(0, &lines - &cmdheight - winheight(0)) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
18 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
19 set ls&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
20 endfunc |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
21 |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
22 func Test_window_cmd_cmdwin_with_vsp() |
23748
93f90f2ff4e9
patch 8.2.2415: no way to check for the cmdwin feature
Bram Moolenaar <Bram@vim.org>
parents:
23434
diff
changeset
|
23 CheckFeature cmdwin |
93f90f2ff4e9
patch 8.2.2415: no way to check for the cmdwin feature
Bram Moolenaar <Bram@vim.org>
parents:
23434
diff
changeset
|
24 |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
25 let efmt = 'Expected 0 but got %d (in ls=%d, %s window)' |
9102
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
26 for v in range(0, 2) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
27 exec "set ls=" . v |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
28 vsplit |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
29 call feedkeys("q:\<CR>") |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
30 let ac = &lines - (&cmdheight + winheight(0) + !!v) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
31 let emsg = printf(efmt, ac, v, 'left') |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
32 call assert_equal(0, ac, emsg) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
33 wincmd w |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
34 let ac = &lines - (&cmdheight + winheight(0) + !!v) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
35 let emsg = printf(efmt, ac, v, 'right') |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
36 call assert_equal(0, ac, emsg) |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
37 new | only! |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
38 endfor |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
39 set ls&vim |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
40 endfunc |
0e90f3e13d88
commit https://github.com/vim/vim/commit/991dea3ab185fb35e577ab0bdfd443cd4b43ccc6
Christian Brabandt <cb@256bit.org>
parents:
diff
changeset
|
41 |
29694
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
42 func Test_cmdheight_not_changed() |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
43 set cmdheight=2 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
44 set winminheight=0 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
45 augroup Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
46 autocmd WinEnter * wincmd _ |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
47 augroup END |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
48 split |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
49 tabnew |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
50 tabfirst |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
51 call assert_equal(2, &cmdheight) |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
52 |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
53 tabonly! |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
54 only |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
55 set winminwidth& cmdheight& |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
56 augroup Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
57 au! |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
58 augroup END |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
59 augroup! Maximize |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
60 endfunc |
cb4ddbe3caf3
patch 9.0.0187: command line height changes when maximizing window height
Bram Moolenaar <Bram@vim.org>
parents:
29546
diff
changeset
|
61 |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
62 " Test for jumping to windows |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
63 func Test_window_jump() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
64 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
65 " jumping to a window with a count greater than the max windows |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
66 exe "normal 4\<C-W>w" |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
67 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
68 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
69 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
70 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
71 func Test_window_cmd_wincmd_gf() |
9349
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
72 let fname = 'test_gf.txt' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
73 let swp_fname = '.' . fname . '.swp' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
74 call writefile([], fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
75 call writefile([], swp_fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
76 function s:swap_exists() |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
77 let v:swapchoice = s:swap_choice |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
78 endfunc |
17360
cb71b5e9e5d9
patch 8.1.1679: test using SwapExists autocommand file may fail
Bram Moolenaar <Bram@vim.org>
parents:
16690
diff
changeset
|
79 " Remove the catch-all that runtest.vim adds |
cb71b5e9e5d9
patch 8.1.1679: test using SwapExists autocommand file may fail
Bram Moolenaar <Bram@vim.org>
parents:
16690
diff
changeset
|
80 au! SwapExists |
9349
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
81 augroup test_window_cmd_wincmd_gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
82 autocmd! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
83 exec "autocmd SwapExists " . fname . " call s:swap_exists()" |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
84 augroup END |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
85 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
86 call setline(1, fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
87 " (E)dit anyway |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
88 let s:swap_choice = 'e' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
89 wincmd gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
90 call assert_equal(2, tabpagenr()) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
91 call assert_equal(fname, bufname("%")) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
92 quit! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
93 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
94 " (Q)uit |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
95 let s:swap_choice = 'q' |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
96 wincmd gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
97 call assert_equal(1, tabpagenr()) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
98 call assert_notequal(fname, bufname("%")) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
99 new | only! |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
100 |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
101 call delete(fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
102 call delete(swp_fname) |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
103 augroup! test_window_cmd_wincmd_gf |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
104 endfunc |
b24900b73f90
commit https://github.com/vim/vim/commit/5d2ca0402954ff79b73d9c86cc16c8a6454b75a7
Christian Brabandt <cb@256bit.org>
parents:
9102
diff
changeset
|
105 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
106 func Test_window_quit() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
107 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
108 split Xb |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
109 call assert_equal(2, '$'->winnr()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
110 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
111 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
112 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
113 wincmd q |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
114 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
115 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
116 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
117 bw Xa Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
118 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
119 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
120 func Test_window_horizontal_split() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
121 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
122 3wincmd s |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
123 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
124 call assert_equal(3, winheight(0)) |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
125 call assert_equal(winwidth(1), 2->winwidth()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
126 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
127 call assert_fails('botright topleft wincmd s', 'E442:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
128 bw |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
129 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
130 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
131 func Test_window_vertical_split() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
132 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
133 3wincmd v |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
134 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
135 call assert_equal(3, winwidth(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
136 call assert_equal(winheight(1), winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
137 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
138 call assert_fails('botright topleft wincmd v', 'E442:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
139 bw |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
140 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
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:
13880
diff
changeset
|
142 " Test the ":wincmd ^" and "<C-W>^" commands. |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
143 func Test_window_split_edit_alternate() |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
144 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
145 " Test for failure when the alternate buffer/file no longer exists. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
146 edit Xfoo | %bw |
22087
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
147 call assert_fails(':wincmd ^', 'E23:') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
148 |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
149 " Test for the expected behavior when we have 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:
13880
diff
changeset
|
150 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:
13880
diff
changeset
|
151 wincmd ^ |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
152 call assert_equal('Xfoo', bufname(winbufnr(1))) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
153 call assert_equal('Xbar', bufname(winbufnr(2))) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
154 only |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
155 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
156 " Test for the expected behavior when the alternate buffer is not named. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
157 enew | let l:nr1 = bufnr('%') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
158 edit Xfoo | let l:nr2 = bufnr('%') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
159 wincmd ^ |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
160 call assert_equal(l:nr1, winbufnr(1)) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
161 call assert_equal(l:nr2, winbufnr(2)) |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
162 only |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
163 |
15012
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
164 " FIXME: this currently fails on AppVeyor, but passes locally |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
165 if !has('win32') |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
166 " Test the Normal mode command. |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
167 call feedkeys("\<C-W>\<C-^>", 'tx') |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
168 call assert_equal(l:nr2, winbufnr(1)) |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
169 call assert_equal(l:nr1, winbufnr(2)) |
55663ef68467
patch 8.1.0517: Test_window_split_edit_alternate() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15006
diff
changeset
|
170 endif |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
171 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
172 %bw! |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
173 endfunc |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
174 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
175 " Test the ":[count]wincmd ^" and "[count]<C-W>^" commands. |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
176 func Test_window_split_edit_bufnr() |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
177 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
178 %bwipeout |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
179 let l:nr = bufnr('%') + 1 |
22087
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
180 call assert_fails(':execute "normal! ' . l:nr . '\<C-W>\<C-^>"', 'E92:') |
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
181 call assert_fails(':' . l:nr . 'wincmd ^', 'E16:') |
ff21e2962490
patch 8.2.1593: tests do not check the error number properly
Bram Moolenaar <Bram@vim.org>
parents:
22073
diff
changeset
|
182 call assert_fails(':0wincmd ^', 'E16:') |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
183 |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
184 edit Xfoo | edit Xbar | edit Xbaz |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
185 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:
13880
diff
changeset
|
186 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:
13880
diff
changeset
|
187 let l:baz_nr = bufnr('Xbaz') |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
188 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
189 " FIXME: this currently fails on AppVeyor, but passes locally |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
190 if !has('win32') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
191 call feedkeys(l:foo_nr . "\<C-W>\<C-^>", 'tx') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
192 call assert_equal('Xfoo', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
193 call assert_equal('Xbaz', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
194 only |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
195 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
196 call feedkeys(l:bar_nr . "\<C-W>\<C-^>", 'tx') |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
197 call assert_equal('Xbar', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
198 call assert_equal('Xfoo', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
199 only |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
200 |
15014
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
201 execute l:baz_nr . 'wincmd ^' |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
202 call assert_equal('Xbaz', bufname(winbufnr(1))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
203 call assert_equal('Xbar', bufname(winbufnr(2))) |
cc4c41448d77
patch 8.1.0518: Test_window_split_edit_bufnr() fails on AppVeyor
Bram Moolenaar <Bram@vim.org>
parents:
15012
diff
changeset
|
204 endif |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
205 |
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
206 %bw! |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
207 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
208 |
19740
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
209 func Test_window_split_no_room() |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
210 " N horizontal windows need >= 2*N + 1 lines: |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
211 " - 1 line + 1 status line in each window |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
212 " - 1 Ex command line |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
213 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
214 " 2*N + 1 <= &lines |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
215 " N <= (lines - 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
216 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
217 " Beyond that number of windows, E36: Not enough room is expected. |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
218 let hor_win_count = (&lines - 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
219 let hor_split_count = hor_win_count - 1 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
220 for s in range(1, hor_split_count) | split | endfor |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
221 call assert_fails('split', 'E36:') |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
222 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
223 " N vertical windows need >= 2*(N - 1) + 1 columns: |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
224 " - 1 column + 1 separator for each window (except last window) |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
225 " - 1 column for the last window which does not have separator |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
226 " |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
227 " 2*(N - 1) + 1 <= &columns |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
228 " 2*N - 1 <= &columns |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
229 " N <= (&columns + 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
230 let ver_win_count = (&columns + 1)/2 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
231 let ver_split_count = ver_win_count - 1 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
232 for s in range(1, ver_split_count) | vsplit | endfor |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
233 call assert_fails('vsplit', 'E36:') |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
234 |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
235 %bw! |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
236 endfunc |
a653d1a165ef
patch 8.2.0426: some errors were not tested for
Bram Moolenaar <Bram@vim.org>
parents:
19724
diff
changeset
|
237 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
238 func Test_window_exchange() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
239 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
240 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
241 " Nothing happens with window exchange when there is 1 window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
242 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
243 call assert_equal(1, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
244 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
245 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
246 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
247 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
248 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
249 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
250 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
251 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
252 " Exchange current window 1 with window 3 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
253 3wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
254 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
255 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
256 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
257 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
258 " Exchange window with next when at the top window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
259 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
260 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
261 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
262 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
263 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
264 " Exchange window with next when at the middle window |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
265 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
266 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
267 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
268 call assert_equal('Xc', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
269 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
270 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
271 " Exchange window with next when at the bottom window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
272 " When there is no next window, it exchanges with the previous window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
273 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
274 wincmd x |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
275 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
276 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
277 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
278 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
279 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
280 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
281 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
282 func Test_window_rotate() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
283 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
284 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
285 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
286 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
287 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
288 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
289 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
290 " Rotate downwards |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
291 wincmd r |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
292 call assert_equal('Xa', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
293 call assert_equal('Xc', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
294 call assert_equal('Xb', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
295 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
296 2wincmd r |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
297 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
298 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
299 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
300 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
301 " Rotate upwards |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
302 wincmd R |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
303 call assert_equal('Xb', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
304 call assert_equal('Xa', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
305 call assert_equal('Xc', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
306 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
307 2wincmd R |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
308 call assert_equal('Xc', bufname(winbufnr(1))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
309 call assert_equal('Xb', bufname(winbufnr(2))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
310 call assert_equal('Xa', bufname(winbufnr(3))) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
311 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
312 bot vsplit |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
313 call assert_fails('wincmd R', 'E443:') |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
314 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
315 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
316 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
317 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
318 func Test_window_height() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
319 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
320 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
321 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
322 let [wh1, wh2] = [winheight(1), winheight(2)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
323 " Active window (1) should have the same height or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
324 " than the other window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
325 call assert_inrange(wh2, wh2 + 1, wh1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
326 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
327 wincmd - |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
328 call assert_equal(wh1 - 1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
329 call assert_equal(wh2 + 1, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
330 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
331 wincmd + |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
332 call assert_equal(wh1, winheight(1)) |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
333 call assert_equal(wh2, 2->winheight()) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
334 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
335 2wincmd _ |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
336 call assert_equal(2, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
337 call assert_equal(wh1 + wh2 - 2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
338 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
339 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
340 call assert_equal(wh1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
341 call assert_equal(wh2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
342 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
343 2wincmd _ |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
344 set winfixheight |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
345 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
346 let [wh1, wh2, wh3] = [winheight(1), winheight(2), winheight(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
347 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
348 call assert_inrange(wh3, wh3 + 1, wh1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
349 3wincmd + |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
350 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
351 call assert_equal(wh1 + 3, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
352 call assert_equal(wh3 - 3, winheight(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
353 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
354 call assert_equal(2, winheight(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
355 call assert_equal(wh1, winheight(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
356 call assert_equal(wh3, winheight(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
357 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
358 wincmd j |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
359 set winfixheight& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
360 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
361 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
362 let [wh1, wh2, wh3] = [winheight(1), winheight(2), winheight(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
363 " Current window (2) should have the same height or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
364 " than the other windows. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
365 call assert_inrange(wh1, wh1 + 1, wh2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
366 call assert_inrange(wh3, wh3 + 1, wh2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
367 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
368 bw Xa Xb Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
369 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
370 |
30009
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
371 func Test_wincmd_equal() |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
372 edit Xone |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
373 below split Xtwo |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
374 rightbelow vsplit Xthree |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
375 call assert_equal('Xone', bufname(winbufnr(1))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
376 call assert_equal('Xtwo', bufname(winbufnr(2))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
377 call assert_equal('Xthree', bufname(winbufnr(3))) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
378 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
379 " Xone and Xtwo should be about the same height |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
380 let [wh1, wh2] = [winheight(1), winheight(2)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
381 call assert_inrange(wh1 - 1, wh1 + 1, wh2) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
382 " Xtwo and Xthree should be about the same width |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
383 let [ww2, ww3] = [winwidth(2), winwidth(3)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
384 call assert_inrange(ww2 - 1, ww2 + 1, ww3) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
385 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
386 1wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
387 10wincmd _ |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
388 2wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
389 20wincmd | |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
390 call assert_equal(10, winheight(1)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
391 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
392 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
393 " equalizing horizontally doesn't change the heights |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
394 hor wincmd = |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
395 call assert_equal(10, winheight(1)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
396 let [ww2, ww3] = [winwidth(2), winwidth(3)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
397 call assert_inrange(ww2 - 1, ww2 + 1, ww3) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
398 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
399 2wincmd w |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
400 20wincmd | |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
401 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
402 " equalizing vertically doesn't change the widths |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
403 vert wincmd = |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
404 call assert_equal(20, winwidth(2)) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
405 let [wh1, wh2] = [winheight(1), winheight(2)] |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
406 call assert_inrange(wh1 - 1, wh1 + 1, wh2) |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
407 |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
408 bwipe Xone Xtwo Xthree |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
409 endfunc |
b97a870a7c63
patch 9.0.0342: ":wincmd =" equalizes in two directions
Bram Moolenaar <Bram@vim.org>
parents:
30005
diff
changeset
|
410 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
411 func Test_window_width() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
412 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
413 vsplit Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
414 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
415 let [ww1, ww2] = [winwidth(1), winwidth(2)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
416 " Active window (1) should have the same width or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
417 " than the other window. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
418 call assert_inrange(ww2, ww2 + 1, ww1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
419 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
420 wincmd < |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
421 call assert_equal(ww1 - 1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
422 call assert_equal(ww2 + 1, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
423 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
424 wincmd > |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
425 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
426 call assert_equal(ww2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
427 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
428 2wincmd | |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
429 call assert_equal(2, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
430 call assert_equal(ww1 + ww2 - 2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
431 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
432 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
433 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
434 call assert_equal(ww2, winwidth(2)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
435 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
436 2wincmd | |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
437 set winfixwidth |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
438 vsplit Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
439 let [ww1, ww2, ww3] = [winwidth(1), winwidth(2), winwidth(3)] |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
440 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
441 call assert_inrange(ww3, ww3 + 1, ww1) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
442 3wincmd > |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
443 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
444 call assert_equal(ww1 + 3, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
445 call assert_equal(ww3 - 3, winwidth(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
446 wincmd = |
11207
e6140f3d2be7
patch 8.0.0490: vertical split makes 'winfixwidth' window smaller
Christian Brabandt <cb@256bit.org>
parents:
11197
diff
changeset
|
447 call assert_equal(2, winwidth(2)) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
448 call assert_equal(ww1, winwidth(1)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
449 call assert_equal(ww3, winwidth(3)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
450 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
451 wincmd l |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
452 set winfixwidth& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
453 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
454 wincmd = |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
455 let [ww1, ww2, ww3] = [winwidth(1), winwidth(2), winwidth(3)] |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
456 " Current window (2) should have the same width or 1 more |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
457 " than the other windows. |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
458 call assert_inrange(ww1, ww1 + 1, ww2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
459 call assert_inrange(ww3, ww3 + 1, ww2) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
460 |
24882
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
461 " when the current window width is less than the new 'winwidth', the current |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
462 " window width should be increased. |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
463 enew | only |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
464 split |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
465 10vnew |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
466 set winwidth=15 |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
467 call assert_equal(15, winwidth(0)) |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
468 |
4c1b6f3eb96b
patch 8.2.2979: not all options code is covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
24180
diff
changeset
|
469 %bw! |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
470 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
471 |
11591
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
472 func Test_equalalways_on_close() |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
473 set equalalways |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
474 vsplit |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
475 windo split |
15006
1fd8e32532f7
patch 8.1.0514: CTRL-W ^ does not work when alternate buffer has no name
Bram Moolenaar <Bram@vim.org>
parents:
13880
diff
changeset
|
476 split |
11591
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
477 wincmd J |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
478 " now we have a frame top-left with two windows, a frame top-right with two |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
479 " windows and a frame at the bottom, full-width. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
480 let height_1 = winheight(1) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
481 let height_2 = winheight(2) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
482 let height_3 = winheight(3) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
483 let height_4 = winheight(4) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
484 " closing the bottom window causes all windows to be resized. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
485 close |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
486 call assert_notequal(height_1, winheight(1)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
487 call assert_notequal(height_2, winheight(2)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
488 call assert_notequal(height_3, winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
489 call assert_notequal(height_4, winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
490 call assert_equal(winheight(1), winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
491 call assert_equal(winheight(2), winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
492 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
493 1wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
494 split |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
495 4wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
496 resize + 5 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
497 " left column has three windows, equalized heights. |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
498 " right column has two windows, top one a bit higher |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
499 let height_1 = winheight(1) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
500 let height_2 = winheight(2) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
501 let height_4 = winheight(4) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
502 let height_5 = winheight(5) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
503 3wincmd w |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
504 " closing window in left column equalizes heights in left column but not in |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
505 " the right column |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
506 close |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
507 call assert_notequal(height_1, winheight(1)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
508 call assert_notequal(height_2, winheight(2)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
509 call assert_equal(height_4, winheight(3)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
510 call assert_equal(height_5, winheight(4)) |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
511 |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
512 only |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
513 set equalalways& |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
514 endfunc |
d06a3db9b651
patch 8.0.0678: closing a window does not trigger resizing
Christian Brabandt <cb@256bit.org>
parents:
11207
diff
changeset
|
515 |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
516 func Test_win_screenpos() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
517 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
518 |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
519 call assert_equal(1, winnr('$')) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
520 split |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
521 vsplit |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
522 10wincmd _ |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
523 30wincmd | |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
524 call assert_equal([1, 1], win_screenpos(1)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
525 call assert_equal([1, 32], win_screenpos(2)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
526 call assert_equal([12, 1], win_screenpos(3)) |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
527 call assert_equal([0, 0], win_screenpos(4)) |
20178
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
528 call assert_fails('let l = win_screenpos([])', 'E745:') |
12977
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
529 only |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
530 endfunc |
2d817fd289ba
patch 8.0.1364: there is no easy way to get the window position
Christian Brabandt <cb@256bit.org>
parents:
12019
diff
changeset
|
531 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
532 func Test_window_jump_tag() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
533 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
534 |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
535 help |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
536 /iccf |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
537 call assert_match('^|iccf|', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
538 call assert_equal(2, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
539 2wincmd } |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
540 call assert_equal(3, winnr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
541 call assert_match('^|iccf|', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
542 wincmd k |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
543 call assert_match('\*iccf\*', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
544 call assert_equal(2, winheight(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
545 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
546 wincmd z |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
547 set previewheight=4 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
548 help |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
549 /bugs |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
550 wincmd } |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
551 wincmd k |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
552 call assert_match('\*bugs\*', getline('.')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
553 call assert_equal(4, winheight(0)) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
554 set previewheight& |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
555 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
556 %bw! |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
557 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
558 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
559 func Test_window_newtab() |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
560 e Xa |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
561 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
562 call assert_equal(1, tabpagenr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
563 call assert_equal("\nAlready only one window", execute('wincmd T')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
564 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
565 split Xb |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
566 split Xc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
567 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
568 wincmd T |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
569 call assert_equal(2, tabpagenr('$')) |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
570 call assert_equal(['Xb', 'Xa'], map(tabpagebuflist(1), 'bufname(v:val)')) |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
571 call assert_equal(['Xc' ], map(2->tabpagebuflist(), 'bufname(v:val)')) |
19783
546bdeef35f1
patch 8.2.0448: various functions not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19752
diff
changeset
|
572 call assert_equal(['Xc' ], map(tabpagebuflist(), 'bufname(v:val)')) |
11197
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
573 |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
574 %bw! |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
575 endfunc |
7f355d8cd634
patch 8.0.0485: not all windows commands are tested
Christian Brabandt <cb@256bit.org>
parents:
11193
diff
changeset
|
576 |
11193
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
577 func Test_next_split_all() |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
578 " This was causing an illegal memory access. |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
579 n x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
580 norm axxx |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
581 split |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
582 split |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
583 s/x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
584 s/x |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
585 all |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
586 bwipe! |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
587 endfunc |
75ccc8a15a51
patch 8.0.0483: illegal memory access when using :all
Christian Brabandt <cb@256bit.org>
parents:
9909
diff
changeset
|
588 |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
589 " Tests for adjusting window and contents |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
590 func GetScreenStr(row) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
591 let str = "" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
592 for c in range(1,3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
593 let str .= nr2char(screenchar(a:row, c)) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
594 endfor |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
595 return str |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
596 endfunc |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
597 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
598 func Test_window_contents() |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
599 enew! | only | new |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
600 call setline(1, range(1,256)) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
601 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
602 exe "norm! \<C-W>t\<C-W>=1Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
603 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
604 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
605 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
606 call assert_equal(1, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
607 call assert_equal('1 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
608 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
609 exe "norm! \<C-W>t\<C-W>=50Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
610 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
611 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
612 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
613 call assert_equal(50, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
614 call assert_equal('50 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
615 |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
616 exe "norm! \<C-W>t\<C-W>=59Gzt\<C-W>w\<C-W>+" |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
617 redraw |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
618 let s3 = GetScreenStr(1) |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
619 wincmd p |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
620 call assert_equal(59, line("w0")) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
621 call assert_equal('59 ', s3) |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
622 |
19724
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
623 %d |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
624 call setline(1, ['one', 'two', 'three']) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
625 call assert_equal(1, line('w0')) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
626 call assert_equal(3, line('w$')) |
b3e93a05c3ca
patch 8.2.0418: code in eval.c not sufficiently covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19435
diff
changeset
|
627 |
12019
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
628 bwipeout! |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
629 call test_garbagecollect_now() |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
630 endfunc |
7d7835ab8b37
patch 8.0.0890: still many old style tests
Christian Brabandt <cb@256bit.org>
parents:
11591
diff
changeset
|
631 |
13072
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
632 func Test_window_colon_command() |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
633 " This was reading invalid memory. |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
634 exe "norm! v\<C-W>:\<C-U>echo v:version" |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
635 endfunc |
50aa6da392ce
patch 8.0.1411: reading invalid memory with CTRL-W :
Christian Brabandt <cb@256bit.org>
parents:
12977
diff
changeset
|
636 |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
637 func Test_access_freed_mem() |
17516
711db62c8aca
patch 8.1.1756: autocommand that splits window messes up window layout
Bram Moolenaar <Bram@vim.org>
parents:
17360
diff
changeset
|
638 call assert_equal(&columns, winwidth(0)) |
23758
97296182d336
patch 8.2.2420: too many problems with using all autocommand events
Bram Moolenaar <Bram@vim.org>
parents:
23748
diff
changeset
|
639 " This was accessing freed memory (but with what events?) |
97296182d336
patch 8.2.2420: too many problems with using all autocommand events
Bram Moolenaar <Bram@vim.org>
parents:
23748
diff
changeset
|
640 au BufEnter,BufLeave,WinEnter,WinLeave 0 vs xxx |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
641 arg 0 |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
642 argadd |
21265
6a4806e326dd
patch 8.2.1183: assert_fails() checks the last error message
Bram Moolenaar <Bram@vim.org>
parents:
21020
diff
changeset
|
643 call assert_fails("all", "E242:") |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
644 au! |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
645 bwipe xxx |
17516
711db62c8aca
patch 8.1.1756: autocommand that splits window messes up window layout
Bram Moolenaar <Bram@vim.org>
parents:
17360
diff
changeset
|
646 call assert_equal(&columns, winwidth(0)) |
13144
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
647 endfunc |
20fb8c711050
patch 8.0.1446: acessing freed memory after window command in auto command
Christian Brabandt <cb@256bit.org>
parents:
13072
diff
changeset
|
648 |
18253
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
649 func Test_insert_cleared_on_switch_to_term() |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
650 CheckFeature terminal |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
651 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
652 set showmode |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
653 terminal |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
654 wincmd p |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
655 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
656 call feedkeys("i\<C-O>", 'ntx') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
657 redraw |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
658 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
659 " The "-- (insert) --" indicator should be visible. |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
660 let chars = map(range(1, &columns), 'nr2char(screenchar(&lines, v:val))') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
661 let str = trim(join(chars, '')) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
662 call assert_equal('-- (insert) --', str) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
663 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
664 call feedkeys("\<C-W>p", 'ntx') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
665 redraw |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
666 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
667 " The "-- (insert) --" indicator should have been cleared. |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
668 let chars = map(range(1, &columns), 'nr2char(screenchar(&lines, v:val))') |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
669 let str = trim(join(chars, '')) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
670 call assert_equal('', str) |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
671 |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
672 set showmode& |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
673 %bw! |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
674 endfunc |
783f796a1426
patch 8.1.2121: mode is not updated when switching to terminal
Bram Moolenaar <Bram@vim.org>
parents:
18049
diff
changeset
|
675 |
13666
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
676 func Test_visual_cleared_after_window_split() |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
677 new | only! |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
678 let smd_save = &showmode |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
679 set showmode |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
680 let ls_save = &laststatus |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
681 set laststatus=1 |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
682 call setline(1, ['a', 'b', 'c', 'd', '']) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
683 norm! G |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
684 exe "norm! kkvk" |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
685 redraw |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
686 exe "norm! \<C-W>v" |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
687 redraw |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
688 " check if '-- VISUAL --' disappeared from command line |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
689 let columns = range(1, &columns) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
690 let cmdlinechars = map(columns, 'nr2char(screenchar(&lines, v:val))') |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
691 let cmdline = join(cmdlinechars, '') |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
692 let cmdline_ltrim = substitute(cmdline, '^\s*', "", "") |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
693 let mode_shown = substitute(cmdline_ltrim, '\s*$', "", "") |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
694 call assert_equal('', mode_shown) |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
695 let &showmode = smd_save |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
696 let &laststatus = ls_save |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
697 bwipe! |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
698 endfunc |
57da3d873f20
patch 8.0.1705: when making a vertical split the mode message isn't updated
Christian Brabandt <cb@256bit.org>
parents:
13144
diff
changeset
|
699 |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
700 func Test_winrestcmd() |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
701 2split |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
702 3vsplit |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
703 let restcmd = winrestcmd() |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
704 call assert_equal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
705 call assert_equal(3, winwidth(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
706 wincmd = |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
707 call assert_notequal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
708 call assert_notequal(3, winwidth(0)) |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
709 exe restcmd |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
710 call assert_equal(2, winheight(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
711 call assert_equal(3, winwidth(0)) |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
712 only |
24180
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
713 |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
714 wincmd v |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
715 wincmd s |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
716 wincmd v |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
717 redraw |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
718 let restcmd = winrestcmd() |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
719 wincmd _ |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
720 wincmd | |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
721 exe restcmd |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
722 redraw |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
723 call assert_equal(restcmd, winrestcmd()) |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
724 |
3c165c7432ff
patch 8.2.2631: commands from winrestcmd() do not always work properly
Bram Moolenaar <Bram@vim.org>
parents:
23758
diff
changeset
|
725 only |
13880
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
726 endfunc |
60e80884994d
patch 8.0.1811: no test for winrestcmd()
Christian Brabandt <cb@256bit.org>
parents:
13666
diff
changeset
|
727 |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
15241
diff
changeset
|
728 func Fun_RenewFile() |
17746
a4e488a6655c
patch 8.1.1870: using :pedit from a help file sets help filetype
Bram Moolenaar <Bram@vim.org>
parents:
17516
diff
changeset
|
729 " Need to wait a bit for the timestamp to be older. |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
730 let old_ftime = getftime("tmp.txt") |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
731 while getftime("tmp.txt") == old_ftime |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
732 sleep 100m |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
733 silent execute '!echo "1" > tmp.txt' |
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
734 endwhile |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
735 sp |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
736 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
737 edit! tmp.txt |
15406
63b02fcf1361
patch 8.1.0711: test files still use function!
Bram Moolenaar <Bram@vim.org>
parents:
15241
diff
changeset
|
738 endfunc |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
739 |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
740 func Test_window_prevwin() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
741 " Can we make this work on MS-Windows? |
21765
08940efa6b4e
patch 8.2.1432: various inconsistencies in test files
Bram Moolenaar <Bram@vim.org>
parents:
21265
diff
changeset
|
742 CheckUnix |
15241
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
743 |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
744 set hidden autoread |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
745 call writefile(['2'], 'tmp.txt') |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
746 new tmp.txt |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
747 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
748 call Fun_RenewFile() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
749 call assert_equal(2, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
750 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
751 call assert_equal(1, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
752 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
753 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
754 call Fun_RenewFile() |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
755 call assert_equal(2, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
756 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
757 call assert_equal(1, winnr()) |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
758 wincmd p |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
759 " reset |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
760 q |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
761 call delete('tmp.txt') |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
762 set hidden&vim autoread&vim |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
763 delfunc Fun_RenewFile |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
764 endfunc |
83ff85896a14
patch 8.1.0630: "wincmd p" does not work after using an autocmd window
Bram Moolenaar <Bram@vim.org>
parents:
15014
diff
changeset
|
765 |
15977
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
766 func Test_relative_cursor_position_in_one_line_window() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
767 new |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
768 only |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
769 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
770 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
771 let lnum = getcurpos()[1] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
772 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
773 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
774 " make third window take as many lines as possible, other windows will |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
775 " become one line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
776 3wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
777 for i in range(1, &lines - 6) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
778 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
779 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
780 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
781 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
782 " first and second window should show cursor line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
783 let wininfo = getwininfo() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
784 call assert_equal(lnum, wininfo[0].topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
785 call assert_equal(lnum, wininfo[1].topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
786 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
787 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
788 bwipe! |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
789 call assert_fails('call winrestview(test_null_dict())', 'E1297:') |
15977
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
790 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
791 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
792 func Test_relative_cursor_position_after_move_and_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
793 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
794 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
795 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
796 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
797 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
798 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
799 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
800 " Move cursor to first line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
801 normal H |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
802 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
803 " Reduce window height to two lines |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
804 let height = winheight(0) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
805 while winheight(0) > 2 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
806 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
807 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
808 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
809 " move cursor to second/last line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
810 normal j |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
811 " restore previous height |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
812 while winheight(0) < height |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
813 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
814 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
815 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
816 " make window two lines again |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
817 while winheight(0) > 2 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
818 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
819 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
820 endwhile |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
821 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
822 " cursor should be at bottom line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
823 let info = getwininfo(win_getid())[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
824 call assert_equal(info.topline + 1, getcurpos()[1]) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
825 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
826 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
827 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
828 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
829 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
830 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
831 func Test_relative_cursor_position_after_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
832 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
833 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
834 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
835 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
836 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
837 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
838 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
839 let winid1 = win_getid() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
840 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
841 " Move cursor to second line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
842 exe "normal " . (info.topline + 1) . "G" |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
843 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
844 let lnum = getcurpos()[1] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
845 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
846 " Make the window only two lines high, cursor should end up in top line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
847 2wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
848 exe (info.height - 2) . "wincmd +" |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
849 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
850 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
851 call assert_equal(lnum, info.topline) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
852 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
853 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
854 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
855 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
856 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
857 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
858 func Test_relative_cursor_second_line_after_resize() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
859 let so_save = &so |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
860 set so=0 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
861 enew |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
862 call setline(1, range(1, 10000)) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
863 normal 50% |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
864 split |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
865 1wincmd w |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
866 let winid1 = win_getid() |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
867 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
868 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
869 " Make the window only two lines high |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
870 2wincmd _ |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
871 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
872 " Move cursor to second line in window |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
873 normal H |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
874 normal j |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
875 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
876 " Make window size bigger, then back to 2 lines |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
877 for i in range(1, 10) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
878 wincmd + |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
879 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
880 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
881 for i in range(1, 10) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
882 wincmd - |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
883 redraw! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
884 endfor |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
885 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
886 " cursor should end up in bottom line |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
887 let info = getwininfo(winid1)[0] |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
888 call assert_equal(info.topline + 1, getcurpos()[1]) |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
889 |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
890 only! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
891 bwipe! |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
892 let &so = so_save |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
893 endfunc |
7fbdceabad64
patch 8.1.0994: relative cursor position is not calculated correctly
Bram Moolenaar <Bram@vim.org>
parents:
15406
diff
changeset
|
894 |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
895 func Test_split_noscroll() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
896 let so_save = &so |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
897 enew |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
898 call setline(1, range(1, 8)) |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
899 normal 100% |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
900 split |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
901 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
902 1wincmd w |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
903 let winid1 = win_getid() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
904 let info1 = getwininfo(winid1)[0] |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
905 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
906 2wincmd w |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
907 let winid2 = win_getid() |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
908 let info2 = getwininfo(winid2)[0] |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
909 |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
910 call assert_equal(1, info1.topline) |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
911 call assert_equal(1, info2.topline) |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
912 |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
913 " window that fits all lines by itself, but not when split: closing other |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
914 " window should restore fraction. |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
915 only! |
16690
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
916 call setline(1, range(1, &lines - 10)) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
917 exe &lines / 4 |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
918 let winid1 = win_getid() |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
919 let info1 = getwininfo(winid1)[0] |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
920 call assert_equal(1, info1.topline) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
921 new |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
922 redraw |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
923 close |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
924 let info1 = getwininfo(winid1)[0] |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
925 call assert_equal(1, info1.topline) |
4e3c4e8e465c
patch 8.1.1347: fractional scroll position not restored after closing window
Bram Moolenaar <Bram@vim.org>
parents:
16650
diff
changeset
|
926 |
16650
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
927 bwipe! |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
928 let &so = so_save |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
929 endfunc |
06fd0eaada01
patch 8.1.1327: unnecessary scroll after horizontal split
Bram Moolenaar <Bram@vim.org>
parents:
16271
diff
changeset
|
930 |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
931 " Tests for the winnr() function |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
932 func Test_winnr() |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
933 only | tabonly |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
934 call assert_equal(1, winnr('j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
935 call assert_equal(1, winnr('k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
936 call assert_equal(1, winnr('h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
937 call assert_equal(1, winnr('l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
938 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
939 " create a set of horizontally and vertically split windows |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
940 leftabove new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
941 leftabove new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
942 rightbelow new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
943 rightbelow new | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
944 leftabove vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
945 leftabove vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
946 rightbelow vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
947 rightbelow vnew | wincmd p |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
948 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
949 call assert_equal(8, winnr('j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
950 call assert_equal(2, winnr('k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
951 call assert_equal(4, winnr('h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
952 call assert_equal(6, winnr('l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
953 call assert_equal(9, winnr('2j')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
954 call assert_equal(1, winnr('2k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
955 call assert_equal(3, winnr('2h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
956 call assert_equal(7, winnr('2l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
957 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
958 " Error cases |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
959 call assert_fails("echo winnr('0.2k')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
960 call assert_equal(2, winnr('-2k')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
961 call assert_fails("echo winnr('-2xj')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
962 call assert_fails("echo winnr('j2j')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
963 call assert_fails("echo winnr('ll')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
964 call assert_fails("echo winnr('5')", 'E15:') |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
965 call assert_equal(4, winnr('0h')) |
20178
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
966 call assert_fails("let w = winnr([])", 'E730:') |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
967 call assert_equal('unknown', win_gettype(-1)) |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
968 call assert_equal(-1, winheight(-1)) |
2fb397573541
patch 8.2.0644: insufficient testing for invalid function arguments
Bram Moolenaar <Bram@vim.org>
parents:
20120
diff
changeset
|
969 call assert_equal(-1, winwidth(-1)) |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
970 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
971 tabnew |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
972 call assert_equal(8, tabpagewinnr(1, 'j')) |
18031
8a2fb21c23c0
patch 8.1.2011: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
17746
diff
changeset
|
973 call assert_equal(2, 1->tabpagewinnr('k')) |
16271
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
974 call assert_equal(4, tabpagewinnr(1, 'h')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
975 call assert_equal(6, tabpagewinnr(1, 'l')) |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
976 |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
977 only | tabonly |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
978 endfunc |
243cdc183ec9
patch 8.1.1140: not easy to find out what neighbors a window has
Bram Moolenaar <Bram@vim.org>
parents:
15977
diff
changeset
|
979 |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
980 func Test_winrestview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
981 split runtest.vim |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
982 normal 50% |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
983 let view = winsaveview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
984 close |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
985 split runtest.vim |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
986 eval view->winrestview() |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
987 call assert_equal(view, winsaveview()) |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
988 |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
989 bwipe! |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
990 call assert_fails('call winrestview(test_null_dict())', 'E1297:') |
18035
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
991 endfunc |
11dca9732a48
patch 8.1.2013: more functions can be used as methods
Bram Moolenaar <Bram@vim.org>
parents:
18031
diff
changeset
|
992 |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
993 func Test_win_splitmove() |
18767
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
994 CheckFeature quickfix |
068337e86133
patch 8.1.2373: cannot build with +popupwin but without +quickfix
Bram Moolenaar <Bram@vim.org>
parents:
18253
diff
changeset
|
995 |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
996 edit a |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
997 leftabove split b |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
998 leftabove vsplit c |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
999 leftabove split d |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1000 call assert_equal(0, win_splitmove(winnr(), winnr('l'))) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1001 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1002 call assert_equal(bufname(winbufnr(2)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1003 call assert_equal(bufname(winbufnr(3)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1004 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1005 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1006 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1007 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1008 call assert_equal(bufname(winbufnr(2)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1009 call assert_equal(bufname(winbufnr(3)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1010 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1011 call assert_equal(0, win_splitmove(winnr(), winnr('k'), {'vertical': 1})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1012 call assert_equal(bufname(winbufnr(1)), 'd') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1013 call assert_equal(bufname(winbufnr(2)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1014 call assert_equal(bufname(winbufnr(3)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1015 call assert_equal(bufname(winbufnr(4)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1016 call assert_equal(0, win_splitmove(winnr(), winnr('j'), {'rightbelow': v:true})) |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1017 call assert_equal(bufname(winbufnr(1)), 'c') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1018 call assert_equal(bufname(winbufnr(2)), 'b') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1019 call assert_equal(bufname(winbufnr(3)), 'a') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1020 call assert_equal(bufname(winbufnr(4)), 'd') |
29994
86eb4aba16c3
patch 9.0.0335: checks for Dictionary argument often give a vague error
Bram Moolenaar <Bram@vim.org>
parents:
29694
diff
changeset
|
1021 call assert_fails('call win_splitmove(winnr(), winnr("k"), test_null_dict())', 'E1297:') |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1022 only | bd |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1023 |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1024 call assert_fails('call win_splitmove(winnr(), 123)', 'E957:') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1025 call assert_fails('call win_splitmove(123, winnr())', 'E957:') |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1026 call assert_fails('call win_splitmove(winnr(), winnr())', 'E957:') |
19065
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1027 |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1028 tabnew |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1029 call assert_fails('call win_splitmove(1, win_getid(1, 1))', 'E957:') |
ef3633932b0c
patch 8.2.0093: win_splitmove() can make Vim hang
Bram Moolenaar <Bram@vim.org>
parents:
18767
diff
changeset
|
1030 tabclose |
18049
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1031 endfunc |
a9f1656f13c9
patch 8.1.2020: it is not easy to change the window layout
Bram Moolenaar <Bram@vim.org>
parents:
18035
diff
changeset
|
1032 |
19289
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1033 " Test for the :only command |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1034 func Test_window_only() |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1035 new |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1036 set modified |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1037 new |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1038 call assert_fails('only', 'E445:') |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1039 only! |
19425
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1040 " Test for :only with a count |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1041 let wid = win_getid() |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1042 new |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1043 new |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1044 3only |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1045 call assert_equal(1, winnr('$')) |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1046 call assert_equal(wid, win_getid()) |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1047 call assert_fails('close', 'E444:') |
67fbe280a502
patch 8.2.0270: some code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19370
diff
changeset
|
1048 call assert_fails('%close', 'E16:') |
19289
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1049 endfunc |
2f0f308c069c
patch 8.2.0203: :helptags and some other functionality not tested
Bram Moolenaar <Bram@vim.org>
parents:
19065
diff
changeset
|
1050 |
19370
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1051 " Test for errors with :wincmd |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1052 func Test_wincmd_errors() |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1053 call assert_fails('wincmd g', 'E474:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1054 call assert_fails('wincmd ab', 'E474:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1055 endfunc |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1056 |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1057 " Test for errors with :winpos |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1058 func Test_winpos_errors() |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1059 if !has("gui_running") && !has('win32') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1060 call assert_fails('winpos', 'E188:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1061 endif |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1062 call assert_fails('winpos 10', 'E466:') |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1063 endfunc |
02111977dd05
patch 8.2.0243: insufficient code coverage for ex_docmd.c functions
Bram Moolenaar <Bram@vim.org>
parents:
19289
diff
changeset
|
1064 |
19435
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1065 " Test for +cmd in a :split command |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1066 func Test_split_cmd() |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1067 split +set\ readonly |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1068 call assert_equal(1, &readonly) |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1069 call assert_equal(2, winnr('$')) |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1070 close |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1071 endfunc |
8f8a5a15d00a
patch 8.2.0275: some Ex code not covered by tests
Bram Moolenaar <Bram@vim.org>
parents:
19425
diff
changeset
|
1072 |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1073 " Create maximum number of horizontally or vertically split windows and then |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1074 " run commands that create a new horizontally/vertically split window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1075 func Run_noroom_for_newwindow_test(dir_arg) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1076 let dir = (a:dir_arg == 'v') ? 'vert ' : '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1077 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1078 " Open as many windows as possible |
19752
0927df746554
patch 8.2.0432: a few tests fail in a huge terminal
Bram Moolenaar <Bram@vim.org>
parents:
19748
diff
changeset
|
1079 while v:true |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1080 try |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1081 exe dir . 'new' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1082 catch /E36:/ |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1083 break |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1084 endtry |
19752
0927df746554
patch 8.2.0432: a few tests fail in a huge terminal
Bram Moolenaar <Bram@vim.org>
parents:
19748
diff
changeset
|
1085 endwhile |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1086 |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1087 call writefile(['first', 'second', 'third'], 'Xnorfile1') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1088 call writefile([], 'Xnorfile2') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1089 call writefile([], 'Xnorfile3') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1090 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1091 " Argument list related commands |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1092 args Xnorfile1 Xnorfile2 Xnorfile3 |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1093 next |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1094 for cmd in ['sargument 2', 'snext', 'sprevious', 'sNext', 'srewind', |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1095 \ 'sfirst', 'slast'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1096 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1097 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1098 %argdelete |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1099 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1100 " Buffer related commands |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1101 set modified |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1102 hide enew |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1103 for cmd in ['sbuffer Xnorfile1', 'sbnext', 'sbprevious', 'sbNext', 'sbrewind', |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1104 \ 'sbfirst', 'sblast', 'sball', 'sbmodified', 'sunhide'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1105 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1106 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1107 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1108 " Window related commands |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1109 for cmd in ['split', 'split Xnorfile2', 'new', 'new Xnorfile3', 'sview Xnorfile1', |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1110 \ 'sfind runtest.vim'] |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1111 call assert_fails(dir .. cmd, 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1112 endfor |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1113 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1114 " Help |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1115 call assert_fails(dir .. 'help', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1116 call assert_fails(dir .. 'helpgrep window', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1117 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1118 " Command-line window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1119 if a:dir_arg == 'h' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1120 " Cmd-line window is always a horizontally split window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1121 call assert_beeps('call feedkeys("q:\<CR>", "xt")') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1122 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1123 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1124 " Quickfix and location list window |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1125 if has('quickfix') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1126 cexpr '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1127 call assert_fails(dir .. 'copen', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1128 lexpr '' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1129 call assert_fails(dir .. 'lopen', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1130 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1131 " Preview window |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1132 call assert_fails(dir .. 'pedit Xnorfile2', 'E36:') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1133 call setline(1, 'abc') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1134 call assert_fails(dir .. 'psearch abc', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1135 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1136 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1137 " Window commands (CTRL-W ^ and CTRL-W f) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1138 if a:dir_arg == 'h' |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1139 call assert_fails('call feedkeys("\<C-W>^", "xt")', 'E36:') |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1140 call setline(1, 'Xnorfile1') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1141 call assert_fails('call feedkeys("gg\<C-W>f", "xt")', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1142 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1143 enew! |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1144 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1145 " Tag commands (:stag, :stselect and :stjump) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1146 call writefile(["!_TAG_FILE_ENCODING\tutf-8\t//", |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1147 \ "second\tXnorfile1\t2", |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1148 \ "third\tXnorfile1\t3",], |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1149 \ 'Xtags') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1150 set tags=Xtags |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1151 call assert_fails(dir .. 'stag second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1152 call assert_fails('call feedkeys(":" .. dir .. "stselect second\n1\n", "xt")', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1153 call assert_fails(dir .. 'stjump second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1154 call assert_fails(dir .. 'ptag second', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1155 set tags& |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1156 call delete('Xtags') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1157 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1158 " :isplit and :dsplit |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1159 call setline(1, ['#define FOO 1', 'FOO']) |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1160 normal 2G |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1161 call assert_fails(dir .. 'isplit FOO', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1162 call assert_fails(dir .. 'dsplit FOO', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1163 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1164 " terminal |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1165 if has('terminal') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1166 call assert_fails(dir .. 'terminal', 'E36:') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1167 endif |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1168 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1169 %bwipe! |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1170 call delete('Xnorfile1') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1171 call delete('Xnorfile2') |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1172 call delete('Xnorfile3') |
19748
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1173 only |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1174 endfunc |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1175 |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1176 func Test_split_cmds_with_no_room() |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1177 call Run_noroom_for_newwindow_test('h') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1178 call Run_noroom_for_newwindow_test('v') |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1179 endfunc |
d089bd9511c0
patch 8.2.0430: window creation failure not properly tested
Bram Moolenaar <Bram@vim.org>
parents:
19740
diff
changeset
|
1180 |
20120
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1181 " Test for various wincmd failures |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1182 func Test_wincmd_fails() |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1183 only! |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1184 call assert_beeps("normal \<C-W>w") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1185 call assert_beeps("normal \<C-W>p") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1186 call assert_beeps("normal \<C-W>gk") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1187 call assert_beeps("normal \<C-W>r") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1188 call assert_beeps("normal \<C-W>K") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1189 call assert_beeps("normal \<C-W>H") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1190 call assert_beeps("normal \<C-W>2gt") |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1191 endfunc |
16460964c304
patch 8.2.0615: regexp benchmark stest is old style
Bram Moolenaar <Bram@vim.org>
parents:
19932
diff
changeset
|
1192 |
22073
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1193 func Test_window_resize() |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1194 " Vertical :resize (absolute, relative, min and max size). |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1195 vsplit |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1196 vert resize 8 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1197 call assert_equal(8, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1198 vert resize +2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1199 call assert_equal(10, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1200 vert resize -2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1201 call assert_equal(8, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1202 vert resize |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1203 call assert_equal(&columns - 2, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1204 vert resize 0 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1205 call assert_equal(1, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1206 vert resize 99999 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1207 call assert_equal(&columns - 2, winwidth(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1208 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1209 %bwipe! |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1210 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1211 " Horizontal :resize (with absolute, relative size, min and max size). |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1212 split |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1213 resize 8 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1214 call assert_equal(8, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1215 resize +2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1216 call assert_equal(10, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1217 resize -2 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1218 call assert_equal(8, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1219 resize |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1220 call assert_equal(&lines - 4, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1221 resize 0 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1222 call assert_equal(1, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1223 resize 99999 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1224 call assert_equal(&lines - 4, winheight(0)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1225 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1226 " :resize with explicit window number. |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1227 let other_winnr = winnr('j') |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1228 exe other_winnr .. 'resize 10' |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1229 call assert_equal(10, winheight(other_winnr)) |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1230 call assert_equal(&lines - 10 - 3, winheight(0)) |
22616
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1231 exe other_winnr .. 'resize +1' |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1232 exe other_winnr .. 'resize +1' |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1233 call assert_equal(12, winheight(other_winnr)) |
f773ac13c093
patch 8.2.1856: "2resize" uses size of current window
Bram Moolenaar <Bram@vim.org>
parents:
22087
diff
changeset
|
1234 call assert_equal(&lines - 10 - 3 -2, winheight(0)) |
23402
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1235 close |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1236 |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1237 vsplit |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1238 wincmd l |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1239 let other_winnr = winnr('h') |
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1240 call assert_notequal(winnr(), other_winnr) |
23434
0fe2cdcff19b
patch 8.2.2260: window resize test fails in very wide terminal
Bram Moolenaar <Bram@vim.org>
parents:
23402
diff
changeset
|
1241 exe 'vert ' .. other_winnr .. 'resize -' .. &columns |
23402
65718283239b
patch 8.2.2244: crash when making the window width negative
Bram Moolenaar <Bram@vim.org>
parents:
22616
diff
changeset
|
1242 call assert_equal(0, winwidth(other_winnr)) |
22073
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1243 |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1244 %bwipe! |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1245 endfunc |
28b302ccfe21
patch 8.2.1586: :resize command not fully tested
Bram Moolenaar <Bram@vim.org>
parents:
21765
diff
changeset
|
1246 |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1247 " Test for adjusting the window width when a window is closed with some |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1248 " windows using 'winfixwidth' |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1249 func Test_window_width_adjust() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1250 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1251 " Three vertical windows. Windows 1 and 2 have 'winfixwidth' set and close |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1252 " window 2. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1253 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1254 vert resize 10 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1255 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1256 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1257 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1258 wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1259 call assert_inrange(10, 12, winwidth(1)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1260 " Three vertical windows. Windows 2 and 3 have 'winfixwidth' set and close |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1261 " window 3. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1262 only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1263 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1264 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1265 vert resize 10 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1266 set winfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1267 wincmd v |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1268 set nowinfixwidth |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1269 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1270 wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1271 call assert_inrange(10, 12, winwidth(2)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1272 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1273 new | only |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1274 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1275 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1276 " Test for jumping to a vertical/horizontal neighbor window based on the |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1277 " current cursor position |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1278 func Test_window_goto_neightbor() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1279 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1280 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1281 " Vertical window movement |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1282 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1283 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1284 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1285 " |w1|w3| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1286 " +--+ | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1287 " |w2| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1288 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1289 " |w4 | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1290 " +-----+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1291 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1292 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1293 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1294 " vertically jump from w4 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1295 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1296 call setline(1, repeat(' ', &columns)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1297 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1298 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1299 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1300 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1301 call cursor(1, &columns) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1302 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1303 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1304 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1305 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1306 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1307 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1308 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1309 " |w1|w2|w3| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1310 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1311 " |w4 | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1312 " +--------+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1313 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1314 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1315 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1316 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1317 call setline(1, repeat(' ', &columns)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1318 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1319 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1320 call assert_equal(1, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1321 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1322 call cursor(1, &columns / 2) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1323 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1324 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1325 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1326 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1327 call cursor(1, &columns) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1328 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1329 wincmd k |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1330 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1331 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1332 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1333 " Horizontal window movement |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1334 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1335 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1336 " +--+--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1337 " |w1|w2|w4| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1338 " +--+--+ | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1339 " |w3 | | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1340 " +-----+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1341 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1342 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1343 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1344 4wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1345 call setline(1, repeat([' '], &lines)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1346 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1347 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1348 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1349 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1350 4wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1351 call cursor(&lines, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1352 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1353 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1354 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1355 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1356 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1357 " create the following window layout: |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1358 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1359 " |w1|w4| |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1360 " +--+ + |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1361 " |w2| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1362 " +--+ + |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1363 " |w3| | |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1364 " +--+--+ |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1365 vsplit |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1366 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1367 split |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1368 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1369 call setline(1, repeat([' '], &lines)) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1370 call cursor(1, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1371 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1372 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1373 call assert_equal(1, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1374 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1375 call cursor(&lines / 2, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1376 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1377 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1378 call assert_equal(2, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1379 wincmd l |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1380 call cursor(&lines, 1) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1381 redraw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1382 wincmd h |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1383 call assert_equal(3, winnr()) |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1384 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1385 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1386 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1387 " Test for an autocmd closing the destination window when jumping from one |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1388 " window to another. |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1389 func Test_close_dest_window() |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1390 split |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1391 edit Xdstfile |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1392 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1393 " Test for BufLeave |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1394 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1395 au! |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1396 au BufLeave Xdstfile $wincmd c |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1397 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1398 wincmd b |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1399 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1400 call assert_equal('Xdstfile', @%) |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1401 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1402 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1403 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1404 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1405 " Test for WinLeave |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1406 new |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1407 wincmd p |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1408 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1409 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1410 au WinLeave * 1wincmd c |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1411 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1412 wincmd t |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1413 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1414 call assert_equal('Xdstfile', @%) |
21020
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1415 augroup T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1416 au! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1417 augroup END |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1418 augroup! T1 |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1419 %bw! |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1420 endfunc |
6c634e63989c
patch 8.2.1061: insufficient testing for src/window.c
Bram Moolenaar <Bram@vim.org>
parents:
20178
diff
changeset
|
1421 |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1422 func Test_window_minimal_size() |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1423 set winminwidth=0 winminheight=0 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1424 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1425 " check size is fixed vertically |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1426 new |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1427 call win_execute(win_getid(2), 'wincmd _') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1428 call assert_equal(0, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1429 call feedkeys('0', 'tx') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1430 call assert_equal(1, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1431 bwipe! |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1432 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1433 " check size is fixed horizontally |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1434 vert new |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1435 call win_execute(win_getid(2), 'wincmd |') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1436 call assert_equal(0, winwidth(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1437 call feedkeys('0', 'tx') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1438 call assert_equal(1, winwidth(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1439 bwipe! |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1440 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1441 if has('timers') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1442 " check size is fixed in Insert mode |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1443 func s:CheckSize(timer) abort |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1444 call win_execute(win_getid(2), 'wincmd _') |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1445 call assert_equal(0, winheight(0)) |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1446 call feedkeys(" \<Esc>", 't!') |
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1447 endfunc |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1448 new |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1449 call timer_start(100, function('s:CheckSize')) |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1450 call feedkeys('a', 'tx!') |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1451 call assert_equal(1, winheight(0)) |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1452 bwipe! |
26520
bea106f5fd26
patch 8.2.3789: Test_window_minimal_size can fail on a slow machine
Bram Moolenaar <Bram@vim.org>
parents:
26468
diff
changeset
|
1453 delfunc s:CheckSize |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1454 endif |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1455 |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1456 set winminwidth& winminheight& |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1457 endfunc |
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1458 |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1459 func Test_win_move_separator() |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1460 edit a |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1461 leftabove vsplit b |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1462 let w = winwidth(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1463 " check win_move_separator from left window on left window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1464 call assert_equal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1465 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1466 call assert_true(win_move_separator(0, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1467 call assert_equal(w + offset, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1468 call assert_true(0->win_move_separator(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1469 call assert_equal(w, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1470 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1471 " check win_move_separator from right window on left window number |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1472 wincmd l |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1473 call assert_notequal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1474 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1475 call assert_true(1->win_move_separator(offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1476 call assert_equal(w + offset, winwidth(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1477 call assert_true(win_move_separator(1, -offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1478 call assert_equal(w, winwidth(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1479 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1480 " check win_move_separator from right window on left window ID |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1481 let id = win_getid(1) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1482 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1483 call assert_true(win_move_separator(id, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1484 call assert_equal(w + offset, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1485 call assert_true(id->win_move_separator(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1486 call assert_equal(w, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1487 endfor |
27440
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1488 " check win_move_separator from right window on right window is no-op |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1489 let w0 = winwidth(0) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1490 call assert_true(win_move_separator(0, 1)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1491 call assert_equal(w0, winwidth(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1492 call assert_true(win_move_separator(0, -1)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1493 call assert_equal(w0, winwidth(0)) |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1494 " check that win_move_separator doesn't error with offsets beyond moving |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1495 " possibility |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1496 call assert_true(win_move_separator(id, 5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1497 call assert_true(winwidth(id) > w) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1498 call assert_true(win_move_separator(id, -5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1499 call assert_true(winwidth(id) < w) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1500 " check that win_move_separator returns false for an invalid window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1501 wincmd = |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1502 let w = winwidth(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1503 call assert_false(win_move_separator(-1, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1504 call assert_equal(w, winwidth(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1505 " check that win_move_separator returns false for a popup window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1506 let id = popup_create(['hello', 'world'], {}) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1507 let w = winwidth(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1508 call assert_false(win_move_separator(id, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1509 call assert_equal(w, winwidth(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1510 call popup_close(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1511 %bwipe! |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1512 endfunc |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1513 |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1514 func Test_win_move_statusline() |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1515 edit a |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1516 leftabove split b |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1517 let h = winheight(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1518 " check win_move_statusline from top window on top window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1519 call assert_equal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1520 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1521 call assert_true(win_move_statusline(0, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1522 call assert_equal(h + offset, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1523 call assert_true(0->win_move_statusline(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1524 call assert_equal(h, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1525 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1526 " check win_move_statusline from bottom window on top window number |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1527 wincmd j |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1528 call assert_notequal(1, winnr()) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1529 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1530 call assert_true(1->win_move_statusline(offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1531 call assert_equal(h + offset, winheight(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1532 call assert_true(win_move_statusline(1, -offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1533 call assert_equal(h, winheight(1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1534 endfor |
27440
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1535 " check win_move_statusline from bottom window on bottom window |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1536 let h0 = winheight(0) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1537 for offset in range(5) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1538 call assert_true(0->win_move_statusline(-offset)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1539 call assert_equal(h0 - offset, winheight(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1540 call assert_equal(1 + offset, &cmdheight) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1541 call assert_true(win_move_statusline(0, offset)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1542 call assert_equal(h0, winheight(0)) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1543 call assert_equal(1, &cmdheight) |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1544 endfor |
1118a65c9bc7
patch 8.2.4248: no proper test for moving the window separator
Bram Moolenaar <Bram@vim.org>
parents:
27047
diff
changeset
|
1545 call assert_true(win_move_statusline(0, 1)) |
30005
bb0e525e1393
patch 9.0.0340: the 'cmdheight' zero support causes too much trouble
Bram Moolenaar <Bram@vim.org>
parents:
29994
diff
changeset
|
1546 call assert_equal(h0, winheight(0)) |
bb0e525e1393
patch 9.0.0340: the 'cmdheight' zero support causes too much trouble
Bram Moolenaar <Bram@vim.org>
parents:
29994
diff
changeset
|
1547 call assert_equal(1, &cmdheight) |
27047
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1548 " check win_move_statusline from bottom window on top window ID |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1549 let id = win_getid(1) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1550 for offset in range(5) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1551 call assert_true(win_move_statusline(id, offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1552 call assert_equal(h + offset, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1553 call assert_true(id->win_move_statusline(-offset)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1554 call assert_equal(h, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1555 endfor |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1556 " check that win_move_statusline doesn't error with offsets beyond moving |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1557 " possibility |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1558 call assert_true(win_move_statusline(id, 5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1559 call assert_true(winheight(id) > h) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1560 call assert_true(win_move_statusline(id, -5000)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1561 call assert_true(winheight(id) < h) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1562 " check that win_move_statusline returns false for an invalid window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1563 wincmd = |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1564 let h = winheight(0) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1565 call assert_false(win_move_statusline(-1, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1566 call assert_equal(h, winheight(0)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1567 " check that win_move_statusline returns false for a popup window |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1568 let id = popup_create(['hello', 'world'], {}) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1569 let h = winheight(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1570 call assert_false(win_move_statusline(id, 1)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1571 call assert_equal(h, winheight(id)) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1572 call popup_close(id) |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1573 %bwipe! |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1574 endfunc |
b94cdb5ef20e
patch 8.2.4052: not easy to resize a window from a plugin
Bram Moolenaar <Bram@vim.org>
parents:
26520
diff
changeset
|
1575 |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1576 " Test for window allocation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1577 func Test_window_alloc_failure() |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1578 %bw! |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1579 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1580 " test for creating a new window above current window |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1581 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1582 call assert_fails('above new', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1583 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1584 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1585 " test for creating a new window below current window |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1586 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1587 call assert_fails('below new', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1588 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1589 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1590 " test for popup window creation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1591 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1592 call assert_fails('call popup_create("Hello", {})', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1593 call assert_equal([], popup_list()) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1594 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1595 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1596 call assert_fails('split', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1597 call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1598 |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1599 edit Xwaffile1 |
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1600 edit Xwaffile2 |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1601 call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1602 call assert_fails('sb Xwaffile1', 'E342:') |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1603 call assert_equal(1, winnr('$')) |
30051
13b02c1ea0f7
patch 9.0.0363: common names in test files causes tests to be flaky
Bram Moolenaar <Bram@vim.org>
parents:
30009
diff
changeset
|
1604 call assert_equal('Xwaffile2', @%) |
28289
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1605 %bw! |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1606 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1607 " FIXME: The following test crashes Vim |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1608 " test for new tabpage creation failure |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1609 " call test_alloc_fail(GetAllocId('newwin_wvars'), 0, 0) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1610 " call assert_fails('tabnew', 'E342:') |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1611 " call assert_equal(1, tabpagenr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1612 " call assert_equal(1, winnr('$')) |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1613 |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1614 " This test messes up the internal Vim window/frame information. So the |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1615 " Test_window_cmd_cmdwin_with_vsp() test fails after running this test. |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1616 " Open a new tab and close everything else to fix this issue. |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1617 tabnew |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1618 tabonly |
cdaff4db7760
patch 8.2.4670: memory allocation failures for new tab page not tested
Bram Moolenaar <Bram@vim.org>
parents:
27440
diff
changeset
|
1619 endfunc |
26468
2fc13817b100
patch 8.2.3764: cannot see any text when window was made zero lines
Bram Moolenaar <Bram@vim.org>
parents:
24882
diff
changeset
|
1620 |
30134
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1621 func Test_win_equal_last_status() |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1622 let save_lines = &lines |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1623 set lines=20 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1624 set splitbelow |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1625 set laststatus=0 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1626 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1627 split | split | quit |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1628 call assert_equal(winheight(1), winheight(2)) |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1629 |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1630 let &lines = save_lines |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1631 set splitbelow& |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1632 set laststatus& |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1633 endfunc |
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1634 |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1635 " Ensure no scrolling happens with 'nosplitscroll' for a sequence of |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1636 " split operations for various options: with and without a winbar, |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1637 " tabline, for each possible value of 'laststatus', 'scrolloff', |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1638 " 'equalalways', and regardless of the cursor position. |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1639 func Test_nosplitscroll_options() |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1640 set nowrap |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1641 set nosplitscroll |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1642 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1643 " disallow window resizing |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1644 let save_WS = &t_WS |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1645 set t_WS= |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1646 |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1647 let gui = has("gui_running") |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1648 inoremap <expr> c "<cmd>copen<bar>wincmd k<CR>" |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1649 for run in range(0, 10) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1650 tabnew | tabonly! | redraw |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1651 let tabline = (gui ? 0 : ((run % 5) ? 1 : 0)) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1652 let winbar_sb = (run % 2) && (run % 3) |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1653 execute 'set scrolloff=' . (!(run % 4) ? 0 : run) |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1654 execute 'set laststatus=' . (run % 3) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1655 execute 'set ' . ((run % 2) ? 'equalalways' : 'noequalalways') |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1656 execute 'set ' . ((run % 3) ? 'splitbelow' : 'nosplitbelow') |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1657 execute (run % 5) ? 'tabnew' : '' |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1658 execute (run % 2) ? 'nnoremenu 1.10 WinBar.Test :echo' : '' |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1659 let pos = !(run % 3) ? 'H' : ((run % 2) ? 'M' : 'L') |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1660 call setline(1, range(1, 256)) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1661 " No scroll for restore_snapshot |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1662 norm G |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1663 try |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1664 copen | close | colder |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1665 catch /E380/ |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1666 endtry |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1667 call assert_equal(257 - winheight(0), line("w0")) |
30239
91ecee475811
patch 9.0.0455: a few problems with 'splitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30219
diff
changeset
|
1668 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1669 " No scroll for firstwin horizontal split |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1670 execute 'norm gg' . pos |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1671 split | redraw | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1672 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1673 call assert_equal(&scroll, winheight(0) / 2) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1674 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1675 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1676 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1677 " No scroll when resizing windows |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1678 wincmd k | resize +2 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1679 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1680 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1681 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1682 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1683 " No scroll when dragging statusline |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1684 call win_move_statusline(1, -3) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1685 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1686 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1687 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1688 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1689 " No scroll when changing shellsize |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1690 set lines+=2 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1691 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1692 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1693 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1694 set lines-=2 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1695 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1696 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1697 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1698 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1699 " No scroll when equalizing windows |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1700 wincmd = |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1701 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1702 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1703 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1704 wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1705 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1706 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1707 " No scroll in windows split multiple times |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1708 vsplit | split | 4wincmd w |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1709 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1710 1wincmd w | quit | wincmd l | split |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1711 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1712 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1713 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1714 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1715 " No scroll in small window |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1716 2wincmd w | only | 5split | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1717 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1718 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1719 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1720 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1721 " No scroll for vertical split |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1722 quit | vsplit | wincmd l |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1723 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1724 wincmd h |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1725 call assert_equal(1, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1726 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1727 " No scroll in windows split and quit multiple times |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1728 quit | redraw | split | redraw | split | redraw | quit | redraw |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1729 call assert_equal(win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1730 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1731 " No scroll for new buffer |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1732 1wincmd w | only | copen | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1733 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1734 only |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1735 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1736 above copen | wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1737 call assert_equal(win_screenpos(0)[0] - tabline, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1738 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1739 " No scroll when opening cmdwin, and no cursor move when closing cmdwin. |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1740 only | norm ggL |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1741 let curpos = getcurpos() |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1742 norm q: |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1743 call assert_equal(1, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1744 call assert_equal(curpos, getcurpos()) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1745 |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1746 " Scroll when cursor becomes invalid in insert mode |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1747 norm Lic |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1748 call assert_equal(curpos, getcurpos()) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1749 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1750 " No scroll when topline not equal to 1 |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1751 only | execute "norm gg5\<C-e>" | split | wincmd k |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1752 call assert_equal(6, line("w0")) |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1753 wincmd j |
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1754 call assert_equal(5 + win_screenpos(0)[0] - tabline - winbar_sb, line("w0")) |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1755 endfor |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1756 |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1757 tabnew | tabonly! | %bwipeout! |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1758 iunmap c |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1759 set wrap& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1760 set scrolloff& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1761 set splitbelow& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1762 set laststatus& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1763 set equalalways& |
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1764 set splitscroll& |
30285
9edb1a8161ac
patch 9.0.0478: test for 'splitscroll' takes too much time
Bram Moolenaar <Bram@vim.org>
parents:
30271
diff
changeset
|
1765 let &t_WS = save_WS |
30219
bc8ad1c28b51
patch 9.0.0445: when opening/closing window text moves up/down
Bram Moolenaar <Bram@vim.org>
parents:
30134
diff
changeset
|
1766 endfunc |
30134
0211a930d873
patch 9.0.0403: 'equalalways' may be off when 'laststatus' is zero
Bram Moolenaar <Bram@vim.org>
parents:
30051
diff
changeset
|
1767 |
30271
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1768 function Test_nosplitscroll_cmdwin_cursor_position() |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1769 set nosplitscroll |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1770 call setline(1, range(&lines)) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1771 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1772 " No scroll when cursor is at near bottom of window and cusor position |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1773 " recompution (done by line('w0') in this test) happens while in cmdwin. |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1774 normal! G |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1775 let firstline = line('w0') |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1776 autocmd CmdwinEnter * ++once autocmd WinEnter * ++once call line('w0') |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1777 execute "normal! q:\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1778 redraw! |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1779 call assert_equal(firstline, line('w0')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1780 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1781 " User script can change cursor position successfully while in cmdwin and it |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1782 " shouldn't be changed when closing cmdwin. |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1783 execute "normal! Gq:\<Cmd>call win_execute(winnr('#')->win_getid(), 'call cursor(1, 1)')\<CR>\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1784 call assert_equal(1, line('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1785 call assert_equal(1, col('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1786 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1787 execute "normal! Gq:\<Cmd>autocmd WinEnter * ++once call cursor(1, 1)\<CR>\<C-w>q" |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1788 call assert_equal(1, line('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1789 call assert_equal(1, col('.')) |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1790 |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1791 %bwipeout! |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1792 set splitscroll& |
d8f04df5b917
patch 9.0.0471: no test for what patch 9.0.0469 fixes
Bram Moolenaar <Bram@vim.org>
parents:
30259
diff
changeset
|
1793 endfunction |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1794 |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1795 function Test_nosplitscroll_misc() |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1796 set nosplitscroll |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1797 set splitbelow |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1798 |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1799 call setline(1, range(1, &lines)) |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1800 norm Gzz |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1801 let top = line('w0') |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1802 " No scroll when aucmd_win is opened |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1803 call setbufvar(bufnr("test", 1) , '&buftype', 'nofile') |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1804 call assert_equal(top, line('w0')) |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1805 " No scroll when tab is changed/closed |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1806 tab help | close |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1807 call assert_equal(top, line('w0')) |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1808 " No scroll when help is closed and buffer line count < window height |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1809 norm ggdG |
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1810 call setline(1, range(1, &lines - 10)) |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1811 norm G |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1812 let top = line('w0') |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1813 help | quit |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1814 call assert_equal(top, line('w0')) |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1815 |
30339
b5f67135fcb6
patch 9.0.0505: various problems with 'nosplitscroll'
Bram Moolenaar <Bram@vim.org>
parents:
30300
diff
changeset
|
1816 %bwipeout! |
30300
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1817 set splitbelow& |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1818 set splitscroll& |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1819 endfunc |
b9d07900b0b8
patch 9.0.0486: text scrolled with 'nosplitscroll', autocmd win and help
Bram Moolenaar <Bram@vim.org>
parents:
30285
diff
changeset
|
1820 |
30439
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1821 function Test_nosplitscroll_callback() |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1822 CheckScreendump |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1823 let lines =<< trim END |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1824 set nosplitscroll |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1825 call setline(1, range(&lines)) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1826 function WincmdCb(a, b) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1827 split | wincmd p |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1828 endfunction |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1829 function TermCb(a, b) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1830 close | split |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1831 endfunction |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1832 nnoremap t <cmd>call popup_create(term_start(&shell, { 'hidden': 1, 'exit_cb': 'TermCb' }), {})<CR> |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1833 nnoremap j <cmd>call job_start([&shell, &shellcmdflag, "echo"], { 'exit_cb': 'WincmdCb' })<CR> |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1834 END |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1835 call writefile(lines, 'XTestNosplitscrollCallback', 'D') |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1836 let buf = RunVimInTerminal('-S XTestNosplitscrollCallback', #{rows: 8}) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1837 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1838 call term_sendkeys(buf, "j") |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1839 call VerifyScreenDump(buf, 'Test_nosplitscroll_callback_1', {}) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1840 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1841 call term_sendkeys(buf, ":quit\<CR>Htexit\<CR>") |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1842 call VerifyScreenDump(buf, 'Test_nosplitscroll_callback_2', {}) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1843 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1844 call term_sendkeys(buf, ":set sb\<CR>:quit\<CR>Gj") |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1845 call VerifyScreenDump(buf, 'Test_nosplitscroll_callback_3', {}) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1846 |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1847 call term_sendkeys(buf, ":quit\<CR>Gtexit\<CR>") |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1848 call VerifyScreenDump(buf, 'Test_nosplitscroll_callback_4', {}) |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1849 endfunc |
e3091fc473a1
patch 9.0.0555: scrolling with 'nosplitscroll' in callback changing curwin
Bram Moolenaar <Bram@vim.org>
parents:
30339
diff
changeset
|
1850 |
30535
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1851 function Test_nosplitscroll_fold() |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1852 CheckScreendump |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1853 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1854 let lines =<< trim END |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1855 set nosplitscroll |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1856 set foldmethod=marker |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1857 set number |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1858 let line = 1 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1859 for n in range(1, &lines) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1860 call setline(line, ['int FuncName() {/*{{{*/', 1, 2, 3, 4, 5, '}/*}}}*/', |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1861 \ 'after fold']) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1862 let line += 8 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1863 endfor |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1864 END |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1865 call writefile(lines, 'XTestNosplitscrollFold', 'D') |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1866 let buf = RunVimInTerminal('-S XTestNosplitscrollFold', #{rows: 10}) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1867 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1868 call term_sendkeys(buf, "L:wincmd s\<CR>") |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1869 call VerifyScreenDump(buf, 'Test_nosplitscroll_fold_1', {}) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1870 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1871 call term_sendkeys(buf, ":quit\<CR>") |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1872 call VerifyScreenDump(buf, 'Test_nosplitscroll_fold_2', {}) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1873 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1874 call term_sendkeys(buf, "H:below split\<CR>") |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1875 call VerifyScreenDump(buf, 'Test_nosplitscroll_fold_3', {}) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1876 |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1877 call term_sendkeys(buf, ":wincmd k\<CR>:quit\<CR>") |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1878 call VerifyScreenDump(buf, 'Test_nosplitscroll_fold_4', {}) |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1879 endfunction |
04df44c52d65
patch 9.0.0603: with 'nosplitscroll' folds are not handled correctly
Bram Moolenaar <Bram@vim.org>
parents:
30439
diff
changeset
|
1880 |
9909
3ee84d270ea7
commit https://github.com/vim/vim/commit/9e4d8215d386100ab660d7d11e6620fd148b605e
Christian Brabandt <cb@256bit.org>
parents:
9349
diff
changeset
|
1881 " vim: shiftwidth=2 sts=2 expandtab |