Charalambos Emmanouilidis
8d688521fe
Fix --accept-nth being ignored in filter mode ( #4636 )
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
The --accept-nth option was not being respected when using --filter mode.
This caused fzf to output entire lines instead of only the specified fields.
Added buildItemTransformer() helper function to consistently apply field
transformations across filter mode (both streaming and non-streaming) and
select1/exit0 modes.
Fixes #4615
2025-12-19 18:31:39 +09:00
LangLangBart
c8cf0992c1
zsh foreign test ( #4622 )
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
* test(zsh): add test for C-r with foreign commands
* ci: make docker command configurable via variable
Allows using alternative container runtimes, e.g., DOCKER=podman make docker-test
* test(zsh): use unique histfile for foreign commands test
* test(zsh): use multi select in foreign test
2025-12-08 11:15:44 +09:00
LangLangBart
cfc37caabc
feat(zsh): Handle multi-line history selection ( #4595 )
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-11-30 21:32:55 +09:00
LangLangBart
3db63f5e52
fix(terminal): correct display width calculation with maxWidth ( #4596 )
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
fix #4593
* test(core): add test for --freeze-right with long ellipsis
2025-11-20 09:09:36 +09:00
Junegunn Choi
60b35e748b
Header and footer should not be wider than the list
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
Example:
WIDE=$(printf 'x%.0s' {1..1000})
(echo $WIDE; echo $WIDE) |
fzf --header-lines 1 --style full --ellipsis XX --header "$WIDE" \
--no-header-lines-border --footer "$WIDE" --no-footer-border
2025-11-15 11:41:51 +09:00
Junegunn Choi
1df99db0b2
Keep the previous delimiter before frozen columns
2025-11-13 22:38:49 +09:00
Junegunn Choi
b9f2bf64ff
Add --freeze-right=N option to keep the rightmost N fields visible
2025-11-12 22:00:27 +09:00
Junegunn Choi
07d53cb7e4
Add --freeze-left=N option to keep the leftmost N fields visible
2025-11-12 22:00:27 +09:00
Junegunn Choi
d19ce0ad8d
Add 'best' action
2025-10-09 00:17:00 +09:00
Junegunn Choi
ed7becfb47
Go to the closest match when disabling raw mode
2025-10-09 00:17:00 +09:00
Junegunn Choi
9ace1351ff
ADD $FZF_DIRECTION
2025-10-09 00:17:00 +09:00
Junegunn Choi
8f0c91545d
Add $FZF_RAW for conditional actions
2025-10-09 00:17:00 +09:00
Junegunn Choi
c1f8d18a0c
Add enable-raw and disable-raw actions
2025-10-09 00:17:00 +09:00
Junegunn Choi
65df0abf0e
Introduce 'raw' mode
2025-10-09 00:17:00 +09:00
Junegunn Choi
febaadbee5
Fix stray character artifacts when scrollbar is hidden
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
Fix #4537
2025-10-04 21:56:56 +09:00
Junegunn Choi
ca294109c3
Apply RuboCop suggestions
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-09-22 21:23:54 +09:00
Junegunn Choi
a67aa85820
Style change: thinner gutter column ( #4521 )
2025-09-16 21:22:56 +09:00
Massimo Mund
ae12e94b1f
Add sub-word actions ( #3997 )
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
Add `backward-subword`, `forward-subword`, `kill-subword`, `backward-kill-subword` actions.
2025-09-05 19:38:22 +09:00
Junegunn Choi
1afd143810
Fix incorrect truncation of --info-command with --info=inline-right
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
Fix #4479
2025-08-08 18:51:24 +09:00
Junegunn Choi
af0014aba8
Fix a bug where you cannot unset the default --nth using change-nth
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-08-03 00:29:05 +09:00
Junegunn Choi
4efcc344c3
Add 'trigger(KEY_OR_EVENT[,...])' action
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-07-23 19:41:06 +09:00
Junegunn Choi
08027e7a79
Fix --no-header-lines-border behavior
...
It should be different from --header-lines-border=none according to the
man page. It should merge two headers unlike the latter.
2025-07-22 19:16:55 +09:00
Junegunn Choi
ead302981c
Add support for {*n} and {*nf} placeholder
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Close #4458
2025-07-20 10:53:58 +09:00
Junegunn Choi
82c9671f79
Fix selection lost on revision bump
2025-07-06 22:02:12 +09:00
Junegunn Choi
d364a1122e
Fix regression where header is not updated
2025-07-06 20:24:23 +09:00
Junegunn Choi
6e3c830cd2
Add 'multi' event triggered on multi-selection changes
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-07-06 10:05:25 +09:00
Junegunn Choi
d34675d3c9
Fix panic caused by incorrect update ordering
...
Fix #4442
Make sure to prepare windows before rendering elements.
Thanks to @nugged for the report.
2025-07-02 21:28:11 +09:00
Junegunn Choi
79690724d8
Fix exact boundary match with --scheme=path or --tiebreak end
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Fix #4438
2025-06-26 22:33:58 +09:00
Junegunn Choi
c36ddce36f
Add bg-cancel action to ignore running background transforms
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Close #4430
Example:
# 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 ignore 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)'
2025-06-21 17:28:48 +09:00
Junegunn Choi
dcec6354f5
Add {*} placeholder flag
2025-06-19 22:35:23 +09:00
Junegunn Choi
16d338da84
Revert "Add {*} placeholder flag"
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
This reverts commit 27258f7207 .
2025-06-19 12:39:31 +09:00
Junegunn Choi
27258f7207
Add {*} placeholder flag
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-06-19 01:04:59 +09:00
Junegunn Choi
0c00b203e6
Implement asynchronous transform actions ( #4419 )
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Close #4418
Example:
fzf --bind 'focus:bg-transform-header(sleep 2; date; echo {})'
2025-06-16 00:39:11 +09:00
Junegunn Choi
3b68dcdd81
Add footer
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
Options:
--footer=STR String to print as footer
--footer-border[=STYLE] Draw border around the footer section
[rounded|sharp|bold|block|thinblock|double|horizontal|vertical|
top|bottom|left|right|line|none] (default: line)
--footer-label=LABEL Label to print on the footer border
--footer-label-pos=COL Position of the footer label
[POSITIVE_INTEGER: columns from left|
NEGATIVE_INTEGER: columns from right][:bottom]
(default: 0 or center)
The default border type for footer is 'line', which draws a single
separator between the footer and the list. It changes its position
depending on `--layout`, so you don't have to manually switch between
'top' and 'bottom'
The 'line' style is now supported by other border types as well.
`--list-border` is the only exception.
2025-06-10 23:02:23 +09:00
Junegunn Choi
39db026161
Fix inconsistent placement of header-lines with border options
...
fzf displayed --header-lines inconsistently depending on the presence of borders:
# --header and --header-lines co-located
seq 10 | fzf --header-lines 3 --header "$(seq 101 103)" --header-first
# --header and --header-lines separated
seq 10 | fzf --header-lines 3 --header "$(seq 101 103)" --header-first --header-lines-border
This commit fixes the inconsistency with the following logic:
* If only one of --header or --header-lines is provided, --header-first
applies to that single header.
* If both are present, --header-first affects only the regular --header,
not --header-lines.
2025-06-10 23:02:23 +09:00
Koichi Murase
70eace5290
Fix the CI failure for PR caused by a spelling mistake ( #4406 )
2025-06-03 19:41:47 +09:00
Junegunn Choi
b27943423e
Show ellipsis for truncated labels
...
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Close #4390
2025-05-17 11:25:15 +09:00
Junegunn Choi
894a1016bc
RuboCop lint
2025-05-17 11:20:29 +09:00
RafaelDominiquini
06ae9b0f3b
Add missing environment variables ( #4356 )
...
Co-authored-by: Rafael Baboni Dominiquini <rafaeldominiquini@gmail.com >
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com >
2025-04-22 20:51:43 +09:00
phanium
66df24040f
Fix panic when use header border without pointer/marker ( #4345 )
CodeQL / Analyze (go) (push) Has been cancelled
Test fzf on Linux / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-04-13 20:24:29 +09:00
Junegunn Choi
0edb5d5ebb
Fix trailing ␊ not rendered with '--read0 --no-multi-line'
...
CodeQL / Analyze (go) (push) Has been cancelled
Test fzf on Linux / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
https://github.com/junegunn/fzf/pull/4334#issue-2966013714
# Should display foo␊
echo -en "foo\n" | fzf --read0 --no-multi-line
2025-04-11 20:46:49 +09:00
Junegunn Choi
ba6d1b8772
Add change-ghost and transform-ghost
CodeQL / Analyze (go) (push) Has been cancelled
Test fzf on Linux / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
Generate Sponsors README / deploy (push) Has been cancelled
2025-03-28 23:35:20 +09:00
Junegunn Choi
0dce561ec9
Fix header window not updated on change-header
2025-03-28 23:23:43 +09:00
Junegunn Choi
664ee1f483
Add change-pointer and transform-pointer
...
Close #4178
2025-03-28 21:28:25 +09:00
Junegunn Choi
998c57442b
Fix query precedence in an action chain ( #4326 )
...
When 'search' and any action that modifies the query are in an action
chain, anything that comes later takes precedence.
2025-03-26 15:47:43 +09:00
Junegunn Choi
4a0ab6c926
Improve query modification prevention in input-less mode
...
fzf would restore the original query in input-less mode after executing
a chain of actions.
This commit changes the behavior so that the restoration
happens after each action to allow something like
'show-input+change-query(...)+hide-input'.
Fix #4326
2025-03-26 10:34:52 +09:00
Junegunn Choi
f43e82f17f
Do not ignore current query when input is hidden
...
CodeQL / Analyze (go) (push) Has been cancelled
Test fzf on Linux / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
* The initial query given by --query should be respected
* The current query should still be respected after `hide-input`
(or `toggle-input)
Fix #4327
2025-03-25 21:08:06 +09:00
Junegunn Choi
82fd88339b
Fix offset-middle not updating the list
CodeQL / Analyze (go) (push) Has been cancelled
Test fzf on Linux / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2025-03-23 11:13:21 +09:00
Junegunn Choi
87f7f436e8
Fix ghost text with inline info
...
CodeQL / Analyze (go) (push) Waiting to run
Test fzf on Linux / build (push) Waiting to run
Test fzf on macOS / build (push) Waiting to run
Fix #4312
2025-03-15 18:42:08 +09:00
Junegunn Choi
4298c0b1eb
Add --ghost=TEXT to display a ghost text when the input is empty
CodeQL / Analyze (go) (push) Waiting to run
Test fzf on Linux / build (push) Waiting to run
Test fzf on macOS / build (push) Waiting to run
2025-03-14 16:46:23 +09:00