mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2025-01-09 09:50:26 +00:00
README-VIM: g:fzf_action doesn't work with custom sink
Fix https://github.com/junegunn/fzf.vim/issues/1131
This commit is contained in:
parent
6c9adea0d3
commit
305896fcb3
@ -127,11 +127,13 @@ let g:fzf_action = {
|
|||||||
\ 'ctrl-v': 'vsplit' }
|
\ 'ctrl-v': 'vsplit' }
|
||||||
|
|
||||||
" Default fzf layout
|
" Default fzf layout
|
||||||
" - down / up / left / right / window
|
" - Popup window
|
||||||
let g:fzf_layout = { 'down': '40%' }
|
|
||||||
let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }
|
let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }
|
||||||
|
|
||||||
" You can set up fzf window using a Vim command (Neovim or latest Vim 8 required)
|
" - down / up / left / right
|
||||||
|
let g:fzf_layout = { 'down': '40%' }
|
||||||
|
|
||||||
|
" - Window using a Vim command
|
||||||
let g:fzf_layout = { 'window': 'enew' }
|
let g:fzf_layout = { 'window': 'enew' }
|
||||||
let g:fzf_layout = { 'window': '-tabnew' }
|
let g:fzf_layout = { 'window': '-tabnew' }
|
||||||
let g:fzf_layout = { 'window': '10new' }
|
let g:fzf_layout = { 'window': '10new' }
|
||||||
@ -332,8 +334,9 @@ After we *"wrap"* our spec, we pass it to `fzf#run`.
|
|||||||
call fzf#run(fzf#wrap({'source': 'ls'}))
|
call fzf#run(fzf#wrap({'source': 'ls'}))
|
||||||
```
|
```
|
||||||
|
|
||||||
Now it supports `CTRL-T`, `CTRL-V`, and `CTRL-X` key bindings and it opens fzf
|
Now it supports `CTRL-T`, `CTRL-V`, and `CTRL-X` key bindings (configurable
|
||||||
window according to `g:fzf_layout` setting.
|
via `g:fzf_action`) and it opens fzf window according to `g:fzf_layout`
|
||||||
|
setting.
|
||||||
|
|
||||||
To make it easier to use, let's define `LS` command.
|
To make it easier to use, let's define `LS` command.
|
||||||
|
|
||||||
@ -370,6 +373,17 @@ command! -bang -complete=dir -nargs=* LS
|
|||||||
\ call fzf#run(fzf#wrap('ls', {'source': 'ls', 'dir': <q-args>}, <bang>0))
|
\ call fzf#run(fzf#wrap('ls', {'source': 'ls', 'dir': <q-args>}, <bang>0))
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Global options supported by `fzf#wrap`
|
||||||
|
|
||||||
|
- `g:fzf_layout`
|
||||||
|
- `g:fzf_action`
|
||||||
|
- **Works only when no custom `sink` (or `sink*`) is provided**
|
||||||
|
- Having custom sink usually means that each entry is not an ordinary
|
||||||
|
file path (e.g. name of color scheme), so we can't blindly apply the
|
||||||
|
same strategy (i.e. `tabedit some-color-scheme` doesn't make sense)
|
||||||
|
- `g:fzf_colors`
|
||||||
|
- `g:fzf_history_dir`
|
||||||
|
|
||||||
Tips
|
Tips
|
||||||
----
|
----
|
||||||
|
|
||||||
|
41
doc/fzf.txt
41
doc/fzf.txt
@ -1,4 +1,4 @@
|
|||||||
fzf.txt fzf Last change: April 4 2020
|
fzf.txt fzf Last change: October 18 2020
|
||||||
FZF - TABLE OF CONTENTS *fzf* *fzf-toc*
|
FZF - TABLE OF CONTENTS *fzf* *fzf-toc*
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@ -11,6 +11,7 @@ FZF - TABLE OF CONTENTS *fzf* *fzf-to
|
|||||||
Explanation of g:fzf_colors
|
Explanation of g:fzf_colors
|
||||||
fzf#run
|
fzf#run
|
||||||
fzf#wrap
|
fzf#wrap
|
||||||
|
Global options supported by fzf#wrap
|
||||||
Tips
|
Tips
|
||||||
fzf inside terminal buffer
|
fzf inside terminal buffer
|
||||||
Starting fzf in a popup window
|
Starting fzf in a popup window
|
||||||
@ -105,14 +106,14 @@ the whole if we start off with `:FZF` command.
|
|||||||
" Bang version starts fzf in fullscreen mode
|
" Bang version starts fzf in fullscreen mode
|
||||||
:FZF!
|
:FZF!
|
||||||
<
|
<
|
||||||
Similarly to {ctrlp.vim}{2}, use enter key, CTRL-T, CTRL-X or CTRL-V to open
|
Similarly to {ctrlp.vim}{3}, use enter key, CTRL-T, CTRL-X or CTRL-V to open
|
||||||
selected files in the current window, in new tabs, in horizontal splits, or in
|
selected files in the current window, in new tabs, in horizontal splits, or in
|
||||||
vertical splits respectively.
|
vertical splits respectively.
|
||||||
|
|
||||||
Note that the environment variables `FZF_DEFAULT_COMMAND` and
|
Note that the environment variables `FZF_DEFAULT_COMMAND` and
|
||||||
`FZF_DEFAULT_OPTS` also apply here.
|
`FZF_DEFAULT_OPTS` also apply here.
|
||||||
|
|
||||||
{2} https://github.com/kien/ctrlp.vim
|
{3} https://github.com/kien/ctrlp.vim
|
||||||
|
|
||||||
|
|
||||||
< Configuration >_____________________________________________________________~
|
< Configuration >_____________________________________________________________~
|
||||||
@ -154,11 +155,13 @@ Examples~
|
|||||||
\ 'ctrl-v': 'vsplit' }
|
\ 'ctrl-v': 'vsplit' }
|
||||||
|
|
||||||
" Default fzf layout
|
" Default fzf layout
|
||||||
" - down / up / left / right / window
|
" - Popup window
|
||||||
let g:fzf_layout = { 'down': '~40%' }
|
|
||||||
let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }
|
let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }
|
||||||
|
|
||||||
" You can set up fzf window using a Vim command (Neovim or latest Vim 8 required)
|
" - down / up / left / right
|
||||||
|
let g:fzf_layout = { 'down': '40%' }
|
||||||
|
|
||||||
|
" - Window using a Vim command
|
||||||
let g:fzf_layout = { 'window': 'enew' }
|
let g:fzf_layout = { 'window': 'enew' }
|
||||||
let g:fzf_layout = { 'window': '-tabnew' }
|
let g:fzf_layout = { 'window': '-tabnew' }
|
||||||
let g:fzf_layout = { 'window': '10new' }
|
let g:fzf_layout = { 'window': '10new' }
|
||||||
@ -347,8 +350,8 @@ After we "wrap" our spec, we pass it to `fzf#run`.
|
|||||||
>
|
>
|
||||||
call fzf#run(fzf#wrap({'source': 'ls'}))
|
call fzf#run(fzf#wrap({'source': 'ls'}))
|
||||||
<
|
<
|
||||||
Now it supports CTRL-T, CTRL-V, and CTRL-X key bindings and it opens fzf
|
Now it supports CTRL-T, CTRL-V, and CTRL-X key bindings (configurable via
|
||||||
window according to `g:fzf_layout` setting.
|
`g:fzf_action`) and it opens fzf window according to `g:fzf_layout` setting.
|
||||||
|
|
||||||
To make it easier to use, let's define `LS` command.
|
To make it easier to use, let's define `LS` command.
|
||||||
>
|
>
|
||||||
@ -378,6 +381,19 @@ unique name to our command and pass it as the first argument to `fzf#wrap`.
|
|||||||
\ call fzf#run(fzf#wrap('ls', {'source': 'ls', 'dir': <q-args>}, <bang>0))
|
\ call fzf#run(fzf#wrap('ls', {'source': 'ls', 'dir': <q-args>}, <bang>0))
|
||||||
<
|
<
|
||||||
|
|
||||||
|
< Global options supported by fzf#wrap >______________________________________~
|
||||||
|
*fzf-global-options-supported-by-fzf#wrap*
|
||||||
|
|
||||||
|
- `g:fzf_layout`
|
||||||
|
- `g:fzf_action`
|
||||||
|
- Works only when no custom `sink` (or `sink*`) is provided
|
||||||
|
- Having custom sink usually means that each entry is not an ordinary
|
||||||
|
file path (e.g. name of color scheme), so we can't blindly apply the
|
||||||
|
same strategy (i.e. `tabedit some-color-scheme` doesn't make sense)
|
||||||
|
- `g:fzf_colors`
|
||||||
|
- `g:fzf_history_dir`
|
||||||
|
|
||||||
|
|
||||||
TIPS *fzf-tips*
|
TIPS *fzf-tips*
|
||||||
==============================================================================
|
==============================================================================
|
||||||
|
|
||||||
@ -398,8 +414,8 @@ Starting fzf in a popup window~
|
|||||||
*fzf-starting-fzf-in-a-popup-window*
|
*fzf-starting-fzf-in-a-popup-window*
|
||||||
>
|
>
|
||||||
" 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]]
|
||||||
@ -427,9 +443,8 @@ When fzf starts in a terminal buffer, the file type of the buffer is set to
|
|||||||
`fzf`. So you can set up `FileType fzf` autocmd to customize the settings of
|
`fzf`. So you can set up `FileType fzf` autocmd to customize the settings of
|
||||||
the window.
|
the window.
|
||||||
|
|
||||||
For example, if you use a non-popup layout (e.g. `{'down': '40%'}`) on
|
For example, if you use a non-popup layout (e.g. `{'down': '40%'}`) on Neovim,
|
||||||
Neovim, you might want to temporarily disable the statusline for a cleaner
|
you might want to temporarily disable the statusline for a cleaner look.
|
||||||
look.
|
|
||||||
>
|
>
|
||||||
if has('nvim') && !exists('g:fzf_layout')
|
if has('nvim') && !exists('g:fzf_layout')
|
||||||
autocmd! FileType fzf
|
autocmd! FileType fzf
|
||||||
|
Loading…
Reference in New Issue
Block a user