Junegunn Choi
18e3b38c69
Add 'next-selected' and 'prev-selected' actions
...
Close #2749
2 years ago
Junegunn Choi
0ad30063ff
Rename previous-history to prev-history
...
previous-history is still supported for backward compatibility
2 years ago
Junegunn Choi
3d2376ab52
Add color name 'preview-label' ( #3053 )
2 years ago
Junegunn Choi
8f4c89f50e
Make 'double-click' behave the same as 'enter' by default
...
Close #3061
2 years ago
Junegunn Choi
2ba68d24f2
Do not erase info separator before redrawing it
2 years ago
Zhizhen He
2a54e3d770
Fix typos in the source code ( #3048 )
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
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
22cbd9fa58
Implement height range (--height ~[VALUE][%])
...
Close #2953
2 years ago
Junegunn Choi
f4fd53211a
Reformat comments adhere to gofmt
2 years ago
Junegunn Choi
821fc9feed
Fix failing test case
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
b089bb5e7b
Fix scrollability of the preview window in certain cases
...
Fix #2683
This commit fixes the cases where fzf incorrectly determines the
scrollability of the preview window when `--preview-window-wrap` is set.
Wrapping of the preview content happens during the rendering phase, so
it's currently not possible to know how many lines are actually needed
to display the content beforehand. So `preview-bottom` still may not
move to the very bottom with wrapping enabled.
2 years ago
Junegunn Choi
d56f605b63
Add `rebind` action for restoring bindings after `unbind`
...
Fix #2752
Close #2564
2 years ago
Junegunn Choi
f8b713f425
Remove redundant state update on reload
...
Related: 5209e95
2 years ago
Junegunn Choi
5209e95bc7
Make preview updated when reload and change-query are combined
...
Fix #2744
2 years ago
Junegunn Choi
ef67a45702
Add --ellipsis=.. option
...
Close #2432
Also see
- #1769
- https://github.com/junegunn/fzf/pull/1844#issuecomment-586663660
2 years ago
Junegunn Choi
cd23401411
Fix rendering of the prompt line when overflow occurs with `--info=inline`
...
Fix #2692
2 years ago
Junegunn Choi
ce9af687bc
Remove unused code
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
02cee2234d
Implement --scroll-off=LINES
...
Close #2533
3 years ago
Junegunn Choi
97ae8afb6f
Reload should update preview window
...
Fix #2644
3 years ago
Vlastimil Ovčáčík
61339a8ae2
Add more tests of placeholder flags and simplify its logic ( #2624 )
...
* [tests] Test fzf's placeholders and escaping on practical commands
This tests some reasonable commands in fzf's templates (for commands,
previews, rebinds etc.), how are those commands escaped (backslashes,
double quotes), and documents if the output is executable in cmd.exe.
Both on Unix and Windows.
* [tests] Add testing of placeholder parsing and matching
Adds tests and bit of docs for the curly brackets placeholders in fzf's
template strings. Also tests the "placeholder" regex.
* [tests] Add more test cases of replacing placeholders focused on flags
Replacing placeholders in templates is already tested, this adds tests
that focus more on the parameters of placeholders - e.g. flags, token
ranges.
There is at least one test for each flag, not all combinations are
tested though.
* [refactoring] Split OS-specific function quoteEntry() to corresponding source file
This is minor refactoring, and also the function's test was made
crossplatform.
* [refactoring] Simplify replacePlaceholder function
Should be equivalent to the original, but has simpler structure.
3 years ago
Junegunn Choi
50eb2e3855
Render spinner on info line during "reload"
...
Fix #2637
3 years ago
Junegunn Choi
7191ebb615
Do not show preview window by default if `--preview` is empty
...
Close #2516
3 years ago
Junegunn Choi
347c4b2625
Add 'unbind' action
...
Fix #2486
3 years ago
Junegunn Choi
3f75a8369f
Replace RuneWidth to StringWidth to handle grapheme clusters
...
Fix #2482
3 years ago
Junegunn Choi
3a2015ee26
Fix minimum preview window height
3 years ago
Junegunn Choi
15f4cfb6d9
More border optins for preview window
...
Close #2431
3 years ago
Junegunn Choi
8b36a4cb19
Speed up preview switching when doing partial rendering
...
Fix #2417
3 years ago
Junegunn Choi
764316a53d
Fix flaky test case: test_interrupt_execute
...
Try to avoid extraneous INT signal
3 years ago
Junegunn Choi
f84b3de24b
Automatically set /dev/tty as STDIN on execute action
...
https://github.com/junegunn/fzf/issues/1360#issuecomment-788178140
# Redirect /dev/tty to suppress "Vim: Warning: Input is not from a terminal"
ls | fzf --bind "enter:execute(vim {} < /dev/tty)"
# With this change, we can omit "< /dev/tty" part
ls | fzf --bind "enter:execute(vim {})"
3 years ago
Junegunn Choi
1b08f43f82
Advanced preview scroll offset expression to better support fixed header
3 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'
3 years ago
Junegunn Choi
7310370a31
Fix truncation of colored line when --preview-window wrap is set
...
Fix #2346
3 years ago
Junegunn Choi
8ae94f0059
Fix premature truncation of colored line when --preview-window wrap is set
...
Fix #2346
3 years ago
Junegunn Choi
8fccf20892
Fix incorrect tab character handling
...
Fix #2372
3 years ago
Junegunn Choi
b82c1693c0
Fix deadlocks
3 years ago
Junegunn Choi
019bfc4e35
Fix yet another deadlock
...
EventBox.Set should not be called while holding the terminal mutex
goroutine 1 [semacquire]:
sync.runtime_SemacquireMutex(0xc0001923bc, 0x1000001066200, 0x1)
/usr/local/Cellar/go/1.16/libexec/src/runtime/sema.go:71 +0x47
sync.(*Mutex).lockSlow(0xc0001923b8)
/usr/local/Cellar/go/1.16/libexec/src/sync/mutex.go:138 +0x105
sync.(*Mutex).Lock(...)
/usr/local/Cellar/go/1.16/libexec/src/sync/mutex.go:81
github.com/junegunn/fzf/src.(*Terminal).Input(0xc000192000, 0x0, 0x0, 0x0, 0x0)
/fzf/src/terminal.go:581 +0x145
github.com/junegunn/fzf/src.Run.func10(0xc00010c8a0, 0xc000092050, 0xa)
/fzf/src/core.go:245 +0x37
github.com/junegunn/fzf/src.Run.func11(0xc00011a4e0)
/fzf/src/core.go:295 +0x5ce
github.com/junegunn/fzf/src/util.(*EventBox).Wait(0xc00011a4e0, 0xc000127ec8)
/fzf/src/util/eventbox.go:34 +0x5e
github.com/junegunn/fzf/src.Run(0xc000180000, 0x11ac014, 0x6, 0x11ac158, 0x7)
/fzf/src/core.go:251 +0xdac
main.main()
/fzf/main.go:13 +0x5a
goroutine 11 [semacquire]:
sync.runtime_SemacquireMutex(0xc00012c31c, 0xc00010e800, 0x1)
/usr/local/Cellar/go/1.16/libexec/src/runtime/sema.go:71 +0x47
sync.(*Mutex).lockSlow(0xc00012c318)
/usr/local/Cellar/go/1.16/libexec/src/sync/mutex.go:138 +0x105
sync.(*Mutex).Lock(0xc00012c318)
/usr/local/Cellar/go/1.16/libexec/src/sync/mutex.go:81 +0x47
github.com/junegunn/fzf/src/util.(*EventBox).Set(0xc00011a4e0, 0x7, 0x114eb40, 0x1265460)
/fzf/src/util/eventbox.go:40 +0x3b
github.com/junegunn/fzf/src.(*Terminal).killPreview(0xc000192000, 0x0)
/fzf/src/terminal.go:1831 +0xa5
github.com/junegunn/fzf/src.(*Terminal).exit(0xc000192000, 0xc000106e58)
/fzf/src/terminal.go:1847 +0x75
github.com/junegunn/fzf/src.(*Terminal).Loop.func8.1(0xc00011a540)
/fzf/src/terminal.go:2148 +0x38f
github.com/junegunn/fzf/src/util.(*EventBox).Wait(0xc00011a540, 0xc000106f90)
/fzf/src/util/eventbox.go:34 +0x5e
github.com/junegunn/fzf/src.(*Terminal).Loop.func8(0xc000192000, 0xc00010a2c0)
/fzf/src/terminal.go:2077 +0xa5
created by github.com/junegunn/fzf/src.(*Terminal).Loop
/fzf/src/terminal.go:2072 +0x3e8
3 years ago
Junegunn Choi
f657169616
Fix deadlock on exit
3 years ago
Junegunn Choi
e2e8d94b14
Kill input command on terminate
...
Fix #2381
Close #2382
3 years ago
bitterfox
4f9a7f8c87
Don't exit fzf by SIGINT while executing command ( #2375 )
...
Fix #2374
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
3 years ago
Junegunn Choi
76bbf57b3d
Add select and deselect actions
...
Close #2358
3 years ago