1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- local helpers = require('test.functional.helpers')(after_each)
- local Screen = require('test.functional.ui.screen')
- local clear = helpers.clear
- local command = helpers.command
- local exec = helpers.exec
- local feed = helpers.feed
- before_each(clear)
- describe("'cursorbind'", function()
- it("behaves consistently whether 'cursorline' is set or not vim-patch:8.2.4795", function()
- local screen = Screen.new(60, 8)
- screen:set_default_attr_ids({
- [1] = {bold = true, foreground = Screen.colors.Blue}, -- NonText
- [2] = {bold = true, reverse = true}, -- StatusLine
- [3] = {reverse = true}, -- StatusLineNC
- [4] = {background = Screen.colors.Grey90}, -- CursorLine, CursorColumn
- })
- screen:attach()
- exec([[
- call setline(1, 'aa bb cc dd ee ff gg hh ii jj kk ll mm' ..
- \ ' nn oo pp qq rr ss tt uu vv ww xx yy zz')
- set nowrap
- " The following makes the cursor apparent on the screen dump
- set sidescroll=1 cursorcolumn
- " add empty lines, required for cursorcolumn
- call append(1, ['','','',''])
- 20vsp
- windo :set cursorbind
- ]])
- feed('20l')
- screen:expect([[
- a bb cc dd ee ff gg │aa bb cc dd ee ff gg^ hh ii jj kk ll mm |
- {4: }│ {4: } |
- {4: }│ {4: } |
- {4: }│ {4: } |
- {4: }│ {4: } |
- {1:~ }│{1:~ }|
- {3:[No Name] [+] }{2:[No Name] [+] }|
- |
- ]])
- feed('10l')
- screen:expect([[
- hh ii jj kk ll mm n│aa bb cc dd ee ff gg hh ii jj ^kk ll mm |
- {4: } │ {4: } |
- {4: } │ {4: } |
- {4: } │ {4: } |
- {4: } │ {4: } |
- {1:~ }│{1:~ }|
- {3:[No Name] [+] }{2:[No Name] [+] }|
- |
- ]])
- command('windo :set cursorline')
- feed('0')
- feed('20l')
- screen:expect([[
- {4:a bb cc dd ee ff gg }│{4:aa bb cc dd ee ff gg^ hh ii jj kk ll mm }|
- {4: }│ {4: } |
- {4: }│ {4: } |
- {4: }│ {4: } |
- {4: }│ {4: } |
- {1:~ }│{1:~ }|
- {3:[No Name] [+] }{2:[No Name] [+] }|
- |
- ]])
- feed('10l')
- screen:expect([[
- {4: hh ii jj kk ll mm n}│{4:aa bb cc dd ee ff gg hh ii jj ^kk ll mm }|
- {4: } │ {4: } |
- {4: } │ {4: } |
- {4: } │ {4: } |
- {4: } │ {4: } |
- {1:~ }│{1:~ }|
- {3:[No Name] [+] }{2:[No Name] [+] }|
- |
- ]])
- command('windo :set nocursorline nocursorcolumn')
- feed('0')
- feed('40l')
- screen:expect([[
- kk ll mm nn oo pp qq│ bb cc dd ee ff gg hh ii jj kk ll mm n^n|
- │ |
- │ |
- │ |
- │ |
- {1:~ }│{1:~ }|
- {3:[No Name] [+] }{2:[No Name] [+] }|
- |
- ]])
- end)
- end)
|