diff options
| author | Shougo Matsushita <Shougo.Matsu@gmail.com> | 2020-07-11 13:13:49 +0900 |
|---|---|---|
| committer | Shougo Matsushita <Shougo.Matsu@gmail.com> | 2020-07-23 10:29:36 +0900 |
| commit | d3eddcf630f29da72409934eb14fb7a534f6497e (patch) | |
| tree | 858fe91c4a88964f3ae57d3c5afc6bba96453460 /src/nvim/testdir | |
| parent | 326b87feb6179d1b36375844eab493e0bb4dbf7f (diff) | |
| download | rneovim-d3eddcf630f29da72409934eb14fb7a534f6497e.tar.gz rneovim-d3eddcf630f29da72409934eb14fb7a534f6497e.tar.bz2 rneovim-d3eddcf630f29da72409934eb14fb7a534f6497e.zip | |
vim-patch:8.1.1564: sign column takes up space
Problem: Sign column takes up space. (Adam Stankiewicz)
Solution: Optionally put signs in the number column. (Yegappan Lakshmanan,
closes vim/vim#4555, closes vim/vim#4515)
https://github.com/vim/vim/commit/394c5d8870b15150fc91a4c058dc571fd5eaa97e
Diffstat (limited to 'src/nvim/testdir')
| -rw-r--r-- | src/nvim/testdir/test_signs.vim | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src/nvim/testdir/test_signs.vim b/src/nvim/testdir/test_signs.vim index 8b1927e4f0..f89095ec5d 100644 --- a/src/nvim/testdir/test_signs.vim +++ b/src/nvim/testdir/test_signs.vim @@ -6,6 +6,8 @@ endif source screendump.vim +set noswapfile + func Test_sign() new call setline(1, ['a', 'b', 'c', 'd']) @@ -1742,3 +1744,60 @@ func Test_sign_cursor_position() call StopVimInTerminal(buf) call delete('XtestSigncolumn') endfunc + +" Return the 'len' characters in screen starting from (row,col) +func s:ScreenLine(row, col, len) + let s = '' + for i in range(a:len) + let s .= nr2char(screenchar(a:row, a:col + i)) + endfor + return s +endfunc + +" Test for 'signcolumn' set to 'number'. +func Test_sign_numcol() + new + call append(0, "01234") + " With 'signcolumn' set to 'number', make sure sign is displayed in the + " number column and line number is not displayed. + set numberwidth=2 + set number + set signcolumn=number + sign define sign1 text==> + sign place 10 line=1 name=sign1 + redraw! + call assert_equal("=> 01234", s:ScreenLine(1, 1, 8)) + + " With 'signcolumn' set to 'number', when there is no sign, make sure line + " number is displayed in the number column + sign unplace 10 + redraw! + call assert_equal("1 01234", s:ScreenLine(1, 1, 7)) + + " Disable number column. Check whether sign is displayed in the sign column + set numberwidth=4 + set nonumber + sign place 10 line=1 name=sign1 + redraw! + call assert_equal("=>01234", s:ScreenLine(1, 1, 7)) + + " Enable number column. Check whether sign is displayed in the number column + set number + redraw! + call assert_equal("=> 01234", s:ScreenLine(1, 1, 9)) + + " Disable sign column. Make sure line number is displayed + set signcolumn=no + redraw! + call assert_equal(" 1 01234", s:ScreenLine(1, 1, 9)) + + " Enable auto sign column. Make sure both sign and line number are displayed + set signcolumn=auto + redraw! + call assert_equal("=> 1 01234", s:ScreenLine(1, 1, 11)) + + sign undefine sign1 + set signcolumn& + set number& + enew! | close +endfunc |