Revisions of fzf
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.
Dominique Leuenberger (dimstar_suse)
accepted
request 896611
from
Matej Cepl (mcepl)
(revision 18)
- Update to 0.27.2: - 16 base ANSI colors can be specified by their names fzf --color fg:3,fg+:11 fzf --color fg:yellow,fg+:bright-yellow - Fix bug where --read0 not properly displaying long lines
Dominique Leuenberger (dimstar_suse)
accepted
request 894915
from
Matej Cepl (mcepl)
(revision 17)
- Update to 0.27.1: - Added unbind action. In the following Ripgrep launcher example, you can use unbind(reload) to switch to fzf-only filtering mode. See https://github.com/junegunn/fzf/blob/master/ADVANCED.md#switching-to-fzf-only-search-mode - Vim plugin will stop immediately even when the source command hasn't finished " fzf will read the stream file while allowing other processes to append to it call fzf#run(fzf#wrap({'source': 'cat /dev/null > /tmp/stream; tail -f /tmp/stream'})) - It is now possible to open popup window relative to the currrent window let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6, 'relative': v:true, 'yoffset': 1.0 } }
Dominique Leuenberger (dimstar_suse)
accepted
request 878879
from
Matej Cepl (mcepl)
(revision 15)
- Update to 0.26.0: - Added support for fixed header in preview window # Display top 3 lines as the fixed header fzf --preview 'bat --style=header,grid --color=always {}' --preview-window '~3' More advanced preview offset expression to better support the fixed header # Preview with bat, matching line in the middle of the window below # the fixed header of the top 3 lines # # ~3 Top 3 lines as the fixed header # +{2} Base scroll offset extracted from the second field # +3 Extra offset to compensate for the 3-line header # /2 Put in the middle of the preview area # git grep --line-number '' | fzf --delimiter : \ --preview 'bat --style=full --color=always --highlight-line {2} {1}' \ --preview-window '~3:+{2}+3/2' - Added select and deselect action for unconditionally selecting or deselecting a single item in --multi mode. Complements toggle action. - Sigificant performance improvement in ANSI code processing - Bug fixes and improvements
Dominique Leuenberger (dimstar_suse)
accepted
request 868989
from
Matej Cepl (mcepl)
(revision 14)
- Update to 0.25.1: - Added `close` action - Close preview window if open, abort fzf otherwise - Bug fixes and improvements
Dominique Leuenberger (dimstar_suse)
accepted
request 859924
from
Matej Cepl (mcepl)
(revision 13)
- Text attributes set in --color are not reset when fzf sees another --color option for the same element. This allows you to put custom text attributes in your $FZF_DEFAULT_OPTS and still have those attributes even when you override the colors. # Default colors and attributes fzf # Apply custom text attributes export FZF_DEFAULT_OPTS='--color fg+:italic,hl:-1:underline,hl+:-1:reverse:underline' fzf # Different colors but you still have the attributes fzf --color hl:176,hl+:177 # Write "regular" if you want to clear the attributes fzf --color hl:176:regular,hl+:177:regular - Renamed --phony to --disabled - You can dynamically enable and disable the search functionality using the new enable-search, disable-search, and toggle-search actions - You can assign a different color to the query string for when search is disabled fzf --color query:#ffffff,disabled:#999999 --bind space:toggle-search - Added last action to move the cursor to the last match The opposite action top is renamed to first, but top is still recognized as a synonym for backward compatibility - Added preview-top and preview-bottom actions - Extended support for alt key chords: alt with any case-sensitive single character fzf --bind alt-,:first,alt-.:last - Generate tags for vim documentation
Displaying revisions 21 - 40 of 52