Junegunn Choi
3b2244077d
Add scrollbar to the preview window
2023-01-06 15:36:12 +09:00
Junegunn Choi
435d8fa0a2
Colors for 'separator' and 'scrollbar' will default to that for 'border'
2023-01-01 19:01:56 +09:00
Junegunn Choi
5cd6f1d064
Add scrollbar
...
Close #3096
2023-01-01 14:48:14 +09:00
Junegunn Choi
62c7f59b94
Add transform-prompt(...) action
2022-12-31 09:27:11 +09:00
Junegunn Choi
e97176b1d7
Update transform-query examples for zsh
...
Close #3107
2022-12-30 17:12:55 +09:00
Junegunn Choi
d649f5d826
Always execute preview command if {q} is in the template
...
Even when {q} is empty. Because, why not?
While this can be seen as a breaking change, there is an easy workaround
to keep the old behavior.
# This will show // even when the query is empty
: | fzf --preview 'echo /{q}/'
# But if you don't want it,
: | fzf --preview '[ -n {q} ] || exit; echo /{q}/'
Close #2759
2022-12-30 14:29:17 +09:00
Junegunn Choi
6c37177cf5
Add reload-sync action
...
Close #2816
2022-12-29 20:04:33 +09:00
Junegunn Choi
14775aa975
Add 'load' event that is triggered when the input stream is complete
...
and the first search (with or without query) is complete
2022-12-29 20:01:50 +09:00
Junegunn Choi
36d2bb332b
Add transform-query(...) action
...
Test case authored by @SpicyLemon
Close #1930
Close #2465
Close #2559
Close #2509 (e.g. fzf --bind 'space:transform-query:printf %s%s {q} {}')
2022-12-28 00:05:31 +09:00
Junegunn Choi
4b3f0b9f08
Allow put action with an argument i.e. put(...)
2022-12-27 19:54:46 +09:00
Junegunn Choi
12af069dca
Add pos(...) action to move the cursor to the numeric position
...
# Put the cursor on the 10th item
seq 100 | fzf --sync --bind 'start:pos(10)'
# Put the cursor on the 10th to last item
seq 100 | fzf --sync --bind 'start:pos(-10)'
Close #3069
Close #395
2022-12-27 01:08:42 +09:00
Junegunn Choi
b7bb973118
Revert "Add GET endpoints for getting the state of the finder"
...
This reverts commit 750b2a6313
.
This can cause a deadlock if the endpoints are accessed in the core event
loop via execute action.
fzf --listen 6266 --bind 'space:execute:curl localhost:6266'
Technically, there's no reason to use the API because the information is
already available via `{}` and `{q}`, but I'd like to completely remove
the risk of misuse.
2022-12-25 20:00:00 +09:00
Junegunn Choi
750b2a6313
Add GET endpoints for getting the state of the finder
...
* GET / (or GET /current)
* GET /query
2022-12-25 16:27:02 +09:00
Junegunn Choi
1ba7484d60
Add --listen=HTTP_PORT option to receive actions
...
Supersedes #2019
See also:
* #1728
* https://github.com/junegunn/fzf.vim/pull/1044
2022-12-21 01:35:08 +09:00
Junegunn Choi
51c518da1e
Add change-query(...) action
2022-12-18 00:26:31 +09:00
Junegunn Choi
18e3b38c69
Add 'next-selected' and 'prev-selected' actions
...
Close #2749
2022-12-11 00:59:34 +09:00
Junegunn Choi
3d2376ab52
Add color name 'preview-label' ( #3053 )
2022-12-09 12:05:27 +09:00
Junegunn Choi
6b207bbf2b
Fix inconsistent bonus points in exact match
...
Exact match would assign a different bonus point to the first character
when non-default --scheme was used.
Fix #3073
2022-12-04 22:17:39 +09:00
Junegunn Choi
8f4c89f50e
Make 'double-click' behave the same as 'enter' by default
...
Close #3061
2022-11-29 20:27:29 +09:00
Junegunn Choi
a38b63be18
Fix mouse event above fzf finder
...
Fix #2949
2022-11-18 20:32:59 +09:00
Junegunn Choi
1bebd6f4f5
Fix panic on inverse match query with --tiebreak=chunk
...
Fix #3055
2022-11-18 20:16:43 +09:00
Junegunn Choi
8868d7d188
Add --separator to customize the info separator
2022-11-10 16:23:33 +09:00
Junegunn Choi
01ae621f11
Add --border=[bold|double] and --preview-window=border-[bold|double]
2022-11-06 14:38:31 +09:00
Junegunn Choi
a29944660e
Fix typo in CHANGELOG
2022-11-01 13:33:09 +09:00
Junegunn Choi
c09ec8e4d1
Allow putting border label on the bottom line
...
Related #3022
2022-11-01 13:30:40 +09:00
Junegunn Choi
31bbaad06e
Add --preview-label and --preview-label-pos
...
Close #3022
2022-11-01 13:27:22 +09:00
Junegunn Choi
b9ca1fe830
Add horizontal separator after info panel (counter)
...
Close #3029
2022-11-01 13:27:11 +09:00
Junegunn Choi
e61585f2f3
Add --border-label and --border-label-pos
...
Close #3022
2022-11-01 13:27:00 +09:00
Junegunn Choi
168829b555
Add 'start' event that is triggered once when fzf finder starts
...
Close #1622
2022-10-27 00:38:38 +09:00
Junegunn Choi
78ad6d2d88
Phase out --no-clear in favor of bindable 'reload' action
2022-09-28 23:22:31 +09:00
Junegunn Choi
22cbd9fa58
Implement height range (--height ~[VALUE][%])
...
Close #2953
2022-09-28 23:22:31 +09:00
Abirdcfly
54d42e3f40
Fix typo in CHANGELOG ( #2948 )
2022-08-30 13:28:01 +09:00
Junegunn Choi
6fb41a202a
Add --scheme=[default|path|history] option to choose scoring scheme
...
Close #2909
Close #2930
2022-08-28 22:22:39 +09:00
Emil Vanherp
4bef330ce1
Add support for ANSI strike-through ( #2932 )
...
Close #2932
Co-authored-by: Emil Vanherp <emil@vanherp.me>
2022-08-26 09:27:49 +09:00
Junegunn Choi
c1c355160d
Support border-{up,down} as the synonyms for border-{top,bottom}
2022-08-20 00:11:17 +09:00
Junegunn Choi
aa10dccf90
Support colon delimiter in ANSI escape sequences
...
# Both should work
printf "\e[38;5;208mOption 1\e[m\nOption 2" | fzf --ansi
printf "\e[38:5:208mOption 1\e[m\nOption 2" | fzf --ansi
This change makes ANSI parsing slightly slower.
cpu: Intel(R) Core(TM) i7-8850H CPU @ 2.60GHz
Before:
BenchmarkNextAnsiEscapeSequence-12 992.22 MB/s
BenchmarkExtractColor-12 174.35 MB/s
After:
BenchmarkNextAnsiEscapeSequence-12 925.05 MB/s
BenchmarkExtractColor-12 163.33 MB/s
Fix #2913
2022-08-13 22:30:50 +09:00
Junegunn Choi
19f9bbca0d
Allow specifying fzf options in $FZF_TMUX_OPTS without '--'
2022-08-08 23:50:47 +09:00
Yang Tian
d826f9e72f
[fzf-tmux] Use fzf border instead of tmux popup border ( #2908 )
...
Co-authored-by: Yang Tian <yang.tian@getcruise.com>
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
2022-08-07 10:28:45 +09:00
Junegunn Choi
38259d0382
Fix incorrect ordering of --tiebreak=chunk
2022-08-03 22:18:26 +09:00
Junegunn Choi
f0bfeba733
Add new tiebreak: 'chunk'
...
Favors the line with shorter matched chunk. A chunk is a set of
consecutive non-whitespace characters.
Unlike the default `length`, this new scheme works well with tabular input.
# length prefers item #1 , because the whole line is shorter,
# chunk prefers item #2 , because the matched chunk ("foo") is shorter
fzf --height=6 --header-lines=2 --tiebreak=chunk --reverse --query=fo << "EOF"
N | Field1 | Field2 | Field3
- | ------ | ------ | ------
1 | hello | foobar | baz
2 | world | foo | bazbaz
EOF
If the input does not contain any spaces, `chunk` is equivalent to
`length`. But we're not going to set it as the default because it is
computationally more expensive.
Close #2285
Close #2537
- Not the exact solution to --tiebreak=length not taking --nth into account,
but this should work. And the added benefit is that it works well even
when --nth is not provided.
- Adding a bonus point to the last character of a word didn't turn out great.
The order of the result suddenly changes when you type in the last
character in the word producing a jarring effect.
2022-08-02 21:48:19 +09:00
Junegunn Choi
c3a7a24eea
Tweak bonus points to word boundaries
...
Close https://github.com/junegunn/fzf.vim/issues/1004
# jobs/latency.js is favored over job_latency.js
printf 'job_latency.js\njobs/latency.js' | fzf -qlatency
2022-08-02 20:57:13 +09:00
Junegunn Choi
ecc418ba77
0.31.0
2022-07-21 23:04:57 +09:00
Junegunn Choi
7a7cfcacbe
Lift unicode.IsGraphic constraint for pointer, marker, and ellipsis
...
Use at your own risk.
Close #2709
Close #2055
2022-07-21 22:30:01 +09:00
Junegunn Choi
52594355bf
[shell] 'kill' completion will now require trigger sequence (**)
...
'kill **<tab>' instead of 'kill <tab>' just like any other completions.
Close #2716
Close #385
2022-07-21 22:21:11 +09:00
Junegunn Choi
82b46726fc
Add support for an alternative preview window layout
...
Close #2804
Close #2844
Related #2277
2022-07-20 12:08:54 +09:00
Junegunn Choi
70529878e2
Use SGR mouse mode for larger terminals
...
Fix #2840
2022-06-17 12:48:04 +09:00
Junegunn Choi
b3ab6311c5
Hide cursor while rendering the screen
...
Fix #2781
Fix #2588
Fix #1805
Fix https://github.com/junegunn/fzf.vim/issues/1370
Fix https://github.com/junegunn/fzf.vim/issues/1060
2022-04-04 22:06:16 +09:00
Junegunn Choi
d56f605b63
Add rebind
action for restoring bindings after unbind
...
Fix #2752
Close #2564
2022-04-04 21:54:22 +09:00
Junegunn Choi
5209e95bc7
Make preview updated when reload and change-query are combined
...
Fix #2744
2022-03-29 22:27:03 +09:00
Junegunn Choi
ef67a45702
Add --ellipsis=.. option
...
Close #2432
Also see
- #1769
- https://github.com/junegunn/fzf/pull/1844#issuecomment-586663660
2022-03-29 21:35:36 +09:00
Junegunn Choi
dc975e8974
0.29.0
2021-12-25 01:46:01 +09:00
Junegunn Choi
cd23401411
Fix rendering of the prompt line when overflow occurs with --info=inline
...
Fix #2692
2021-12-22 23:23:50 +09:00
Junegunn Choi
43f0d0cacd
change-preview-window to take multiple option sets separated by '|'
...
So you can "rotate" through the different options with a single binding.
fzf --preview 'cat {}' \
--bind 'ctrl-/:change-preview-window(70%|down,40%,border-horizontal|hidden|)'
Close #2376
2021-12-05 21:13:10 +09:00
Junegunn Choi
20b4e6953e
Implement change-preview and change-preview-window actions
...
The new actions are named with 'change-' prefix to differentiate from
the pre-existing, one-off 'preview(...)' action.
Fix #2360
Fix #2505
Fix #2666
Related #2435
Related #2376
- Can set up multiple bindings with different change-preview-window actions
- Not possible to "rotate" through the options with a single binding
- Enlarge or shrink not possible
2021-11-30 23:57:46 +09:00
Junegunn Choi
7bff4661f6
Add --header-first option to display header before prompt line
...
Close #2422
2021-11-03 21:19:22 +09:00
Junegunn Choi
ffd8bef808
Update CHANGELOG
2021-11-02 21:48:19 +09:00
Junegunn Choi
4138333f5c
0.27.3
2021-10-15 23:59:56 +09:00
Junegunn Choi
0f02fc0c77
Reset {n} after reload
...
Fix #2611
2021-09-14 20:36:10 +09:00
a1346054
3c804bcfec
fix spelling
2021-08-15 16:03:26 +09:00
Junegunn Choi
7191ebb615
Do not show preview window by default if --preview
is empty
...
Close #2516
2021-06-08 08:53:29 +09:00
Junegunn Choi
8255aa23f4
Fix bug where --read0
not properly displaying long lines
...
Fix #2508
2021-06-01 16:55:51 +09:00
Junegunn Choi
a4bc08f5a3
Allow specifying 16 base ANSI colors by their names
...
Close #2502
2021-05-26 19:35:26 +09:00
Junegunn Choi
347c4b2625
Add 'unbind' action
...
Fix #2486
2021-05-22 13:16:39 +09:00
Junegunn Choi
19759ed36e
0.27.0
2021-04-06 22:53:59 +09:00
Junegunn Choi
c440418ce6
Sign and notarize macOS binaries
...
Close #2408
2021-04-06 18:09:06 +09:00
Junegunn Choi
15f4cfb6d9
More border optins for preview window
...
Close #2431
2021-04-06 17:37:11 +09:00
Junegunn Choi
1b08f43f82
Advanced preview scroll offset expression to better support fixed header
2021-03-13 02:26:41 +09:00
Junegunn Choi
4c4c6e626e
Add support for preview window header
...
Fix #2373
# Display top 3 lines as the fixed header
fzf --preview 'bat --style=header,grid --color=always {}' --preview-window '~3'
2021-03-12 20:32:27 +09:00
Junegunn Choi
c256442245
Fix typo
2021-02-28 18:27:21 +09:00
Junegunn Choi
76bbf57b3d
Add select and deselect actions
...
Close #2358
2021-02-25 21:23:05 +09:00
Junegunn Choi
6654239c94
0.25.1
2021-02-03 22:32:52 +09:00
Junegunn Choi
f55c990e86
Add close
action
...
Close #2331
2021-02-02 00:11:05 +09:00
Junegunn Choi
d779ff7e6d
Make search toggleable
...
- `--phony` renamed to `--disabled` for consistency
- `--no-phony` is now `--enabled`
- Added `enable-search`, `disable-search`, and `toggle-search` actions
for `--bind`
- Added `--color` options: `query` and `disabled`
Close #2303
2021-01-03 00:15:00 +09:00
Junegunn Choi
151252e33a
Add preview-top and preview-bottom actions
2020-12-31 12:57:57 +09:00
Junegunn Choi
7f8e0dbc40
Extend support for alt key chords
...
"alt-" with any case-sensitive character is allowed
2020-12-30 18:39:17 +09:00
Junegunn Choi
0de7ab18f6
Add "last" action to move the cursor to the last match
...
This is the opposite of "first" (previously known as "top").
2020-12-30 18:39:17 +09:00
Junegunn Choi
257ddd028d
Update CHANGELOG
2020-12-07 19:35:48 +09:00
Junegunn Choi
2ec382ae0e
Add --preview-window follow option
2020-12-05 21:16:35 +09:00
Junegunn Choi
6d647e13ff
Add change-prompt action
...
Close #2270
2020-12-04 20:34:41 +09:00
Junegunn Choi
f6269f0193
Add --padding option
...
Close #2241
2020-11-09 20:37:17 +09:00
Junegunn Choi
1bcbc5a353
Fix regression where lines are skipped in the preview window
...
Fix #2239
2020-11-03 21:31:19 +09:00
Junegunn Choi
d4c9db0a27
0.24.1
2020-10-29 01:45:55 +09:00
Junegunn Choi
0d5f862daf
0.24.0
2020-10-27 23:57:18 +09:00
Junegunn Choi
552414978e
0.24.0-rc1
2020-10-27 11:07:27 +09:00
Junegunn Choi
2e8e63fb0b
Add more --border options
...
Instead of drawing the window border in Vim using an extra window,
extend the --border option so that we do can it natively.
Close #2223
Fix #2184
2020-10-26 22:51:22 +09:00
Junegunn Choi
874f7dd416
Update --color example in CHANGELOG
...
New color name: input
2020-10-26 00:22:06 +09:00
Junegunn Choi
8b0e3b1624
Update --color docs
2020-10-26 00:15:30 +09:00
Junegunn Choi
11841f688b
Add support for text styling using --color
...
Close #1663
2020-10-25 19:30:41 +09:00
Junegunn Choi
a4d9b0b468
Support ANSI escape sequence for clearing display in preview window
...
fzf --preview 'for i in $(seq 100000); do
(( i % 200 == 0 )) && printf "\033[2J"
echo "$i"
sleep 0.01
done'
2020-10-23 21:37:20 +09:00
Junegunn Choi
faf68dbc5c
Implement streaming preview window ( #2215 )
...
Fix #2212
# Will start rendering after 200ms, update every 100ms
fzf --preview 'for i in $(seq 100); do echo $i; sleep 0.01; done'
# Should print "Loading .." message after 500ms
fzf --preview 'sleep 1; for i in $(seq 100); do echo $i; sleep 0.01; done'
# The first line should appear after 200ms
fzf --preview 'date; sleep 2; date'
# Should not render before enough lines for the scroll offset are ready
rg --line-number --no-heading --color=always ^ |
fzf --delimiter : --ansi --preview-window '+{2}-/2' \
--preview 'sleep 1; bat --style=numbers --color=always --pager=never --highlight-line={2} {1}'
2020-10-18 17:03:33 +09:00
Junegunn Choi
fc7630a66d
0.23.1
2020-10-11 02:04:07 +09:00
Junegunn Choi
3248153d9f
Add --preview-window=default for resetting the options
2020-10-11 01:54:39 +09:00
Junegunn Choi
865144850d
Add nowrap, nocycle, nohidden for --preview-window
...
Close #2203
2020-10-09 21:56:16 +09:00
Junegunn Choi
d9752a4c21
Reset preview window flags that are not style-related
...
Fix #2203
2020-10-09 19:53:51 +09:00
Junegunn Choi
dba14d2630
0.23.0
2020-10-07 19:18:50 +09:00
Junegunn Choi
3cc8a74a91
Add --preview-window option for cyclic scrolling
...
Close #2182
2020-10-06 10:05:57 +09:00
Tinmarino
c0aa5a438f
Add preview-half-page-down and preview-half-page-up ( #2145 )
2020-10-05 21:58:56 +09:00
Junegunn Choi
e0f0b5bcf9
Update CHANGELOG
2020-09-09 00:06:53 +09:00
Junegunn Choi
9dc4b40d7a
Add more preview window options and reduce vertical padding on noborder
...
Fix #2138
Fix #2029
2020-08-23 17:05:45 +09:00
Junegunn Choi
1cb19dbf65
Support preview scroll offset relative to window height
...
Related: https://github.com/junegunn/fzf.vim/issues/1092
2020-08-23 15:57:49 +09:00