Junegunn Choi
3cfee281b4
Add change-with-nth action to dynamically change --with-nth ( #4691 )
2026-03-01 16:09:54 +09:00
Junegunn Choi
dce248ac6d
Revert "Add GitHub action for labelling PRs"
...
This reverts commit 0ff13dcf .
2026-02-24 20:26:39 +09:00
Junegunn Choi
0ff13dcfbe
Add GitHub action for labelling PRs
2026-02-24 20:20:04 +09:00
Junegunn Choi
b9804f5873
Add change-header-lines action to dynamically change --header-lines
...
All input lines now enter the chunklist with sequential indices, and
header lines are excluded from matching via Pattern.startIndex and
PassMerger offset. This allows the number of header lines to be changed
at runtime with change-header-lines(N), transform-header-lines, and
bg-transform-header-lines actions.
- Remove EvtHeader event; header items are read directly from chunks
- Add startIndex to Pattern and PassMerger for skipping header items
- Add targetIndex field to Terminal for cursor repositioning across
header-lines changes
Close #4659
2026-02-23 01:48:03 +09:00
Junegunn Choi
69e9abdab4
Implement word wrapping in the list section
CodeQL / Analyze (go) (push) Has been cancelled
build / build (push) Has been cancelled
Test fzf on macOS / build (push) Has been cancelled
2026-02-18 15:20:56 +09:00
Junegunn Choi
b6411beaa1
Implement word wrapping in the preview window
...
Example:
fzf --preview 'bat --style=plain --color=always {}' \
--preview-window wrap-word \
--bind space:toggle-preview-wrap-word
Close https://github.com/junegunn/fzf/discussions/3383
2026-02-18 13:35:02 +09:00
Junegunn Choi
d19ce0ad8d
Add 'best' action
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
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
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
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
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
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
664ee1f483
Add change-pointer and transform-pointer
...
Close #4178
2025-03-28 21:28:25 +09:00
Junegunn Choi
29cf28d845
Suppress 'change' event during bracketed paste mode
...
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
Generate Sponsors README / deploy (push) Has been cancelled
Close #4316
2025-03-22 09:17:18 +09:00
Junegunn Choi
a2420026ab
Rename actions: exclude and exclude-multi
...
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
https://github.com/junegunn/fzf/pull/4231#issuecomment-2646067669
2025-02-09 13:52:20 +09:00
Junegunn Choi
e84afe196a
Add {show,hide,toggle}-input and expose $FZF_INPUT_STATE
2025-02-01 17:03:59 +09:00
Junegunn Choi
e1e171a3c4
Add toggle-bind
2025-02-01 17:03:59 +09:00
Junegunn Choi
d6584543e9
Make click-header export $FZF_CLICK_HEADER_{NTH,WORD}
2025-01-26 15:37:42 +09:00
Junegunn Choi
7220d8233e
Add 'search' and 'transform-search'
...
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
Generate Sponsors README / deploy (push) Has been cancelled
Close #4202
2025-01-26 01:50:08 +09:00
Junegunn Choi
d83eb2800a
Add change-nth action
...
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
Example:
# Start with --nth 1, then 2, then 3, then back to the default, 1
echo 'foo foobar foobarbaz' | fzf --bind 'space:change-nth(2|3|)' --nth 1 -q foo
Close #4172
Close #3109
2025-01-13 00:13:31 +09:00
Junegunn Choi
a5beb08ed7
Border around the header section
...
Close #4159
2025-01-05 23:02:52 +09:00
Junegunn Choi
ee3916be17
Border around the input section (prompt + info)
...
Close #4154
2025-01-02 16:25:00 +09:00
Junegunn Choi
9a2b7f559c
Add --list-border for additional border around the list section
...
Close #4148
2024-12-31 17:05:14 +09:00
Junegunn Choi
ca5e633399
Add toggle-hscroll
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
2024-12-19 21:05:26 +09:00
Junegunn Choi
e60a9a628b
Add toggle-multi-line action
2024-12-19 21:05:26 +09:00
Junegunn Choi
70bf8bc35d
Add --wrap option and 'toggle-wrap' action ( #3887 )
...
* `--wrap`
* `--wrap-sign`
* `toggle-wrap`
Close #3619
Close #2236
Close #577
Close #461
2024-06-25 17:08:47 +09:00
Junegunn Choi
e2401aca68
Add 'offset-middle' action
2024-06-17 18:34:10 +09:00
Junegunn Choi
b2ecb6352c
Make GET endpoint available from 'execute' and 'transform' actions
2024-06-14 21:33:42 +09:00
Junegunn Choi
a90426b7ca
Add print(...) action
2024-05-22 22:18:24 +09:00
Junegunn Choi
e8405f40fe
Refactor the code so that fzf can be used as a library ( #3769 )
2024-05-07 01:06:42 +09:00
Junegunn Choi
608232568b
Add 'change-multi' action
...
Close #3754
2024-04-27 17:38:06 +09:00
Junegunn Choi
8a74976c1f
Add track-current, untrack-current, and toggle-track-current ( #3699 )
...
Close #3691
2024-03-28 20:42:01 +09:00
Junegunn Choi
d210660ce8
Add actions: show-header and hide-header
2023-12-31 16:01:00 +09:00
Junegunn Choi
1707b8cdba
Add 'transform' action to conditionally perform a series of actions
...
'transform' action runs an external command that prints a series of
actions to perform.
# Disallow selecting an empty line
echo -e "1. Hello\n2. Goodbye\n\n3. Exit" |
fzf --reverse --header 'Select one' \
--bind 'enter:transform:[[ -n {} ]] && echo accept || echo "change-header:Invalid selection"'
# Move cursor past the empty line
echo -e "1. Hello\n2. Goodbye\n\n3. Exit" |
fzf --reverse --header 'Select one' \
--bind 'enter:transform:[[ -n {} ]] && echo accept || echo "change-header:Invalid selection"' \
--bind 'focus:transform:[[ -n {} ]] && exit; [[ {fzf:action} =~ up$ ]] && echo up || echo down'
Close #3368
Close #2980
2023-12-26 00:14:05 +09:00