Revisions of fzf
Ana Guerrero (anag+factory)
accepted
request 1117899
from
Matej Cepl (mcepl)
(revision 37)
- Update to version 0.43.0 (examples are in full release notes on https://github.com/junegunn/fzf/releases/tag/0.43.0): - (Experimental) Added support for Kitty image protocol in the preview window - (Experimental) --listen server can report program state in JSON format (GET /) - --listen server can be secured by setting $FZF_API_KEY varienvironment able. - Added toggle-header action - Added mouse events for --bind - Added offset-up and offset-down actions - Shell extensions
Dominique Leuenberger (dimstar_suse)
accepted
request 1091832
from
smolsheep
(revision 35)
- Update to version 0.41.1: * Fixed a bug where preview window is not updated when --disabled is set and a reload is triggered by change:reload binding * Added fix-go-test.patch to make test cases work on 0.41.1
Dominique Leuenberger (dimstar_suse)
accepted
request 1089242
from
Avindra Goolcharan (avindra)
(revision 34)
- Update to version 0.41.0: * Added color name preview-border and preview-scrollbar * Added new border style block which uses block elements * --scrollbar can take two characters, one for the main window, the other for the preview window * Bug fixes and improvements - require golang >= 1.19 instead of "="
Dominique Leuenberger (dimstar_suse)
accepted
request 1083792
from
Matej Cepl (mcepl)
(revision 33)
- Update to version 0.40.0: - Added `zero` event that is triggered when there's no match ```sh # Reload the candidate list when there's no match echo $RANDOM | fzf --bind 'zero:reload(echo $RANDOM)+clear-query' --height 3 ``` - New actions - Added `track` action which makes fzf track the current item when the search result is updated. If the user manually moves the cursor, or the item is not in the updated search result, tracking is automatically disabled. Tracking is useful when you want to see the surrounding items by deleting the query string. ```sh # Narrow down the list with a query, point to a command, # and hit CTRL-T to see its surrounding commands. export FZF_CTRL_R_OPTS=" --preview 'echo {}' --preview-window up:3:hidden:wrap --bind 'ctrl-/:toggle-preview' --bind 'ctrl-t:track+clear-query' --bind 'ctrl-y:execute-silent(echo -n {2..} | pbcopy)+abort' --color header:italic --header 'Press CTRL-Y to copy command into clipboard'" ``` - Added `change-header(...)` - Added `transform-header(...)` - Added `toggle-track` action - Fixed `--track` behavior when used with `--tac` - However, using `--track` with `--tac` is not recommended. The resulting behavior can be very confusing. - Bug fixes and improvements
Dominique Leuenberger (dimstar_suse)
accepted
request 1080294
from
Matej Cepl (mcepl)
(revision 32)
Update to version 0.39.0 major upstream release. (forwarded request 1080214 from luc14n0)
Dominique Leuenberger (dimstar_suse)
accepted
request 1078867
from
Matej Cepl (mcepl)
(revision 31)
- All those completion scripts not requiring their respective shells is a bit ridiculous.
Dominique Leuenberger (dimstar_suse)
accepted
request 1063495
from
Matej Cepl (mcepl)
(revision 29)
- Update to 0.37.0: - Added a way to customize the separator of inline info fzf --info 'inline: ╱ ' --prompt '╱ ' --color prompt:bright-yellow - New event focus - Triggered when the focus changes due to a vertical cursor movement or a search result update fzf --bind 'focus:transform-preview-label:echo [ {} ]' --preview 'cat {}' # Any action bound to the event runs synchronously and thus can make the interface sluggish # e.g. lolcat isn't one of the fastest programs, and every cursor movement in # fzf will be noticeably affected by its execution time fzf --bind 'focus:transform-preview-label:echo [ {} ] | lolcat -f' --preview 'cat {}' # Beware not to introduce an infinite loop seq 10 | fzf --bind 'focus:up' --cycle - New actions change-border-label change-preview-label transform-border-label transform-preview-label - Bug fixes and improvements - Update to 0.36.0: - Added --listen=HTTP_PORT option to start HTTP server. It allows external processes to send actions to perform via POST method. # Start HTTP server on port 6266 fzf --listen 6266 # Send actions to the server curl localhost:6266 -d 'reload(seq 100)+change-prompt(hundred> )' - Added draggable scrollbar to the main search window and the preview window # Hide scrollbar fzf --no-scrollbar # Customize scrollbar fzf --scrollbar ┆ --color scrollbar:blue - New event Added load event that is triggered when the input stream is complete and the initial processing of the list is complete. # Change the prompt to "loaded" when the input stream is complete (seq 10; sleep 1; seq 11 20) | fzf --prompt 'Loading> ' --bind 'load:change-prompt:Loaded> ' # You can use it instead of 'start' event without `--sync` if asynchronous # trigger is not an issue. (seq 10; sleep 1; seq 11 20) | fzf --bind 'load:last' - New actions Added pos(...) action to move the cursor to the numeric position first and last are equivalent to pos(1) and pos(-1) respectively # Put the cursor on the 10th item seq 100 | fzf --sync --bind 'start:pos(10)' # Put the cursor on the 10th to last item seq 100 | fzf --sync --bind 'start:pos(-10)' Added reload-sync(...) action which replaces the current list only after the reload process is complete. This is useful when the command takes a while to produce the initial output and you don't want fzf to run against an empty list while the command is running. # You can still filter and select entries from the initial list for 3 seconds seq 100 | fzf --bind 'load:reload-sync(sleep 3; seq 1000)+unbind(load)' Added next-selected and prev-selected actions to move between selected items # `next-selected` will move the pointer to the next selected item below the current line # `prev-selected` will move the pointer to the previous selected item above the current line seq 10 | fzf --multi --bind ctrl-n:next-selected,ctrl-p:prev-selected # Both actions respect --layout option seq 10 | fzf --multi --bind ctrl-n:next-selected,ctrl-p:prev-selected --layout reverse Added change-query(...) action that simply changes the query string to the given static string. This can be useful when used with --listen. curl localhost:6266 -d "change-query:$(date)" Added transform-prompt(...) action for transforming the prompt string using an external command # Press space to change the prompt string using an external command # (only the first line of the output is taken) fzf --bind 'space:reload(ls),load:transform-prompt(printf "%s> " "$(date)")' Added transform-query(...) action for transforming the query string using an external command # Press space to convert the query to uppercase letters fzf --bind 'space:transform-query(tr "[:lower:]" "[:upper:]" <<< {q})' # Bind it to 'change' event for automatic conversion fzf --bind 'change:transform-query(tr "[:lower:]" "[:upper:]" <<< {q})' # Can only type numbers fzf --bind 'change:transform-query(sed "s/[^0-9]//g" <<< {q})' put action can optionally take an argument string # a will put 'alpha' on the prompt, ctrl-b will put 'bravo' fzf --bind 'a:put+put(lpha),ctrl-b:put(bravo)' - Added color name preview-label for --preview-label (defaults to label for --border-label) - Better support for (Windows) terminals where each box-drawing character takes 2 columns. Set RUNEWIDTH_EASTASIAN environment variable to 1. On Vim, the variable will be automatically set if &ambiwidth is double - Behavior changes fzf will always execute the preview command if the command template contains {q} even when it's empty. If you prefer the old behavior, you'll have to check if {q} is empty in your command. # This will show // even when the query is empty : | fzf --preview 'echo /{q}/' # But if you don't want it, : | fzf --preview '[ -n {q} ] || exit; echo /{q}/' double-click will behave the same as enter unless otherwise specified, so you don't have to repeat the same action twice in --bind in most cases. # No need to bind 'double-click' to the same action fzf --bind 'enter:execute:less {}' # --bind 'double-click:execute:less {}' If the color for separator is not specified, it will default to the color for border. Same holds true for scrollbar. This is to reduce the number of configuration items required to achieve a consistent color scheme. If follow flag is specified in --preview-window option, fzf will automatically scroll to the bottom of the streaming preview output. But when the user manually scrolls the window, the following stops. With this version, fzf will resume following if the user scrolls the window to the bottom. Default border style on Windows is changed to sharp because some Windows terminals are not capable of displaying rounded border characters correctly. - Minor bug fixes and improvements
Richard Brown (RBrownFactory)
accepted
request 1006792
from
Matej Cepl (mcepl)
(revision 26)
- Update to 0.34.0: - Added support for adaptive --height. If the --height value is prefixed with ~, fzf will automatically determine the height in the range according to the input size. seq 1 | fzf --height ~70% --border --padding 1 --margin 1 seq 10 | fzf --height ~70% --border --padding 1 --margin 1 seq 100 | fzf --height ~70% --border --padding 1 --margin 1 - There are a few limitations - Not compatible with percent top/bottom margin/padding # This is not allowed (top/bottom margin in percent value) fzf --height ~50% --border --margin 5%,10% # This is allowed (top/bottom margin in fixed value) fzf --height ~50% --border --margin 2,10% - fzf will not start until it can determine the right height for the input # fzf will open immediately (sleep 2; seq 10) | fzf --height 50% # fzf will open after 2 seconds (sleep 2; seq 10) | fzf --height ~50% (sleep 2; seq 1000) | fzf --height ~50% - Fixed tcell renderer used to render full-screen fzf on Windows --no-clear is deprecated. Use reload action instead.
Dominique Leuenberger (dimstar_suse)
accepted
request 925521
from
Matej Cepl (mcepl)
(revision 19)
- Update to 0.27.3: - Preview window is `hidden` by default when there are `preview` bindings but `--preview` command is not given - Fixed bug where `{n}` is not properly reset on `reload` - Fixed bug where spinner is not displayed on `reload` - Enhancements in tcell renderer for Windows (#2616) - Vim plugin - `sinklist` is added as a synonym to `sink*` so that it's easier to add a function to a spec dictionary ```vim let spec = { 'source': 'ls', 'options': ['--multi', '--preview', 'cat {}'] } function spec.sinklist(matches) echom string(a:matches) endfunction call fzf#run(fzf#wrap(spec)) ``` - Vim 7 compatibility - Set FZF_VERSION and FZF_REVISION environment variables as well.
Displaying revisions 21 - 40 of 58