Releases: junegunn/fzf
Releases · junegunn/fzf
0.64.0
- Added
multi
event that is triggered when the multi-selection has changed.fzf --multi \ --bind 'ctrl-a:select-all,ctrl-d:deselect-all' \ --bind 'multi:transform-footer:(( FZF_SELECT_COUNT )) && echo "Selected $FZF_SELECT_COUNT item(s)"'
- Halfwidth and fullwidth alphanumeric and punctuation characters are now internally normalized to their ASCII equivalents to allow matching with ASCII queries.
echo ABC| fzf -q abc
- Renamed
clear-selection
action toclear-multi
for consistency.clear-selection
remains supported as an alias for backward compatibility.
- Bug fixes
- Fixed a bug that could cause fzf to abort due to incorrect update ordering.
- Fixed a bug where some multi-selections were lost when using
exclude
orchange-nth
.
0.63.0
Release highlights: https://junegunn.github.io/fzf/releases/0.63.0/
- Added footer. The default border style for footer is
line
, which draws a single separator line.fzf --reverse --footer "fzf: friend zone forever"
- Options
--footer[=STRING]
--footer-border[=STYLE]
--footer-label=LABEL
--footer-label-pos=COL[:bottom]
- Colors
footer
footer-bg
footer-border
footer-label
- Actions
change-footer
transform-footer
bg-transform-footer
change-footer-label
transform-footer-label
bg-transform-footer-label
- Options
line
border style is now allowed for all types of border except for--list-border
.fzf --height 50% --style full:line --preview 'cat {}' \ --bind 'focus:bg-transform-header(file {})+bg-transform-footer(wc {})'
- Added
{*}
placeholder flag that evaluates to all matched items.seq 10000 | fzf --preview "awk '{sum += \$1} END {print sum}' {*f}"
- Use this with caution, as it can make fzf sluggish for large lists.
- Added asynchronous transform actions with
bg-
prefix that run asynchronously in the background, along withbg-cancel
action to cancel currently runningbg-transform
actions.# Implement popup that disappears after 1 second # * Use footer as the popup # * Use `bell` to ring the terminal bell # * Use `bg-transform-footer` to clear the footer after 1 second # * Use `bg-cancel` to cancel currently running background transform actions fzf --multi --list-border \ --bind 'enter:execute-silent(echo -n {+} | pbcopy)+bell' \ --bind 'enter:+transform-footer(echo Copied {} to clipboard)' \ --bind 'enter:+bg-cancel+bg-transform-footer(sleep 1)' # It's okay for the commands to take a little while because they run in the background GETTER='curl -s http://metaphorpsum.com/sentences/1' fzf --style full --border --preview : \ --bind "focus:bg-transform-header:$GETTER" \ --bind "focus:+bg-transform-footer:$GETTER" \ --bind "focus:+bg-transform-border-label:$GETTER" \ --bind "focus:+bg-transform-preview-label:$GETTER" \ --bind "focus:+bg-transform-input-label:$GETTER" \ --bind "focus:+bg-transform-list-label:$GETTER" \ --bind "focus:+bg-transform-header-label:$GETTER" \ --bind "focus:+bg-transform-footer-label:$GETTER" \ --bind "focus:+bg-transform-ghost:$GETTER" \ --bind "focus:+bg-transform-prompt:$GETTER"
- Added support for full-line background color in the list section
for i in $(seq 16 255); do echo -e "\x1b[48;5;${i}m\x1b[0Khello" done | fzf --ansi
- SSH completion enhancements by @akinomyoga
- Bug fixes and improvements
0.62.0
- Relaxed the
--color
option syntax to allow whitespace-separated entries (in addition to commas), making multi-line definitions easier to write and read# seoul256-light fzf --style full --color=' fg:#616161 fg+:#616161 bg:#ffffff bg+:#e9e9e9 alt-bg:#f1f1f1 hl:#719872 hl+:#719899 pointer:#e12672 marker:#e17899 header:#719872 spinner:#719899 info:#727100 prompt:#0099bd query:#616161 border:#e1e1e1 '
- Added
alt-bg
color to create striped lines to visually separate rowsfzf --color bg:237,alt-bg:238,current-bg:236 --highlight-line declare -f | perl -0777 -pe 's/^}\n/}\0/gm' | bat --plain --language bash --color always | fzf --read0 --ansi --reverse --multi \ --color bg:237,alt-bg:238,current-bg:236 --highlight-line
- [fish] Improvements in CTRL-R binding (@bitraid)
- You can trigger CTRL-R in the middle of a command to insert the selected item
- You can delete history items with SHIFT-DEL
- Bug fixes and improvements
Screenshot

0.61.3
0.61.2
- Fixed panic when using header border without pointer/marker (@phanen)
- Fixed
--tmux
option when already inside a tmux popup (@peikk0) - Bug fixes and improvements in CTRL-T binding of fish (#4334) (@bitraid)
- Added
--no-tty-default
option to make fzf search for the current TTY device instead of defaulting to/dev/tty
(#4242)
0.61.1
0.61.0
- Added
--ghost=TEXT
to display a ghost text when the input is empty# Display "Type to search" when the input is empty fzf --ghost "Type to search"
- Added
change-ghost
andtransform-ghost
actions for dynamically changing the ghost text - Added
change-pointer
andtransform-pointer
actions for dynamically changing the pointer sign - Added
r
flag for placeholder expression (raw mode) for unquoted output - Bug fixes and improvements
0.60.3
- Bug fixes and improvements
- [fish] Enable multiple history commands insertion (#4280) (@bitraid)
- [walker] Append '/' to directory entries on MSYS2 (#4281)
- Trim trailing whitespaces after processing ANSI sequences (#4282)
- Remove temp files before
become
when using--tmux
option (#4283) - Fix condition for using item numlines cache (#4285) (@alex-huff)
- Make
--accept-nth
compatible with--select-1
(#4287) - Increase the query length limit from 300 to 1000 (#4292)
- [windows] Prevent fzf from consuming user input while paused (#4260)
0.60.2
- Template for
--with-nth
and--accept-nth
now supports{n}
which evaluates to the zero-based ordinal index of the item - Fixed a regression that caused the last field in the "nth" expression to be trimmed when a regular expression delimiter is used
- Thanks to @phanen for the fix
- Fixed 'jump' action when the pointer is an empty string