diff options
| author | Rom Grk <romgrk.cc@gmail.com> | 2020-10-26 18:48:39 -0400 |
|---|---|---|
| committer | Rom Grk <romgrk.cc@gmail.com> | 2020-10-31 19:54:06 -0400 |
| commit | 10bf69a43e8f58b0d49bc6253e4e2758060670a8 (patch) | |
| tree | 421994bbf735a3477bec04cde91af2157a0ac10b /src/nvim/testdir | |
| parent | b6897ebc0c623d0a74c221c3030c7eaf17b7e151 (diff) | |
| download | rneovim-10bf69a43e8f58b0d49bc6253e4e2758060670a8.tar.gz rneovim-10bf69a43e8f58b0d49bc6253e4e2758060670a8.tar.bz2 rneovim-10bf69a43e8f58b0d49bc6253e4e2758060670a8.zip | |
vim-patch:8.2.1909: number of status line items is limited to 80
Problem: Number of status line items is limited to 80.
Solution: Dynamically allocate the arrays. (Rom Grk, closes vim/vim#7181)
https://github.com/vim/vim/commit/8133cc6bf454eb90bb0868f7cf806fce5c0c9fe6
The members of stl_item_T have not been prefixed with stl_ contrary to
the vim patch because the amount of stl_ prefixes on single lines of
code in that region was hurtful to readability.
Diffstat (limited to 'src/nvim/testdir')
| -rw-r--r-- | src/nvim/testdir/test_options.vim | 1 | ||||
| -rw-r--r-- | src/nvim/testdir/test_statusline.vim | 15 |
2 files changed, 15 insertions, 1 deletions
diff --git a/src/nvim/testdir/test_options.vim b/src/nvim/testdir/test_options.vim index 9e8da74db7..10e16f4198 100644 --- a/src/nvim/testdir/test_options.vim +++ b/src/nvim/testdir/test_options.vim @@ -267,7 +267,6 @@ func Test_set_errors() call assert_fails('set commentstring=x', 'E537:') call assert_fails('set complete=x', 'E539:') call assert_fails('set statusline=%{', 'E540:') - call assert_fails('set statusline=' . repeat("%p", 81), 'E541:') call assert_fails('set statusline=%(', 'E542:') if has('cursorshape') " This invalid value for 'guicursor' used to cause Vim to crash. diff --git a/src/nvim/testdir/test_statusline.vim b/src/nvim/testdir/test_statusline.vim index 7efd181d04..4e38f7ebd8 100644 --- a/src/nvim/testdir/test_statusline.vim +++ b/src/nvim/testdir/test_statusline.vim @@ -354,6 +354,21 @@ func Test_statusline() delfunc GetNested delfunc GetStatusLine + " Test statusline works with 80+ items + function! StatusLabel() + redrawstatus + return '[label]' + endfunc + let statusline = '%{StatusLabel()}' + for i in range(150) + let statusline .= '%#TabLine' . (i % 2 == 0 ? 'Fill' : 'Sel') . '#' . string(i)[0] + endfor + let &statusline = statusline + redrawstatus + set statusline& + delfunc StatusLabel + + " Check statusline in current and non-current window " with the 'fillchars' option. set fillchars=stl:^,stlnc:=,vert:\|,fold:-,diff:- |