- Added two new events
result
- triggered when the filtering for the current query is complete and the result list is readyresize
- triggered when the terminal size is changed
- fzf now exports the following environment variables to the child processes
Variable Description FZF_LINES
Number of lines fzf takes up excluding padding and margin FZF_COLUMNS
Number of columns fzf takes up excluding padding and margin FZF_TOTAL_COUNT
Total number of items FZF_MATCH_COUNT
Number of matched items FZF_SELECT_COUNT
Number of selected items FZF_QUERY
Current query string FZF_PROMPT
Prompt string FZF_ACTION
The name of the last action performed - This allows you to write sophisticated transformations like so
# Script to dynamically resize the preview window transformer=' # 1 line for info, another for prompt, and 2 more lines for preview window border lines=$(( FZF_LINES - FZF_MATCH_COUNT - 4 )) if [[ $FZF_MATCH_COUNT -eq 0 ]]; then echo "change-preview-window:hidden" elif [[ $lines -gt 3 ]]; then echo "change-preview-window:$lines" elif [[ $FZF_PREVIEW_LINES -ne 3 ]]; then echo "change-preview-window:3" fi ' seq 10000 | fzf --preview 'seq {} 10000' --preview-window up \ --bind "result:transform:$transformer" \ --bind "resize:transform:$transformer"
- And we're phasing out
{fzf:prompt}
and{fzf:action}
- This allows you to write sophisticated transformations like so
- Changed mattn/go-runewidth dependency to rivo/uniseg for accurate results
- Set
--ambidouble
if your terminal displays ambiguous width characters (e.g. box-drawing characters for borders) as 2 columns RUNEWIDTH_EASTASIAN=1
is still respected for backward compatibility, but it's recommended that you use this new option instead
- Set
- Bug fixes