diff --git a/plugin/fzf.vim b/plugin/fzf.vim index 2948595f..6fa3d14d 100644 --- a/plugin/fzf.vim +++ b/plugin/fzf.vim @@ -642,9 +642,11 @@ function! s:calc_size(max, val, dict) endif let opts = $FZF_DEFAULT_OPTS.' '.s:evaluate_opts(get(a:dict, 'options', '')) - let margin = stridx(opts, '--inline-info') > stridx(opts, '--no-inline-info') ? 1 : 2 + let margin = match(opts, '--inline-info\|--info[^-]\{-}inline') > match(opts, '--no-inline-info\|--info[^-]\{-}\(default\|hidden\)') ? 1 : 2 let margin += stridx(opts, '--border') > stridx(opts, '--no-border') ? 2 : 0 - let margin += stridx(opts, '--header') > stridx(opts, '--no-header') + if stridx(opts, '--header') > stridx(opts, '--no-header') + let margin += len(split(opts, "\n")) + endif return srcsz >= 0 ? min([srcsz + margin, size]) : size endfunction