Junegunn Choi
0c61d81713
Add toggle-track action
2 years ago
Junegunn Choi
7c6f5dba63
Fixed --track when used with --tac
...
Fix #3234
2 years ago
Junegunn Choi
96670d5f16
Disallow using --track with --tac
...
Close #3234
2 years ago
Junegunn Choi
8ec917b1c3
Add 'one' event
...
Close #2629
Close #2494
Close #459
2 years ago
Junegunn Choi
1c7534f009
Add --track option to track the current selection
...
Close #3186
Related #1890
2 years ago
Junegunn Choi
d7daf5f724
Render CR and LF as ␍ and ␊
...
Close #2529
2 years ago
Junegunn Choi
fcd7e8768d
Omit port number in `--listen` for automatic port assignment
...
Close #3200
2 years ago
Junegunn Choi
352ea07226
0.38.0
2 years ago
Junegunn Choi
27018787af
Describe become(...) action and use it to simplify examples
2 years ago
Junegunn Choi
6ea38b4438
Add become(...) action that replaces current fzf process
...
Close #3159
2 years ago
Junegunn Choi
aa2b9ec476
Add 'show-preview' and 'hide-preview'
...
For cases where 'toggle-preview' is not enough
2 years ago
Junegunn Choi
fccab60a5c
`--preview-window 0,hidden` should not execute the preview command
...
Until `toggle-preview` action is triggered
Fix #3149
2 years ago
Junegunn Choi
2023012408
0.37.0
2 years ago
Junegunn Choi
618d317803
Support custom separator of inline info
...
Close #2030
Close #3084
2 years ago
Junegunn Choi
284d77fe2e
Add 'focus' event
...
Can we find a better name? I have considered the followings.
* 'point', because "the pointer" points to the current item.
* 'shift', 'switch', 'move', etc. These are not technically correct
because the current item can change without cursor movement (--tac,
reload, search update)
* 'change' is already taken. 'change-current' feels a bit wordy and
sounds wrong, 'current-changed' is wordy and doesn't go well with the
other event names
* 'target', not straightforward
Close #3053
2 years ago
Junegunn Choi
d51980a3f5
Add 'transform-border-label' and 'transform-preview-label'
2 years ago
Junegunn Choi
b077f6821d
Action argument in enclosed form should allow new lines
...
Close #3138
2 years ago
Junegunn Choi
b46e40e86b
[vim] Automatically set RUNEWIDTH_EASTASIAN=1 when &ambiwidth == double
2 years ago
Junegunn Choi
0c5956c43c
Better support for Windows terminals
...
* Default border style on Windows is changed to `sharp` because some
Windows terminals are not capable of displaying `rounded` border
characters correctly.
* If your terminal emulator renders each box-drawing character with
2 columns, set `RUNEWIDTH_EASTASIAN` environment variable to `1`.
2 years ago
Junegunn Choi
e97e925efb
Resume preview following if the user scrolls the window to the bottom
2 years ago
Junegunn Choi
3b2244077d
Add scrollbar to the preview window
2 years ago
Junegunn Choi
435d8fa0a2
Colors for 'separator' and 'scrollbar' will default to that for 'border'
2 years ago
Junegunn Choi
5cd6f1d064
Add scrollbar
...
Close #3096
2 years ago
Junegunn Choi
62c7f59b94
Add transform-prompt(...) action
2 years ago
Junegunn Choi
e97176b1d7
Update transform-query examples for zsh
...
Close #3107
2 years ago
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
2 years ago
Junegunn Choi
6c37177cf5
Add reload-sync action
...
Close #2816
2 years ago
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
2 years ago
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} {}')
2 years ago
Junegunn Choi
4b3f0b9f08
Allow put action with an argument i.e. put(...)
2 years ago
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
2 years ago
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.
2 years ago
Junegunn Choi
750b2a6313
Add GET endpoints for getting the state of the finder
...
* GET / (or GET /current)
* GET /query
2 years ago
Junegunn Choi
1ba7484d60
Add --listen=HTTP_PORT option to receive actions
...
Supersedes #2019
See also:
* #1728
* https://github.com/junegunn/fzf.vim/pull/1044
2 years ago
Junegunn Choi
51c518da1e
Add change-query(...) action
2 years ago
Junegunn Choi
18e3b38c69
Add 'next-selected' and 'prev-selected' actions
...
Close #2749
2 years ago
Junegunn Choi
3d2376ab52
Add color name 'preview-label' ( #3053 )
2 years ago
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
2 years ago
Junegunn Choi
8f4c89f50e
Make 'double-click' behave the same as 'enter' by default
...
Close #3061
2 years ago
Junegunn Choi
a38b63be18
Fix mouse event above fzf finder
...
Fix #2949
2 years ago
Junegunn Choi
1bebd6f4f5
Fix panic on inverse match query with `--tiebreak=chunk`
...
Fix #3055
2 years ago
Junegunn Choi
8868d7d188
Add --separator to customize the info separator
2 years ago
Junegunn Choi
01ae621f11
Add --border=[bold|double] and --preview-window=border-[bold|double]
2 years ago
Junegunn Choi
a29944660e
Fix typo in CHANGELOG
2 years ago
Junegunn Choi
c09ec8e4d1
Allow putting border label on the bottom line
...
Related #3022
2 years ago
Junegunn Choi
31bbaad06e
Add --preview-label and --preview-label-pos
...
Close #3022
2 years ago
Junegunn Choi
b9ca1fe830
Add horizontal separator after info panel (counter)
...
Close #3029
2 years ago
Junegunn Choi
e61585f2f3
Add --border-label and --border-label-pos
...
Close #3022
2 years ago
Junegunn Choi
168829b555
Add 'start' event that is triggered once when fzf finder starts
...
Close #1622
2 years ago
Junegunn Choi
78ad6d2d88
Phase out --no-clear in favor of bindable 'reload' action
2 years ago
Junegunn Choi
22cbd9fa58
Implement height range (--height ~[VALUE][%])
...
Close #2953
2 years ago
Abirdcfly
54d42e3f40
Fix typo in CHANGELOG ( #2948 )
2 years ago
Junegunn Choi
6fb41a202a
Add --scheme=[default|path|history] option to choose scoring scheme
...
Close #2909
Close #2930
2 years ago
Emil Vanherp
4bef330ce1
Add support for ANSI strike-through ( #2932 )
...
Close #2932
Co-authored-by: Emil Vanherp <emil@vanherp.me>
2 years ago
Junegunn Choi
c1c355160d
Support border-{up,down} as the synonyms for border-{top,bottom}
2 years ago
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
2 years ago
Junegunn Choi
19f9bbca0d
Allow specifying fzf options in $FZF_TMUX_OPTS without '--'
2 years ago
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>
2 years ago
Junegunn Choi
38259d0382
Fix incorrect ordering of `--tiebreak=chunk`
2 years ago
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.
2 years ago
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
2 years ago
Junegunn Choi
ecc418ba77
0.31.0
2 years ago
Junegunn Choi
7a7cfcacbe
Lift unicode.IsGraphic constraint for pointer, marker, and ellipsis
...
Use at your own risk.
Close #2709
Close #2055
2 years ago
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
2 years ago
Junegunn Choi
82b46726fc
Add support for an alternative preview window layout
...
Close #2804
Close #2844
Related #2277
2 years ago
Junegunn Choi
70529878e2
Use SGR mouse mode for larger terminals
...
Fix #2840
2 years ago
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
3 years ago
Junegunn Choi
d56f605b63
Add `rebind` action for restoring bindings after `unbind`
...
Fix #2752
Close #2564
3 years ago
Junegunn Choi
5209e95bc7
Make preview updated when reload and change-query are combined
...
Fix #2744
3 years ago
Junegunn Choi
ef67a45702
Add --ellipsis=.. option
...
Close #2432
Also see
- #1769
- https://github.com/junegunn/fzf/pull/1844#issuecomment-586663660
3 years ago
Junegunn Choi
dc975e8974
0.29.0
3 years ago
Junegunn Choi
cd23401411
Fix rendering of the prompt line when overflow occurs with `--info=inline`
...
Fix #2692
3 years ago
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
3 years ago
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
3 years ago
Junegunn Choi
7bff4661f6
Add --header-first option to display header before prompt line
...
Close #2422
3 years ago
Junegunn Choi
ffd8bef808
Update CHANGELOG
3 years ago
Junegunn Choi
4138333f5c
0.27.3
3 years ago
Junegunn Choi
0f02fc0c77
Reset {n} after reload
...
Fix #2611
3 years ago
a1346054
3c804bcfec
fix spelling
3 years ago
Junegunn Choi
7191ebb615
Do not show preview window by default if `--preview` is empty
...
Close #2516
3 years ago
Junegunn Choi
8255aa23f4
Fix bug where `--read0` not properly displaying long lines
...
Fix #2508
3 years ago
Junegunn Choi
a4bc08f5a3
Allow specifying 16 base ANSI colors by their names
...
Close #2502
3 years ago
Junegunn Choi
347c4b2625
Add 'unbind' action
...
Fix #2486
3 years ago
Junegunn Choi
19759ed36e
0.27.0
4 years ago
Junegunn Choi
c440418ce6
Sign and notarize macOS binaries
...
Close #2408
4 years ago
Junegunn Choi
15f4cfb6d9
More border optins for preview window
...
Close #2431
4 years ago
Junegunn Choi
1b08f43f82
Advanced preview scroll offset expression to better support fixed header
4 years ago
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'
4 years ago
Junegunn Choi
c256442245
Fix typo
4 years ago
Junegunn Choi
76bbf57b3d
Add select and deselect actions
...
Close #2358
4 years ago
Junegunn Choi
6654239c94
0.25.1
4 years ago
Junegunn Choi
f55c990e86
Add `close` action
...
Close #2331
4 years ago
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
4 years ago
Junegunn Choi
151252e33a
Add preview-top and preview-bottom actions
4 years ago
Junegunn Choi
7f8e0dbc40
Extend support for alt key chords
...
"alt-" with any case-sensitive character is allowed
4 years ago
Junegunn Choi
0de7ab18f6
Add "last" action to move the cursor to the last match
...
This is the opposite of "first" (previously known as "top").
4 years ago
Junegunn Choi
257ddd028d
Update CHANGELOG
4 years ago
Junegunn Choi
2ec382ae0e
Add --preview-window follow option
4 years ago
Junegunn Choi
6d647e13ff
Add change-prompt action
...
Close #2270
4 years ago
Junegunn Choi
f6269f0193
Add --padding option
...
Close #2241
4 years ago
Junegunn Choi
1bcbc5a353
Fix regression where lines are skipped in the preview window
...
Fix #2239
4 years ago
Junegunn Choi
d4c9db0a27
0.24.1
4 years ago
Junegunn Choi
0d5f862daf
0.24.0
4 years ago
Junegunn Choi
552414978e
0.24.0-rc1
4 years ago
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
4 years ago
Junegunn Choi
874f7dd416
Update --color example in CHANGELOG
...
New color name: input
4 years ago
Junegunn Choi
8b0e3b1624
Update --color docs
4 years ago
Junegunn Choi
11841f688b
Add support for text styling using --color
...
Close #1663
4 years ago
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'
4 years ago
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}'
4 years ago
Junegunn Choi
fc7630a66d
0.23.1
4 years ago
Junegunn Choi
3248153d9f
Add --preview-window=default for resetting the options
4 years ago
Junegunn Choi
865144850d
Add nowrap, nocycle, nohidden for --preview-window
...
Close #2203
4 years ago
Junegunn Choi
d9752a4c21
Reset preview window flags that are not style-related
...
Fix #2203
4 years ago
Junegunn Choi
dba14d2630
0.23.0
4 years ago
Junegunn Choi
3cc8a74a91
Add --preview-window option for cyclic scrolling
...
Close #2182
4 years ago
Tinmarino
c0aa5a438f
Add preview-half-page-down and preview-half-page-up ( #2145 )
4 years ago
Junegunn Choi
e0f0b5bcf9
Update CHANGELOG
4 years ago
Junegunn Choi
9dc4b40d7a
Add more preview window options and reduce vertical padding on noborder
...
Fix #2138
Fix #2029
4 years ago
Junegunn Choi
1cb19dbf65
Support preview scroll offset relative to window height
...
Related: https://github.com/junegunn/fzf.vim/issues/1092
4 years ago
Junegunn Choi
e2ae1b249c
0.22.0
4 years ago
Junegunn Choi
f092e4038f
Smart match of accented characters
...
Fix #1618
4 years ago
Junegunn Choi
0f9cb5590e
Add preview window option for setting the initial scroll offset
...
Close #1057
Close #2120
# Initial scroll offset is set to the line number of each line of
# git grep output *minus* 5 lines
git grep --line-number '' |
fzf --delimiter : --preview 'nl {1}' --preview-window +{2}-5
4 years ago
Junegunn Choi
8e027c445f
Support ANSI colors in --prompt string
...
Close #2086
4 years ago
Junegunn Choi
d1676776aa
Update CHANGELOG
4 years ago
Junegunn Choi
334a4fa159
0.21.1
5 years ago
Junegunn Choi
b0673c3563
0.21.0
5 years ago
Junegunn Choi
373c6d8d55
Add --keep-right option to keep the right end of the line visible
...
Close #1652
5 years ago
Junegunn Choi
50b7608f9d
Change custom fuzzy completion API
...
To make it easier to write more complex fzf options. Although this
does not break backward compatibility, users are encouraged to update
their code accordingly.
# Before
_fzf_complete "FZF_ARG1 FZF_ARG2..." "$@" < <(
# Print candidates
)
# After
_fzf_complete FZF_ARG1 FZF_ARG2... -- "$@" < <(
# Print candidates
)
5 years ago
Michael Kelley
7d5985baf9
Make height option work under Windows ( #1341 )
...
Separate Unix & Windows code into platform specific files for light renderer
5 years ago
Junegunn Choi
d9c6a0305b
Draft CHANGELOG for the upcoming release
5 years ago
Junegunn Choi
30577b0c17
0.20.0
5 years ago
Junegunn Choi
9fefe08b3f
Revert README as preview-{fg,bg} are only available on master
5 years ago
Junegunn Choi
684bfff713
Update README/CHANGELOG
5 years ago
Junegunn Choi
3db6b88d82
Add preview-fg and preview-bg for --color
...
Close #1776
5 years ago
Junegunn Choi
af1a5f130b
Add clear-query and clear-selection
...
Close #1787
Related #1364
5 years ago
Junegunn Choi
86e3994e87
Properly clear list when --header-lines not filled on reload
5 years ago
Junegunn Choi
394d8cfd18
Remove immediate flickering on reload action
5 years ago
Junegunn Choi
effbc258bb
Update CHANGELOG
5 years ago
Junegunn Choi
7238c8944d
Update CHANGELOG
5 years ago
Junegunn Choi
e24299239e
Add `--preview-window noborder` option to disable preview border
...
Close #1699
5 years ago
Junegunn Choi
d2fa470165
Add --info=STYLE [default|inline|hidden]
...
Close #1738
5 years ago
Junegunn Choi
168453da71
More key chords for --bind
...
Close #1752
5 years ago
Junegunn Choi
23a06d63ac
Update CHANGELOG and man pages
5 years ago
Junegunn Choi
ff951341c9
0.18.0
6 years ago
Junegunn Choi
b46227dcb6
0.17.5
6 years ago
Junegunn Choi
f0fe79dd3b
0.17.4
6 years ago
Junegunn Choi
390b49653b
0.17.3
7 years ago
Junegunn Choi
04aa2992e7
Revert "0.17.2"
...
This reverts commit 2f1edeff78
.
7 years ago
Junegunn Choi
2f1edeff78
0.17.2
7 years ago