forked from aniani/vim
patch 9.0.1078: with the +vartabs feature indent folding may use wrong 'ts'
Problem: With the +vartabs feature indent folding may use wrong 'tabstop'. Solution: Use the "buf" argument instead of "curbuf".
This commit is contained in:
@@ -420,7 +420,7 @@ get_indent_buf(buf_T *buf, linenr_T lnum)
|
|||||||
{
|
{
|
||||||
# ifdef FEAT_VARTABS
|
# ifdef FEAT_VARTABS
|
||||||
return get_indent_str_vtab(ml_get_buf(buf, lnum, FALSE),
|
return get_indent_str_vtab(ml_get_buf(buf, lnum, FALSE),
|
||||||
(int)curbuf->b_p_ts, buf->b_p_vts_array, FALSE);
|
(int)buf->b_p_ts, buf->b_p_vts_array, FALSE);
|
||||||
# else
|
# else
|
||||||
return get_indent_str(ml_get_buf(buf, lnum, FALSE), (int)buf->b_p_ts, FALSE);
|
return get_indent_str(ml_get_buf(buf, lnum, FALSE), (int)buf->b_p_ts, FALSE);
|
||||||
# endif
|
# endif
|
||||||
|
@@ -157,6 +157,27 @@ func Test_indent_fold_max()
|
|||||||
bw!
|
bw!
|
||||||
endfunc
|
endfunc
|
||||||
|
|
||||||
|
func Test_indent_fold_tabstop()
|
||||||
|
call setline(1, ['0', ' 1', ' 1', "\t2", "\t2"])
|
||||||
|
setlocal shiftwidth=4
|
||||||
|
setlocal foldcolumn=1
|
||||||
|
setlocal foldlevel=2
|
||||||
|
setlocal foldmethod=indent
|
||||||
|
redraw
|
||||||
|
call assert_equal('2 2', ScreenLines(5, 10)[0])
|
||||||
|
vsplit
|
||||||
|
windo diffthis
|
||||||
|
botright new
|
||||||
|
" This 'tabstop' value should not be used for folding in other buffers.
|
||||||
|
setlocal tabstop=4
|
||||||
|
diffoff!
|
||||||
|
redraw
|
||||||
|
call assert_equal('2 2', ScreenLines(5, 10)[0])
|
||||||
|
|
||||||
|
bwipe!
|
||||||
|
bwipe!
|
||||||
|
endfunc
|
||||||
|
|
||||||
func Test_manual_fold_with_filter()
|
func Test_manual_fold_with_filter()
|
||||||
CheckExecutable cat
|
CheckExecutable cat
|
||||||
for type in ['manual', 'marker']
|
for type in ['manual', 'marker']
|
||||||
|
@@ -695,6 +695,8 @@ static char *(features[]) =
|
|||||||
|
|
||||||
static int included_patches[] =
|
static int included_patches[] =
|
||||||
{ /* Add new patch number below this line */
|
{ /* Add new patch number below this line */
|
||||||
|
/**/
|
||||||
|
1078,
|
||||||
/**/
|
/**/
|
||||||
1077,
|
1077,
|
||||||
/**/
|
/**/
|
||||||
|
Reference in New Issue
Block a user