annotate src/testdir/test_conceal.vim @ 29593:a9b2609186bf v9.0.0137

patch 9.0.0137: debugger test may fail when $CWD is very long Commit: https://github.com/vim/vim/commit/db7a88db8b52508d3df6d5947f7c4f3ef05d5f62 Author: James McCoy <jamessan@jamessan.com> Date: Wed Aug 3 16:13:27 2022 +0100 patch 9.0.0137: debugger test may fail when $CWD is very long Problem: Debugger test may fail when $CWD is very long. Solution: Skip the test if the directory name is too long. (James McCoy, closes #10837)
author Bram Moolenaar <Bram@vim.org>
date Wed, 03 Aug 2022 17:15:03 +0200
parents 34e93e046526
children f7a2de8a4ddc
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
1 " Tests for 'conceal'.
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
2
17657
0da9bc55c31a patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents: 16965
diff changeset
3 source check.vim
0da9bc55c31a patch 8.1.1826: tests use hand coded feature and option checks
Bram Moolenaar <Bram@vim.org>
parents: 16965
diff changeset
4 CheckFeature conceal
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
5
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
6 source screendump.vim
29413
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
7 source view_util.vim
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
8
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
9 func Test_conceal_two_windows()
27324
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
10 CheckScreendump
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
11
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
12 let code =<< trim [CODE]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
13 let lines = ["one one one one one", "two |hidden| here", "three |hidden| three"]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
14 call setline(1, lines)
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
15 syntax match test /|hidden|/ conceal
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
16 set conceallevel=2
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
17 set concealcursor=
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
18 exe "normal /here\r"
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
19 new
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
20 call setline(1, lines)
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
21 call setline(4, "Second window")
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
22 syntax match test /|hidden|/ conceal
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
23 set conceallevel=2
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
24 set concealcursor=nc
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
25 exe "normal /here\r"
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
26 [CODE]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
27
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
28 call writefile(code, 'XTest_conceal')
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
29 " Check that cursor line is concealed
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
30 let buf = RunVimInTerminal('-S XTest_conceal', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
31 call VerifyScreenDump(buf, 'Test_conceal_two_windows_01', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
32
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
33 " Check that with concealed text vertical cursor movement is correct.
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
34 call term_sendkeys(buf, "k")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
35 call VerifyScreenDump(buf, 'Test_conceal_two_windows_02', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
36
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
37 " Check that with cursor line is not concealed
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
38 call term_sendkeys(buf, "j")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
39 call term_sendkeys(buf, ":set concealcursor=\r")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
40 call VerifyScreenDump(buf, 'Test_conceal_two_windows_03', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
41
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
42 " Check that with cursor line is not concealed when moving cursor down
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
43 call term_sendkeys(buf, "j")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
44 call VerifyScreenDump(buf, 'Test_conceal_two_windows_04', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
45
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
46 " Check that with cursor line is not concealed when switching windows
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
47 call term_sendkeys(buf, "\<C-W>\<C-W>")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
48 call VerifyScreenDump(buf, 'Test_conceal_two_windows_05', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
49
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
50 " Check that with cursor line is only concealed in Normal mode
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
51 call term_sendkeys(buf, ":set concealcursor=n\r")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
52 call VerifyScreenDump(buf, 'Test_conceal_two_windows_06n', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
53 call term_sendkeys(buf, "a")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
54 call VerifyScreenDump(buf, 'Test_conceal_two_windows_06i', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
55 call term_sendkeys(buf, "\<Esc>/e")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
56 call VerifyScreenDump(buf, 'Test_conceal_two_windows_06c', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
57 call term_sendkeys(buf, "\<Esc>v")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
58 call VerifyScreenDump(buf, 'Test_conceal_two_windows_06v', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
59 call term_sendkeys(buf, "\<Esc>")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
60
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
61 " Check that with cursor line is only concealed in Insert mode
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
62 call term_sendkeys(buf, ":set concealcursor=i\r")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
63 call VerifyScreenDump(buf, 'Test_conceal_two_windows_07n', {})
25818
37bc83bbda91 patch 8.2.3444: concealed text not revealed when leaving insert mode
Bram Moolenaar <Bram@vim.org>
parents: 21014
diff changeset
64 call term_sendkeys(buf, "14|a")
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
65 call VerifyScreenDump(buf, 'Test_conceal_two_windows_07i', {})
25818
37bc83bbda91 patch 8.2.3444: concealed text not revealed when leaving insert mode
Bram Moolenaar <Bram@vim.org>
parents: 21014
diff changeset
66 call term_sendkeys(buf, "\<Esc>")
37bc83bbda91 patch 8.2.3444: concealed text not revealed when leaving insert mode
Bram Moolenaar <Bram@vim.org>
parents: 21014
diff changeset
67 call VerifyScreenDump(buf, 'Test_conceal_two_windows_07in', {})
37bc83bbda91 patch 8.2.3444: concealed text not revealed when leaving insert mode
Bram Moolenaar <Bram@vim.org>
parents: 21014
diff changeset
68 call term_sendkeys(buf, "/e")
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
69 call VerifyScreenDump(buf, 'Test_conceal_two_windows_07c', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
70 call term_sendkeys(buf, "\<Esc>v")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
71 call VerifyScreenDump(buf, 'Test_conceal_two_windows_07v', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
72 call term_sendkeys(buf, "\<Esc>")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
73
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
74 " Check that with cursor line is only concealed in Command mode
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
75 call term_sendkeys(buf, ":set concealcursor=c\r")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
76 call VerifyScreenDump(buf, 'Test_conceal_two_windows_08n', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
77 call term_sendkeys(buf, "a")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
78 call VerifyScreenDump(buf, 'Test_conceal_two_windows_08i', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
79 call term_sendkeys(buf, "\<Esc>/e")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
80 call VerifyScreenDump(buf, 'Test_conceal_two_windows_08c', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
81 call term_sendkeys(buf, "\<Esc>v")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
82 call VerifyScreenDump(buf, 'Test_conceal_two_windows_08v', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
83 call term_sendkeys(buf, "\<Esc>")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
84
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
85 " Check that with cursor line is only concealed in Visual mode
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
86 call term_sendkeys(buf, ":set concealcursor=v\r")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
87 call VerifyScreenDump(buf, 'Test_conceal_two_windows_09n', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
88 call term_sendkeys(buf, "a")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
89 call VerifyScreenDump(buf, 'Test_conceal_two_windows_09i', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
90 call term_sendkeys(buf, "\<Esc>/e")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
91 call VerifyScreenDump(buf, 'Test_conceal_two_windows_09c', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
92 call term_sendkeys(buf, "\<Esc>v")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
93 call VerifyScreenDump(buf, 'Test_conceal_two_windows_09v', {})
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
94 call term_sendkeys(buf, "\<Esc>")
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
95
15434
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
96 " Check moving the cursor while in insert mode.
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
97 call term_sendkeys(buf, ":set concealcursor=\r")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
98 call term_sendkeys(buf, "a")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
99 call VerifyScreenDump(buf, 'Test_conceal_two_windows_10', {})
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
100 call term_sendkeys(buf, "\<Down>")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
101 call VerifyScreenDump(buf, 'Test_conceal_two_windows_11', {})
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
102 call term_sendkeys(buf, "\<Esc>")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
103
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
104 " Check the "o" command
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
105 call VerifyScreenDump(buf, 'Test_conceal_two_windows_12', {})
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
106 call term_sendkeys(buf, "o")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
107 call VerifyScreenDump(buf, 'Test_conceal_two_windows_13', {})
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
108 call term_sendkeys(buf, "\<Esc>")
80e79573dd6e patch 8.1.0725: conceal mode is not completely tested
Bram Moolenaar <Bram@vim.org>
parents: 15426
diff changeset
109
15426
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
110 " clean up
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
111 call StopVimInTerminal(buf)
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
112 call delete('XTest_conceal')
8b78878311e0 patch 8.1.0721: conceal mode is not sufficiently tested
Bram Moolenaar <Bram@vim.org>
parents:
diff changeset
113 endfunc
15476
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
114
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
115 func Test_conceal_with_cursorline()
27324
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
116 CheckScreendump
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
117
15476
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
118 " Opens a help window, where 'conceal' is set, switches to the other window
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
119 " where 'cursorline' needs to be updated when the cursor moves.
16720
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
120 let code =<< trim [CODE]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
121 set cursorline
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
122 normal othis is a test
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
123 new
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
124 call setline(1, ["one", "two", "three", "four", "five"])
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
125 set ft=help
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
126 normal M
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
127 [CODE]
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
128
9c90cf08cfa8 patch 8.1.1362: code and data in tests can be hard to read
Bram Moolenaar <Bram@vim.org>
parents: 15476
diff changeset
129 call writefile(code, 'XTest_conceal_cul')
15476
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
130 let buf = RunVimInTerminal('-S XTest_conceal_cul', {})
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
131 call VerifyScreenDump(buf, 'Test_conceal_cul_01', {})
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
132
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
133 call term_sendkeys(buf, ":wincmd w\r")
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
134 call VerifyScreenDump(buf, 'Test_conceal_cul_02', {})
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
135
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
136 call term_sendkeys(buf, "k")
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
137 call VerifyScreenDump(buf, 'Test_conceal_cul_03', {})
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
138
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
139 " clean up
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
140 call StopVimInTerminal(buf)
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
141 call delete('XTest_conceal_cul')
5b0f37d844b3 patch 8.1.0746: highlighting not updated with conceal and 'cursorline'
Bram Moolenaar <Bram@vim.org>
parents: 15434
diff changeset
142 endfunc
18072
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
143
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
144 func Test_conceal_resize_term()
27324
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
145 CheckScreendump
d02a319c47ec patch 8.2.4190: all conceal tests are skipped without the screendumps feature
Bram Moolenaar <Bram@vim.org>
parents: 25818
diff changeset
146
18072
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
147 let code =<< trim [CODE]
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
148 call setline(1, '`one` `two` `three` `four` `five`, the backticks should be concealed')
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
149 setl cocu=n cole=3
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
150 syn region CommentCodeSpan matchgroup=Comment start=/`/ end=/`/ concealends
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
151 normal fb
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
152 [CODE]
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
153 call writefile(code, 'XTest_conceal_resize')
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
154 let buf = RunVimInTerminal('-S XTest_conceal_resize', {'rows': 6})
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
155 call VerifyScreenDump(buf, 'Test_conceal_resize_01', {})
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
156
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
157 call win_execute(buf->win_findbuf()[0], 'wincmd +')
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
158 call VerifyScreenDump(buf, 'Test_conceal_resize_02', {})
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
159
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
160 " clean up
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
161 call StopVimInTerminal(buf)
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
162 call delete('XTest_conceal_resize')
5f1554b2587c patch 8.1.2031: cursor position wrong when resizing and using conceal
Bram Moolenaar <Bram@vim.org>
parents: 17657
diff changeset
163 endfunc
18870
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
164
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
165 " Tests for correct display (cursor column position) with +conceal and
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
166 " tabulators. Need to run this test in a separate Vim instance. Otherwise the
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
167 " screen is not updated (lazy redraw) and the cursor position is wrong.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
168 func Test_conceal_cursor_pos()
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
169 let code =<< trim [CODE]
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
170 :let l = ['start:', '.concealed. text', "|concealed|\ttext"]
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
171 :let l += ['', "\t.concealed.\ttext", "\t|concealed|\ttext", '']
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
172 :let l += [".a.\t.b.\t.c.\t.d.", "|a|\t|b|\t|c|\t|d|"]
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
173 :call append(0, l)
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
174 :call cursor(1, 1)
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
175 :" Conceal settings.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
176 :set conceallevel=2
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
177 :set concealcursor=nc
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
178 :syntax match test /|/ conceal
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
179 :" Save current cursor position. Only works in <expr> mode, can't be used
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
180 :" with :normal because it moves the cursor to the command line. Thanks
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
181 :" to ZyX <zyx.vim@gmail.com> for the idea to use an <expr> mapping.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
182 :let curpos = []
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
183 :nnoremap <expr> GG ":let curpos += ['".screenrow().":".screencol()."']\n"
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
184 :normal ztj
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
185 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
186 :" We should end up in the same column when running these commands on the
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
187 :" two lines.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
188 :normal ft
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
189 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
190 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
191 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
192 :normal 0j
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
193 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
194 :normal ft
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
195 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
196 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
197 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
198 :normal 0j0j
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
199 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
200 :" Same for next test block.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
201 :normal ft
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
202 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
203 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
204 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
205 :normal 0j
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
206 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
207 :normal ft
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
208 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
209 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
210 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
211 :normal 0j0j
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
212 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
213 :" And check W with multiple tabs and conceals in a line.
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
214 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
215 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
216 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
217 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
218 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
219 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
220 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
221 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
222 :normal 0j
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
223 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
224 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
225 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
226 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
227 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
228 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
229 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
230 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
231 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
232 :set lbr
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
233 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
234 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
235 :set list listchars=tab:>-
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
236 :normal 0
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
237 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
238 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
239 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
240 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
241 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
242 :normal W
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
243 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
244 :normal $
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
245 GGk
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
246 :call writefile(curpos, 'Xconceal_curpos.out')
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
247 :q!
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
248
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
249 [CODE]
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
250 call writefile(code, 'XTest_conceal_curpos')
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
251
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
252 if RunVim([], [], '-s XTest_conceal_curpos')
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
253 call assert_equal([
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
254 \ '2:1', '2:17', '2:20', '3:1', '3:17', '3:20', '5:8', '5:25',
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
255 \ '5:28', '6:8', '6:25', '6:28', '8:1', '8:9', '8:17', '8:25',
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
256 \ '8:27', '9:1', '9:9', '9:17', '9:25', '9:26', '9:26', '9:1',
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
257 \ '9:9', '9:17', '9:25', '9:26'], readfile('Xconceal_curpos.out'))
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
258 endif
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
259
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
260 call delete('Xconceal_curpos.out')
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
261 call delete('XTest_conceal_curpos')
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
262 endfunc
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
263
21014
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
264 func Test_conceal_eol()
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
265 new!
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
266 setlocal concealcursor=n conceallevel=1
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
267 call setline(1, ["x", ""])
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
268 call matchaddpos('Conceal', [[2, 1, 1]], 2, -1, {'conceal': 1})
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
269 redraw!
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
270
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
271 call assert_notequal(screenchar(1, 1), screenchar(2, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
272 call assert_equal(screenattr(1, 1), screenattr(1, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
273 call assert_equal(screenattr(1, 2), screenattr(2, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
274 call assert_equal(screenattr(2, 1), screenattr(2, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
275
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
276 set list
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
277 redraw!
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
278
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
279 call assert_equal(screenattr(1, 1), screenattr(2, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
280 call assert_notequal(screenattr(1, 1), screenattr(1, 2))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
281 call assert_notequal(screenattr(1, 2), screenattr(2, 1))
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
282
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
283 set nolist
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
284 endfunc
20133655107a patch 8.2.1058: multiline conceal causes display errors
Bram Moolenaar <Bram@vim.org>
parents: 19954
diff changeset
285
29413
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
286 func Test_conceal_mouse_click()
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
287 enew!
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
288 set mouse=a
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
289 setlocal conceallevel=2 concealcursor=nc
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
290 syn match Concealed "this" conceal
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
291 hi link Concealed Search
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
292 call setline(1, 'conceal this click here')
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
293 redraw
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
294 call assert_equal(['conceal click here '], ScreenLines(1, 20))
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
295
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
296 " click on 'h' of "here" puts cursor there
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
297 call test_setmouse(1, 16)
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
298 call feedkeys("\<LeftMouse>", "tx")
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
299 call assert_equal([0, 1, 20, 0, 20], getcurpos())
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
300
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
301 bwipe!
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
302 set mouse&
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
303 endfunc
34e93e046526 patch 9.0.0048: cursor in wrong column with mouse click after concealed text
Bram Moolenaar <Bram@vim.org>
parents: 27626
diff changeset
304
18870
1895dd434ecf patch 8.1.2421: test88 is old style
Bram Moolenaar <Bram@vim.org>
parents: 18072
diff changeset
305 " vim: shiftwidth=2 sts=2 expandtab