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
Junegunn Choi
710ebdf9c1
Make --accept-nth compatible with --select-1
...
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 #4287
2025-02-26 00:25:23 +09:00
bitraid
bb64d84ce4
[fish] Enable multiple history commands insertion ( #4280 )
...
Enable inserting multiple history commands. To disable, set `--no-multi`
through `$FZF_CTRL_R_OPTS`.
Also, remove the usage of `become` action, to avoid leaving behind
temporary files.
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com >
2025-02-26 00:18:56 +09:00
Junegunn Choi
461115afde
Add support for {n} in --with-nth and --accept-nth templates
...
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
Close #4275
2025-02-23 19:47:56 +09:00
Junegunn Choi
d79902ae59
Fix 'jump' when pointer is empty
...
Fix #4270
2025-02-22 19:05:30 +09:00
phanium
77568e114f
Don't trim last field when delimiter is regex ( #4266 )
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-02-21 22:21:55 +09:00
Junegunn Choi
6fa8295ac5
walker: Append path separator to directories
...
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
Close #4255
2025-02-18 22:03:59 +09:00
Junegunn Choi
f975b40236
Fix {q} in preview window affected by 'search' 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
2025-02-18 10:08:47 +09:00
Junegunn Choi
9abf2c8c9c
Allow suffix match on --nth with custom --delimiter
...
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
When --nth is used with a custom --delimiter, the last delimiter was
included in the search scope, forcing you to write the delimiter in
a suffix-match query. This commit removes the last delimiter from the
search scope.
# No need to write 'bar,$'
echo foo,bar,baz | fzf --delimiter , --nth 2 --filter 'bar$'
This can be seen as a breaking change, but I'm gonna say it's a bug fix.
Fix #3983
2025-02-12 20:53:32 +09:00
Junegunn Choi
84e2262ad6
Make --accept-nth and --with-nth support templates
2025-02-12 20:15:04 +09:00
Junegunn Choi
19ef8891e3
Print --wrap-sign in preview window
...
Close #4233
2025-02-11 00:01:50 +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
1be1991299
Add exclude-current action
...
https://github.com/junegunn/fzf/pull/4231#issuecomment-2646063208
2025-02-09 13:37:22 +09:00
Junegunn Choi
67dd7e1923
Add 'exclude' action for excluding current/selected items from the result ( #4231 )
...
Close #4185
2025-02-09 13:22:33 +09:00
Junegunn Choi
2b584586ed
Add --accept-nth option to transform the output
...
This option can be used to replace a sed or awk in the post-processing step.
ps -ef | fzf --multi --header-lines 1 | awk '{print $2}'
ps -ef | fzf --multi --header-lines 1 --accept-nth 2
This may not be a very "Unix-y" thing to do, so I've always felt that fzf
shouldn't have such an option, but I've finally changed my mind because:
* fzf can be configured with a custom delimiter that is a fixed string
or a regular expression.
* In such cases, you'd need to repeat the delimiter again in the
post-processing step.
* Also, tools like awk or sed may interpret a regular expression
differently, causing mismatches.
You can still use sed, cut, or awk if you prefer.
Close #3987
Close #1323
2025-02-09 11:53:35 +09:00
Junegunn Choi
818d0be436
Fix change-header-label+change-header
...
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 #4227
2025-02-07 20:57:09 +09:00
Junegunn Choi
c1470a51b8
Update Dockerfile
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-02-02 23:10:53 +09:00
Junegunn Choi
6ee31d5dc5
Fix failing test case
2025-02-02 17:46:14 +09:00
Junegunn Choi
65d74387e7
Stop processing more actions after a terminal action (accept, abort, etc.)
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-02-02 16:28:32 +09:00
Junegunn Choi
b7795a3dea
Fix RuboCop errors
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
2025-02-02 02:48:04 +09:00
Junegunn Choi
0c61223884
Fix tcell renderer's pause and resume
2025-02-02 02:23:48 +09:00
Junegunn Choi
32234be7a2
FZF_KEY enhancements
...
* 'enter' instead of 'ctrl-m'
* 'space' instead of ' '
2025-02-02 02:23:47 +09:00
Junegunn Choi
178b49832e
Fix {show,hide,toggle}-input and add test cases
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-02-01 17:23:22 +09:00
Junegunn Choi
18cbb4a84d
Display header lines at the top in 'reverse-list' layout
2025-02-01 17:03:59 +09:00
Junegunn Choi
e1e171a3c4
Add toggle-bind
2025-02-01 17:03:59 +09:00
Junegunn Choi
d075c00015
Fix --layout reverse-list --no-input
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-02-01 09:28:02 +09:00
Junegunn Choi
6c0ca4a64a
Add --no-input to hide the input section ( #4210 )
...
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
Close #2890
Close #1396
You can't type in queries in this mode, and the only way to trigger an
fzf search is to use `search(...)` action.
# Click header to trigger search
fzf --header '[src] [test]' --no-input --layout reverse \
--header-border bottom --input-border \
--bind 'click-header:transform-search:echo ${FZF_CLICK_HEADER_WORD:1:-1}'
2025-01-30 00:50:46 +09:00
Junegunn Choi
eb0257d48f
Enhance --min-height option to take number followed by +
2025-01-28 18:34:12 +09:00
Junegunn Choi
af7940746f
Fix test case
2025-01-27 18:12:25 +09:00
Junegunn Choi
a2aa1a156c
Allow {q} placeholders with range expressions
...
e.g. {q:1}, {q:2..}
2025-01-27 18:04:57 +09:00
Junegunn Choi
2f8a72a42a
More match_count fixes
2025-01-27 15:22:39 +09:00
Junegunn Choi
8179ca5eaa
Fix edge cases in --bind where ',' or ':' are chained ( #4206 )
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-01-27 09:30:53 +09:00
Junegunn Choi
4b74f882c7
[test] Prefer match_count over item_count
...
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
match_count can lag behind item_count and can cause intermittent failures.
2025-01-27 02:08:52 +09:00
Junegunn Choi
80da0776f8
Allow actions to multiple keys and events at once
...
Close #4206
2025-01-27 01:46:21 +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
0237bf09bf
Split integration test file ( #4205 )
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-01-25 19:57:40 +09:00
Junegunn Choi
fb885652cc
Fix RuboCop errors
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-01-23 09:43:12 +09:00
Junegunn Choi
afc2f05e5e
Fix --info-command when focus event is bound
...
Fix #4198
2025-01-23 09:31:51 +09:00
Junegunn Choi
06547d0cbe
Add --header-lines-border to separate two headers
...
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
Examples:
# Border only around the header from --header-lines
seq 10 | fzf --header 'hello' --header-lines 2 --header-lines-border
# Both headers with borders
seq 10 | fzf --header 'hello' --header-lines 2 --header-border --header-lines-border
# Use 'none' to still separate two headers but without a border
seq 10 | fzf --header 'hello' --header-lines 2 --header-border --header-lines-border none --list-border
2025-01-23 01:39:57 +09:00
Junegunn Choi
0d5aebb806
Allow setting border styles at once with --style full:STYLE
2025-01-17 13:12:51 +09:00
Junegunn Choi
b712f2bb6a
Export the current nth value as $FZF_NTH
2025-01-16 09:23:25 +09:00
Junegunn Choi
9d6637c1b3
Add gap line
...
Close #4182
2025-01-15 22:23:52 +09:00
Junegunn Choi
ba0935c71f
Fix change-nth
...
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
* Proper clean-up of caches
* Force rerender list after the action
2025-01-13 12:45:01 +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
6f943112a9
Align header with the list
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-01-12 14:58:55 +09:00