mirror of
https://github.com/neovim/neovim.git
synced 2026-05-02 12:04:58 +00:00
vim-patch:9.0.1728: missing winid argument for virtcol() (#24770)
Problem: missing winid argument for virtcol()
Solution: Add a {winid} argument to virtcol()
Other functions col(), charcol() and virtcol2col() support a {winid}
argument, so it makes sense for virtcol() to also support than.
Also add test for virtcol2col() with 'showbreak' and {winid}.
closes: vim/vim#12633
825cf813fa
This commit is contained in:
@@ -540,9 +540,28 @@ func Test_virtcol2col()
|
||||
call assert_equal(8, virtcol2col(0, 1, 7))
|
||||
call assert_equal(8, virtcol2col(0, 1, 8))
|
||||
|
||||
let w = winwidth(0)
|
||||
call setline(2, repeat('a', w + 2))
|
||||
let win_nosbr = win_getid()
|
||||
split
|
||||
setlocal showbreak=!!
|
||||
let win_sbr = win_getid()
|
||||
call assert_equal(w, virtcol2col(win_nosbr, 2, w))
|
||||
call assert_equal(w + 1, virtcol2col(win_nosbr, 2, w + 1))
|
||||
call assert_equal(w + 2, virtcol2col(win_nosbr, 2, w + 2))
|
||||
call assert_equal(w + 2, virtcol2col(win_nosbr, 2, w + 3))
|
||||
call assert_equal(w, virtcol2col(win_sbr, 2, w))
|
||||
call assert_equal(w + 1, virtcol2col(win_sbr, 2, w + 1))
|
||||
call assert_equal(w + 1, virtcol2col(win_sbr, 2, w + 2))
|
||||
call assert_equal(w + 1, virtcol2col(win_sbr, 2, w + 3))
|
||||
call assert_equal(w + 2, virtcol2col(win_sbr, 2, w + 4))
|
||||
call assert_equal(w + 2, virtcol2col(win_sbr, 2, w + 5))
|
||||
close
|
||||
|
||||
call assert_fails('echo virtcol2col("0", 1, 20)', 'E1210:')
|
||||
call assert_fails('echo virtcol2col(0, "1", 20)', 'E1210:')
|
||||
call assert_fails('echo virtcol2col(0, 1, "1")', 'E1210:')
|
||||
|
||||
bw!
|
||||
endfunc
|
||||
|
||||
|
||||
Reference in New Issue
Block a user