0.54.0
Release highlights: https://junegunn.github.io/fzf/releases/0.54.0/
- Implemented line wrap of long items
--wrap
option enables line wrap--wrap-sign
customizes the sign for wrapped lines (default:↳
)toggle-wrap
action toggles line wraphistory | fzf --tac --wrap --bind 'ctrl-/:toggle-wrap' --wrap-sign $'\t↳ '
- fzf by default binds
CTRL-/
andALT-/
totoggle-wrap
- Updated shell integration scripts to leverage line wrap
- CTRL-R binding includes
--wrap-sign $'\t↳ '
to indent wrapped lines kill **
completion uses--wrap
to show the whole line by default instead of showing it in the preview window
- CTRL-R binding includes
- Added
--info-command
option for customizing the info line# Prepend the current cursor position in yellow fzf --info-command='echo -e "\x1b[33;1m$FZF_POS\x1b[m/$FZF_INFO 💛"'
$FZF_INFO
is set to the original info text- ANSI color codes are supported
- Pointer and marker signs can be set to empty strings
# Minimal style fzf --pointer '' --marker '' --prompt '' --info hidden
- Better cache management and improved rendering for
--tail
- Improved
--sync
behavior- When
--sync
is provided, fzf will not render the interface until the initial filtering and the associated actions (bound to any ofstart
,load
,result
, orfocus
) are complete.# fzf will not render intermediate states (sleep 1; seq 1000000; sleep 1) | fzf --sync --query 5 --listen --bind start:up,load:up,result:up,focus:change-header:Ready
- When
- GET endpoint is now available from
execute
andtransform
actions (it used to timeout due to lock conflict)fzf --listen --sync --bind 'focus:transform-header:curl -s localhost:$FZF_PORT?limit=0 | jq .'
- Added
offset-middle
action to place the current item is in the middle of the screen - fzf will not start the initial reader when
reload
orreload-sync
is bound tostart
event.fzf < /dev/null
or: | fzf
are no longer required and extraneousload
event will not fire due to the empty list.# Now this will work as expected. Previously, this would print an invalid header line. # `fzf < /dev/null` or `: | fzf` would fix the problem, but then an extraneous # `load` event would fire and the header would be prematurely updated. fzf --header 'Loading ...' --header-lines 1 \ --bind 'start:reload:sleep 1; ps -ef' \ --bind 'load:change-header:Loaded!'
- Fixed mouse support on Windows
- Fixed crash when using
--tiebreak=end
with very long items - zsh 5.0 compatibility (thanks to @LangLangBart)
- Fixed
--walker-skip
to also skip symlinks to directories - Fixed
result
event not fired when input stream is not complete - Built-in reader of the Windows binary will print forward slashes on MSYS and WSL (thanks to @charlievieth)
- New tags will have
v
prefix so that they are available on https://proxy.golang.org/