mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2024-12-23 03:19:01 +00:00
[vim] Allow specifying popup width and height in absolute integer value
Fix https://github.com/junegunn/fzf.vim/issues/1116
This commit is contained in:
parent
d785135606
commit
0db65c22d3
@ -290,8 +290,8 @@ When `window` entry is a dictionary, fzf will start in a popup window. The
|
|||||||
following options are allowed:
|
following options are allowed:
|
||||||
|
|
||||||
- Required:
|
- Required:
|
||||||
- `width` [float range [0 ~ 1]]
|
- `width` [float range [0 ~ 1]] or [integer range [8 ~ ]]
|
||||||
- `height` [float range [0 ~ 1]]
|
- `height` [float range [0 ~ 1]] or [integer range [4 ~ ]]
|
||||||
- Optional:
|
- Optional:
|
||||||
- `yoffset` [float default 0.5 range [0 ~ 1]]
|
- `yoffset` [float default 0.5 range [0 ~ 1]]
|
||||||
- `xoffset` [float default 0.5 range [0 ~ 1]]
|
- `xoffset` [float default 0.5 range [0 ~ 1]]
|
||||||
@ -386,8 +386,8 @@ The latest versions of Vim and Neovim include builtin terminal emulator
|
|||||||
|
|
||||||
```vim
|
```vim
|
||||||
" Required:
|
" Required:
|
||||||
" - width [float range [0 ~ 1]]
|
" - width [float range [0 ~ 1]] or [integer range [8 ~ ]]
|
||||||
" - height [float range [0 ~ 1]]
|
" - height [float range [0 ~ 1]] or [integer range [4 ~ ]]
|
||||||
"
|
"
|
||||||
" Optional:
|
" Optional:
|
||||||
" - xoffset [float default 0.5 range [0 ~ 1]]
|
" - xoffset [float default 0.5 range [0 ~ 1]]
|
||||||
|
@ -305,8 +305,8 @@ When `window` entry is a dictionary, fzf will start in a popup window. The
|
|||||||
following options are allowed:
|
following options are allowed:
|
||||||
|
|
||||||
- Required:
|
- Required:
|
||||||
- `width` [float range [0 ~ 1]]
|
- `width` [float range [0 ~ 1]] or [integer range [8 ~ ]]
|
||||||
- `height` [float range [0 ~ 1]]
|
- `height` [float range [0 ~ 1]] or [integer range [4 ~ ]]
|
||||||
- Optional:
|
- Optional:
|
||||||
- `yoffset` [float default 0.5 range [0 ~ 1]]
|
- `yoffset` [float default 0.5 range [0 ~ 1]]
|
||||||
- `xoffset` [float default 0.5 range [0 ~ 1]]
|
- `xoffset` [float default 0.5 range [0 ~ 1]]
|
||||||
|
@ -864,9 +864,9 @@ function! s:popup(opts) abort
|
|||||||
let ambidouble = &ambiwidth == 'double' ? 2 : 1
|
let ambidouble = &ambiwidth == 'double' ? 2 : 1
|
||||||
|
|
||||||
" Size and position
|
" Size and position
|
||||||
let width = min([max([0, float2nr(&columns * a:opts.width)]), &columns])
|
let width = min([max([8, a:opts.width > 1 ? a:opts.width : float2nr(&columns * a:opts.width)]), &columns])
|
||||||
let width += width % ambidouble
|
let width += width % ambidouble
|
||||||
let height = min([max([0, float2nr(&lines * a:opts.height)]), &lines - has('nvim')])
|
let height = min([max([4, a:opts.height > 1 ? a:opts.height : float2nr(&lines * a:opts.height)]), &lines - has('nvim')])
|
||||||
let row = float2nr(get(a:opts, 'yoffset', 0.5) * (&lines - height))
|
let row = float2nr(get(a:opts, 'yoffset', 0.5) * (&lines - height))
|
||||||
let col = float2nr(get(a:opts, 'xoffset', 0.5) * (&columns - width))
|
let col = float2nr(get(a:opts, 'xoffset', 0.5) * (&columns - width))
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user