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
008fb9d258
Fix reload and reload-sync behaviors
...
https://github.com/junegunn/fzf/discussions/3696#discussioncomment-8915593
2024-03-27 17:25:56 +09:00
Junegunn Choi
db6db49ed6
Increase the buffer size for POST requests
...
Close #3685
2024-03-21 19:18:43 +09:00
Junegunn Choi
05453881c3
Set a 2-second timeout for POST requests
...
Close #3685
2024-03-21 19:18:38 +09:00
Junegunn Choi
c7ee071efa
Fix panic caused by invalid cursor index
...
Fix #3681
2024-03-17 15:55:16 +09:00
Junegunn Choi
8977c9257a
Limit the maximum number of focus events to process at once
2024-03-14 11:18:47 +09:00
Junegunn Choi
e74b1251c0
Embed shell integration scripts in fzf binary (--bash
/ --zsh
/ --fish
) ( #3675 )
...
This simplifies the distribution, and the users are less likely to have
problems caused by using incompatible scripts and binaries.
# Set up fzf key bindings and fuzzy completion
eval "$(fzf --bash)"
# Set up fzf key bindings and fuzzy completion
eval "$(fzf --zsh)"
# Set up fzf key bindings
fzf --fish | source
2024-03-13 23:59:34 +09:00
Junegunn Choi
d282a1649d
Add walker options and replace 'find' with the built-in walker ( #3649 )
2024-03-13 20:56:31 +09:00
Junegunn Choi
26244ad8c2
Fix preview area not being cleared when using certain types of border styles
...
fzf --preview 'sleep 3; date' --preview-window hidden \
--bind ctrl-/:change-preview-window:up,border-bottom
2024-03-09 14:14:42 +09:00
Junegunn Choi
fa0aa5510d
Kill preview process when hiding the preview window
...
via toggle-preview, hide-preview, or change-preview-window
2024-03-08 22:01:45 +09:00
Junegunn Choi
eec557b6aa
Fix invalid memory access when the preview window becomes hidden
2024-03-08 17:57:09 +09:00
onee-only
61bc129e1d
Update parseGetParams to call strconv.Atoi when params are valid
2024-03-05 11:03:56 +09:00
onee-only
52210a57f0
Update error return position according to convention
2024-03-05 11:03:56 +09:00
onee-only
8061a2f108
Remove duplicate code
2024-03-05 11:03:56 +09:00
Junegunn Choi
686f9288fc
Allow iTerm2 image data that ends with 'ESC \' ( #3646 )
2024-03-02 18:24:54 +09:00
Junegunn Choi
1833670fb9
Add $FZF_DEFAULT_OPTS_FILE ( #3618 )
...
For those who prefer to manage default options in a file.
If the file is not found, fzf will exit with an error.
We're not setting a default value for it because:
1. it's hard to find a default value that can be universally agreed upon
2. to avoid fzf having to check for the existence of the file even when it's not used
2024-02-29 09:49:33 +09:00
Junegunn Choi
99a7beba57
Fix missing bonus score on a delimiter character
...
Fix #3645
2024-02-22 23:19:11 +09:00
Junegunn Choi
ca747a2b54
Fix unit tests
2024-02-19 12:39:04 +09:00
Junegunn Choi
5e6788c679
Export FZF_* variables to 'reload' process as well
2024-02-19 12:36:14 +09:00
Junegunn Choi
7a72f1a253
Code cleanup: Remove unused argument
2024-02-15 17:11:30 +09:00
Junegunn Choi
208e556332
Replace "default find command" with built-in directory traversal
2024-02-15 16:55:43 +09:00
Junegunn Choi
3c0a630475
0.46.1
2024-02-01 18:13:00 +09:00
Junegunn Choi
413c66beba
Fix tests for tcell build
2024-02-01 16:25:53 +09:00
Junegunn Choi
1416e696b1
Avoid full redraw on 'preview' action when preview window exists
2024-02-01 15:50:48 +09:00
Junegunn Choi
d373cf89c7
Retain preview window on resize after 'preview' action
2024-02-01 15:46:42 +09:00
Junegunn Choi
76cf6559cc
junegunn/uniseg -> rivo/uniseg
...
https://github.com/rivo/uniseg/pull/47
2024-01-27 22:18:43 +09:00
Junegunn Choi
da752fc9a4
Fix Windows build
...
Fix #3598
2024-01-24 15:59:54 +09:00
Junegunn Choi
2a8b65e105
Fix highlighting of regions that are matched multiple times
...
Fix #3596
2024-01-23 12:19:32 +09:00
Junegunn Choi
7484292e63
Avoid deadlocks by adding a 2 second timeout to GET / endpoint
...
Because fzf processes HTTP GET requests in the main event loop,
accessing the endpoint from within execute/transform actions would
result in a deadlock and hang fzf indefinitely. This commit sets
a 2 second timeout to avoid the deadlock.
2024-01-21 23:04:37 +09:00
Junegunn Choi
687c2741b8
Add 'resize' event
...
Close #3570
2024-01-21 15:30:59 +09:00
Junegunn Choi
16f6473938
Change mattn/go-runewidth dependency to rivo/uniseg for accurate results
...
Related #3588 #3588 #3567
2024-01-21 02:54:41 +09:00
Junegunn Choi
8a2c41e183
Handle ambiguous emoji width
...
Fix #3588
2024-01-19 16:41:50 +09:00
Junegunn Choi
cdfaf761df
Expose state information via environment variables to child processes
...
Close #3582
2024-01-16 14:18:31 +09:00
Junegunn Choi
1a9ea6f738
Remove 'replace' directive for 'go install' compatibility
...
Close #3577
2024-01-14 17:12:24 +09:00
Junegunn Choi
250496c953
Add 'result' event that is triggered when the result list is ready
...
Close #3560
2024-01-07 17:46:21 +09:00
Junegunn Choi
e47dc758c9
Fix focus event not triggered in certain cases
2024-01-07 15:43:17 +09:00
Junegunn Choi
2024010119
0.45.0
2024-01-01 15:38:35 +09:00
Junegunn Choi
412040f77e
Enable preview if 'transform' action is bound to a key
2023-12-31 20:56:33 +09:00
Junegunn Choi
d210660ce8
Add actions: show-header and hide-header
2023-12-31 16:01:00 +09:00
Junegunn Choi
863a12562b
Trigger focus actions synchronously
2023-12-31 15:54:37 +09:00
Junegunn Choi
5d360180af
Add {fzf:prompt} placeholder expression
...
Close #3354
2023-12-28 17:10:06 +09:00
Junegunn Choi
519de7c833
Fix unexpected result of --tiebreak=end
...
See https://github.com/junegunn/fzf/issues/3255#issuecomment-1869580320
2023-12-26 23:42:14 +09:00
Junegunn Choi
97ccef1a04
{fzf:query} should trigger preview update
...
fzf --preview 'echo {fzf:query}'
fzf --preview 'echo {q}'
2023-12-26 16:51:41 +09:00
Junegunn Choi
cd114c6818
Change transform action to directly execute actions
...
To avoid filling up input channel for HTTP server
2023-12-26 10:15:53 +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
Junegunn Choi
41d4d70b98
Fix shell escaping for fish
...
Fix #3224
2023-12-25 17:35:44 +09:00
Junegunn Choi
0e999482cb
Fix handling of empty ANSI color sequence
...
Fix #3320
2023-12-25 17:05:54 +09:00
Junegunn Choi
d7b61ede07
Add support for negative --height
...
fzf --height=-1
Close #3487
2023-12-21 18:42:23 +09:00
Jan Verbeek
91387a741b
Terminate simple server success response with double CRLF ( #3542 )
...
The simple success case had only the status line plus a single CRLF,
and pedantic HTTP client implementations (`hyper`) stumbled over
this. A double CRLF makes it OK.
Fixes #3541 .
2023-12-16 15:15:00 +09:00
Junegunn Choi
c36a64be68
Add accept-or-print-query
...
Close #3528
2023-12-10 15:59:45 +09:00
Junegunn Choi
cd6788a2bb
Increase buffer size of event channel to avoid freeze on zero event
...
Fix #3516
2023-11-30 17:23:46 +09:00
Laurent Cheylus
952b6af445
Allow files creation in /tmp on OpenBSD ( #3512 )
...
- src/protector/protector_openbsd.go: add tmppath for pledge
permissions
- fix junegunn/fzf#3511
Signed-off-by: Laurent Cheylus <foxy@free.fr>
2023-11-21 16:03:12 +09:00
Junegunn Choi
29e67d307a
Fix crash when preview window is hidden on focus event
2023-11-17 19:13:37 +09:00
Junegunn Choi
7320b7df62
0.44.0
2023-11-12 22:08:08 +09:00
Tomáš Janoušek
11fb4233f7
Fix Home, End on rxvt-unicode ( #3507 )
2023-11-12 22:06:38 +09:00
Junegunn Choi
84bb350b14
Reset horizontal offset of the prompt on 'beginning-of-line'
...
https://github.com/junegunn/fzf/issues/3498#issuecomment-1806651174
2023-11-12 21:41:34 +09:00
Junegunn Choi
38e3694d1c
Revert "Sixel and Kitty image support on Windows binary ( #2544 )"
...
This reverts commit 68db9cb499
.
2023-11-10 13:16:11 +09:00
Junegunn Choi
230fc49ae2
(Experimental) Add support for iTerm2 inline image protocol
...
Close #1102
fzf --preview 'imgcat -W $FZF_PREVIEW_COLUMNS -H $FZF_PREVIEW_LINES {}'
Notes:
* There is no good way to determine the height of the rendered image,
so we assume that the image takes the full height of the preview
window. So the image cannot be displayed with the other text.
* fzf-preview.sh script was updated to use `imgcat` if it's available
but `chafa` is not.
* iTerm2 also supports Sixel, so adding support for this protocol is not
quite necessary but it renders animated GIFs much better (e.g. looping).
2023-11-07 11:51:21 +09:00
Junegunn Choi
a818653174
Add --listen-unsafe=ADDR to allow remote process execution ( #3498 )
2023-11-05 10:53:46 +09:00
Junegunn Choi
c5aa8729a1
Fix failing test case
2023-11-04 16:27:24 +09:00
Junegunn Choi
3f78d76da1
Allow accepting remote connections
...
Close #3498
# FZF_API_KEY is required for a non-localhost listen address
FZF_API_KEY=xxx fzf --listen 0.0.0.0:6266
2023-11-04 16:19:16 +09:00
Junegunn Choi
70c19ccf16
Fix CTRL-Z handling: Signal SIGSTOP to PGID
...
Fix #3501
2023-11-04 13:46:29 +09:00
Junegunn Choi
68db9cb499
Sixel and Kitty image support on Windows binary ( #2544 )
2023-11-03 00:09:02 +09:00
Junegunn Choi
d0466fa777
Fix regression where tcell renderer not clearing the preview window
2023-11-02 21:00:07 +09:00
Junegunn Choi
21ab64e962
sixel: Export $FZF_PREVIEW_TOP to the preview command ( #2544 )
...
So that it can determine if it should subtract 1 from $FZF_PREVIEW_LINES
to avoid scrolling issue of Sixel image that touches the bottom of the
screen.
2023-11-02 01:35:36 +09:00
Junegunn Choi
a0145cebf2
sixel: Better handling of animated GIFs ( #2544 )
2023-11-02 00:15:42 +09:00
Junegunn Choi
278dce9ba6
Restore scroll after rendering full-height Sixel image ( #2544 )
...
When a Sixel image touches the bottom of the screen, the whole screen
scrolls up one line to make room for the cursor. Add an ANSI escape
code to compensate for the movement. Unfortunately, the movement of the
screen is sometimes noticeable.
fzf --preview='fzf-preview.sh {}' --preview-window border-left
2023-10-31 23:38:01 +09:00
Junegunn Choi
9a95cd5794
Fix Sixel height calculation ( #2544 )
2023-10-29 23:34:33 +09:00
Junegunn Choi
96e31e4b78
Fix Sixel issues ( #2544 )
...
* Fix regression where previous image is not properly cleared
* Change the way fzf calculates the number of required lines to display
an image (ceil -> floor) to fix the issue where an image is always
rendered as a wireframe.
2023-10-27 14:36:14 +09:00
Junegunn Choi
242641264d
Clear previous non-Sixel text before rendering Sixel image ( #2544 )
2023-10-26 22:28:44 +09:00
Junegunn Choi
3277e8c89c
Remove $FZF_PREVIEW_PIXEL_{WIDTH,HEIGHT} ( #2544 )
...
They are not neccessary because we can use a program such as chafa that
can resize images by the terminal columns and lines.
2023-10-26 22:28:15 +09:00
Junegunn Choi
d02b9442a5
(Experimental) Improve Sixel graphics support ( #2544 )
...
Progress:
* Sixel image can now be displayed with other text, and is scrollable
* If an image can't be displayed entirely due to the scroll offset, fzf
will render a wireframe to indicate that an image should be displayed
* Renamed $FZF_PREVIEW_{WIDTH,HEIGHT} to $FZF_PREVIEW_PIXEL_{WIDTH,HEIGHT}
for clarity
* Added bin/fzf-preview.sh script to demonstrate how to display an image
using Kitty or Sixel protocol
An example:
ls *.jpg | fzf --preview='seq $((FZF_PREVIEW_LINES*9/10)); fzf-preview.sh {}; seq 100'
A known issue:
* If you reduce the size of the preview window, the image may extend
beyond the preview window
2023-10-26 00:49:16 +09:00
Junegunn Choi
bac385b59c
Simplify LightRenderer.Size()
2023-10-23 23:40:56 +09:00
Junegunn Choi
b1a0ab8086
Experimental Sixel support ( #2544 )
2023-10-23 01:05:30 +09:00
Junegunn Choi
f5e4ee90e4
Fix bug where top section of the previous preview content appearing
...
when the preview window is re-enabled and the current preview process is
taking more than 500ms and previewDelayed is triggered
fzf --preview 'sleep 1; date; seq 1000' --bind space:toggle-preview
2023-10-21 16:11:15 +09:00
Junegunn Choi
690d5e6dbd
Fix scrollability of the preview window when preview offset is specified
...
This should not be scrollable
fzf --preview 'seq $FZF_PREVIEW_LINES' --preview-window '~5'
2023-10-20 17:37:08 +09:00
Junegunn Choi
a76c055b63
Fix inconsistent preview window width with --border
...
fzf --preview 'cat {}' --bind 'space:change-preview-window:up|right' --border
2023-10-20 16:03:41 +09:00
Laurent Cheylus
d51b71ee80
Fix crash on OpenBSD with --listen ( #3483 )
...
- src/protector/protector_openbsd.go: add inet permissions for pledge
- fix #3481
Signed-off-by: Laurent Cheylus <foxy@free.fr>
2023-10-17 08:46:43 +09:00
Junegunn Choi
3df06a1c68
Fix offset-up and offset-down with --layout=reverse ( #3456 )
2023-10-12 19:14:03 +09:00
Junegunn Choi
404b6a864b
Add offset-up and offset-down
...
# Scrolling will behave similarly to CTRL-E and CTRL-Y of vim
fzf --bind scroll-up:offset-up,scroll-down:offset-down \
--bind ctrl-y:offset-up,ctrl-e:offset-down \
--scroll-off=5
Close #3456
2023-10-11 12:53:51 +09:00
Junegunn Choi
391aa14845
Add mouse events for --bind
...
Close #3473
2023-10-11 09:42:12 +09:00
Junegunn Choi
d8188fce7b
Experimental support for Kitty image protocol in preview window
...
Close #3228
* Works inside and outside of tmux
* There is a problem where fzf unnecessarily displays the scroll offset
indicator at the topbright of the screen when the image just fits the
preview window. This is because `kitty icat` generates an extra line
after the image area.
# A 5-row images; an extra row at the end confuses fzf
["\e_Ga ... \e[9C̅̅ࠪ̅̍ࠪ̅̎ࠪ̅̐ࠪ̅̒ࠪ̅̽ࠪ̅̾ࠪ̅̿ࠪ̅͆ࠪ̅͊ࠪ̅͋ࠪ\n",
"\r\e[9C̍̅ࠪ̍̍ࠪ̍̎ࠪ̍̐ࠪ̍̒ࠪ̍̽ࠪ̍̾ࠪ̍̿ࠪ̍͆ࠪ̍͊ࠪ̍͋ࠪ\n",
"\r\e[9C̎̅ࠪ̎̍ࠪ̎̎ࠪ̎̐ࠪ̎̒ࠪ̎̽ࠪ̎̾ࠪ̎̿ࠪ̎͆ࠪ̎͊ࠪ̎͋ࠪ\n",
"\r\e[9C̐̅ࠪ̐̍ࠪ̐̎ࠪ̐̐ࠪ̐̒ࠪ̐̽ࠪ̐̾ࠪ̐̿ࠪ̐͆ࠪ̐͊ࠪ̐͋ࠪ\n",
"\r\e[9C̒̅ࠪ̒̍ࠪ̒̎ࠪ̒̐ࠪ̒̒ࠪ̒̽ࠪ̒̾ࠪ̒̿ࠪ̒͆ࠪ̒͊ࠪ̒͋ࠪ\n",
"\r\e[39m\e8"]
* Example:
fzf --preview='
if file --mime-type {} | grep -qF 'image/'; then
# --transfer-mode=memory is the fastest option but if you want fzf to be able
# to redraw the image on terminal resize or on 'change-preview-window',
# you need to use --transfer-mode=stream.
kitty icat --clear --transfer-mode=memory --stdin=no --place=${FZF_PREVIEW_COLUMNS}x${FZF_PREVIEW_LINES}@0x0 {}
else
bat --color=always {}
fi
'
2023-10-07 18:36:33 +09:00
Junegunn Choi
76364ea767
Remove unnecessary escaping in the default command
2023-09-24 13:23:40 +09:00
Junegunn Choi
901939bd96
Add support for limit and offset parameters for GET / endpoint
...
Related #3372
2023-09-18 00:55:20 +09:00
Junegunn Choi
4490b2d209
Respect ANSI codes to reset properties
...
Fix #3441
2023-09-16 19:50:37 +09:00
Junegunn Choi
0f50dc848e
Add 'GET /' endpoint for getting the program state (experimental)
...
Related #3372
2023-09-03 16:30:35 +09:00
Junegunn Choi
f50a7058d6
Fix center-alignment of border/preview label
...
Fix #3421
2023-09-01 20:30:44 +09:00
Junegunn Choi
dd59b8c7b9
Fix ANSI color continuation in --header
...
# Both lines should be in red
fzf --header $'\x1b[31mfoo\nbar'
2023-07-25 22:20:31 +09:00
Junegunn Choi
f83491274f
Add toggle-header option
...
Close #3358
2023-07-25 22:11:15 +09:00
Boaz Yaniv
c0435fdff4
Add API Keys for fzf --listen ( #3374 )
2023-07-20 23:42:09 +09:00
Bart
3c09c77269
Fix deprecations of ioutil ( #3370 )
2023-07-16 17:14:22 +09:00
Junegunn Choi
547e101f1d
Use $SHELL instead of bash if it's known to support 'pipefail'
...
when running the default find command
Close #3339
Close #3364
2023-07-12 13:55:59 +09:00
Junegunn Choi
63aa5d3b4e
Correct outdated comment
2023-07-05 23:42:34 +09:00
guangwu
4772bd8d4c
Use strings.ContainsRune instead ( #3335 )
2023-06-17 19:10:12 +09:00
Junegunn Choi
d0b7780239
Add --info=right
...
Related: #3322
2023-06-11 16:09:15 +09:00
Junegunn Choi
e627ca6bd7
Add --info=inline-right
...
Close #3322
2023-06-10 23:11:05 +09:00
Junegunn Choi
c97172bdd4
Fix background color of spinner on the preview window
2023-06-10 14:48:47 +09:00
Mike
ce8a745fb4
Add new border style: 'thinblock' ( #3327 )
...
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
2023-06-10 14:48:29 +09:00
Junegunn Choi
448d7e0c5a
Update test case
2023-05-27 16:01:30 +09:00
Junegunn Choi
4c70745cc1
Fix bug where preview is not updated after reload when --disabled is set
...
Fix #3311
2023-05-27 15:51:04 +09:00
Junegunn Choi
7795748a3f
Remove dead code
2023-05-27 15:10:47 +09:00
Syphdias
37f258b1bf
Add key combinations for ctrl-delete and shift-delete ( #3284 )
...
Currently there is not option to bind ctrl-delete and shift-delete. As
suggested by issue #3240 , shift-delete could be used to bind "delete
entry from history" as it is a common way to do so in other
applications, e.g. browsers.
This, however, does only implement to use the key combination itself and
does not assign a default action to any of them. This does enable to
call one's all predefined actions. With the exec action this can
expanded like the issue #3240 suggested.
If desirable, the key combinations could later get a default behavior.
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
2023-05-21 18:40:05 +09:00
Junegunn Choi
16b0aeda7d
Make sure 'become' process is given a proper tty device
2023-05-21 14:01:27 +09:00
Junegunn Choi
86e4f4a841
Update tcell renderer to support block border
2023-05-20 18:24:23 +09:00
Junegunn Choi
607eacf8c7
Allow unbind(focus)
...
Fix #3279
2023-05-17 10:58:03 +09:00
Junegunn Choi
7a049644a8
Fix panic when trying to render preview window of a negative height
...
Fix #3292
2023-05-17 00:06:35 +09:00
Junegunn Choi
17a13f00f8
Allow customizing scrollbar of the preview window via --scrollbar=xy
2023-05-16 23:59:08 +09:00
Junegunn Choi
43436e48e0
Add new border style: 'block'
2023-05-16 23:45:31 +09:00
Junegunn Choi
5a39102405
Allow customizing the color of preview scrollbar via 'preview-scrollbar'
2023-05-16 23:24:05 +09:00
Junegunn Choi
94999101e3
Fix the behavior of change-preview-window action ( #3280 )
...
* change-preview-window restores the initial preview window options,
and overrides the properties that are specified
* However, 'hidden' property is treated differently. It is set to
'false' if the specified properties of the action is non-empty.
* cf. toggle-preview takes the "current" preview window options and
toggles the 'hidden' property.
2023-05-05 15:33:03 +09:00
Junegunn Choi
e619b7c4f4
Fix the background color of the scrollbar inside the preview window
2023-05-01 16:18:26 +09:00
Junegunn Choi
b7c2e8cb67
Fix caching when reload and query change triggered by the same binding
2023-05-01 13:53:34 +09:00
Junegunn Choi
fb76893e18
0.40.0
2023-05-01 01:59:21 +09:00
Junegunn Choi
88d812fe82
Do not display trailing carriage returns in the preview window
...
Close #3269
2023-04-30 18:14:40 +09:00
Junegunn Choi
77f9f4664a
Fix search not triggered when query change and reload happen at the same time
...
Fix #3268
2023-04-30 18:14:40 +09:00
Junegunn Choi
cf95e44cb4
Add 'zero' event
...
Close #3263
2023-04-26 15:13:08 +09:00
Junegunn Choi
65dd2bb429
Add 'track' action
2023-04-22 23:42:09 +09:00
Junegunn Choi
6be855be6a
Add change-header and transform-header
...
Close #3237
2023-04-22 22:01:37 +09:00
Junegunn Choi
0c61d81713
Add toggle-track action
2023-04-22 15:48:51 +09:00
Junegunn Choi
7c6f5dba63
Fixed --track when used with --tac
...
Fix #3234
2023-04-22 15:09:43 +09:00
Junegunn Choi
96670d5f16
Disallow using --track with --tac
...
Close #3234
2023-04-12 13:23:10 +09:00
tyama711
fb019d43bf
Fix a bug of height range with -1 or -0 ( #3226 )
...
Fixed a bug that when both heightUnknown and deferred are true, deferred is not properly reset and the program terminates abnormally.
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
2023-04-02 23:26:13 +09:00
Junegunn Choi
8ec917b1c3
Add 'one' event
...
Close #2629
Close #2494
Close #459
2023-04-01 17:25:47 +09:00
Junegunn Choi
1c7534f009
Add --track option to track the current selection
...
Close #3186
Related #1890
2023-04-01 12:59:44 +09:00
Junegunn Choi
60f37aae2f
Respect 'regular' attribute in 'bw' base theme
...
Don't make the text bold if an element is explicitly specified as
'regular'.
Fix #3222
2023-03-26 23:39:05 +09:00
Junegunn Choi
d7daf5f724
Render CR and LF as ␍ and ␊
...
Close #2529
2023-03-25 10:41:19 +09:00
Junegunn Choi
fcd7e8768d
Omit port number in --listen
for automatic port assignment
...
Close #3200
2023-03-19 15:48:39 +09:00
Junegunn Choi
3c34dd8275
Fix extra new line in the preview window
...
When a colored text ends at the right end of the window
Fix #3209
2023-03-17 13:22:20 +09:00
Zhizhen He
3364d4d147
Add spell check workflow ( #3183 )
2023-02-23 00:36:04 +09:00
Junegunn Choi
b1459c79cf
Make sure that the query before the cursor is not hidden
...
Close #3176
2023-02-19 16:38:26 +09:00
Junegunn Choi
4e305eca26
become: Set stdin to /dev/tty
2023-02-15 23:24:42 +09:00
Junegunn Choi
96c3de12eb
Run 'become' only when the command template is properly evaluated
2023-02-12 22:06:21 +09:00
Junegunn Choi
6ea38b4438
Add become(...) action that replaces current fzf process
...
Close #3159
2023-02-11 20:26:31 +09:00
Junegunn Choi
f7447aece1
Code cleanup
2023-02-01 18:16:58 +09:00
Junegunn Choi
aa2b9ec476
Add 'show-preview' and 'hide-preview'
...
For cases where 'toggle-preview' is not enough
2023-01-31 17:34:11 +09:00
Junegunn Choi
3ee00f8bc2
toggle-preview should not show empty preview window
2023-01-30 22:13:29 +09:00
Junegunn Choi
fccab60a5c
--preview-window 0,hidden
should not execute the preview command
...
Until `toggle-preview` action is triggered
Fix #3149
2023-01-30 21:39:18 +09:00
Junegunn Choi
95a7661bb1
Sanitize input strings that should be a single line
2023-01-24 19:35:29 +09:00
Junegunn Choi
618d317803
Support custom separator of inline info
...
Close #2030
Close #3084
2023-01-24 17:55:06 +09:00
Junegunn Choi
ae897c8cdb
No need to touch mouse flag if it's already false
2023-01-24 12:45:07 +09:00
Junegunn Choi
d0a0f3c052
Temporarily disable mouse mode when switching to an external command
2023-01-24 12:41:40 +09:00
Junegunn Choi
91b9591b10
Reenable mouse mode when coming back from an external program
...
Close #3141
2023-01-24 12:00:41 +09:00
Junegunn Choi
aa7361337d
Make test case pass on 32-bit platforms
...
Close #3127
2023-01-23 18:30:36 +09:00
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
2023-01-23 16:38:24 +09:00
Junegunn Choi
826178f1e2
Do not restore terminal state while running an external command
2023-01-23 02:24:13 +09:00
Junegunn Choi
d51980a3f5
Add 'transform-border-label' and 'transform-preview-label'
2023-01-22 02:18:19 +09:00
jpcrs
c3d73e7ecb
Add change-border-label and change-preview-label actions, update man
2023-01-22 02:18:19 +09:00
Junegunn Choi
b077f6821d
Action argument in enclosed form should allow new lines
...
Close #3138
2023-01-21 22:20:26 +09:00
Junegunn Choi
2023011763
0.36.0
2023-01-17 01:33:05 +09:00
Junegunn Choi
dc8da605f9
Fix rendering of double-column borders on light renderer
2023-01-16 19:55:44 +09:00
Junegunn Choi
8b299a29c7
Fix rendering of double-column borders
2023-01-16 19:34:28 +09:00
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`.
2023-01-16 01:26:39 +09:00
Junegunn Choi
e97e925efb
Resume preview following if the user scrolls the window to the bottom
2023-01-12 23:18:41 +09:00
Junegunn Choi
e0f0984da7
Allow re-enabling preview follow on change-preview-window
2023-01-09 11:08:06 +09:00
Junegunn Choi
4d22b5aaef
Disable preview follow after dragging the scrollbar
...
TBD: Should we re-enable follow once the offset reaches the bottom?
2023-01-09 11:07:31 +09:00
Junegunn Choi
80b8846318
Run preview command when preview window appears after resize ( #3113 )
...
# Start fzf in a small screen so that the preview window is hidden
fzf --bind 'ctrl-p:toggle-preview' --preview 'stat {}' --preview-window='right,50%,<100(down,50%,hidden)'
# Enlarge the screen until the preview window appears. It should not be empty.
2023-01-07 16:11:35 +09:00
Junegunn Choi
bf641faafa
Prevent fzf crashing on malformed remote action
2023-01-07 15:38:02 +09:00
Junegunn Choi
23d8b78ce1
Allow toggling of alternative preview window layout that is hidden
...
Fix #3113
2023-01-07 15:12:31 +09:00
Junegunn Choi
3b2244077d
Add scrollbar to the preview window
2023-01-06 15:36:12 +09:00
Junegunn Choi
ee5cdb9713
Reduce flickering of the scroll info panel on the preview window
2023-01-05 01:59:22 +09:00
Junegunn Choi
03d02d67f7
Fix cyclic scrolling with non-zero preview header lines
...
e.g. fzf --preview-window 'cycle,~2' --preview 'echo foo; echo bar; seq 100'
2023-01-04 22:00:00 +09:00
Junegunn Choi
5798145581
Fix preview border on tcell renderer
2023-01-04 10:09:39 +09:00
Junegunn Choi
c1cd0c09a2
Allow dragging of the preview window
2023-01-03 01:46:37 +09:00
Junegunn Choi
1fc1f47d80
Fix double-click on light renderer
2023-01-03 01:39:16 +09:00
Junegunn Choi
ec471a5bc2
Make sure two consecutive double clicks require four clicks
2023-01-03 01:36:51 +09:00
Junegunn Choi
a893fc0ca2
Clicks with different x coordinates shouldn't be seen as a double-click
2023-01-03 01:21:40 +09:00
Junegunn Choi
3761dc0433
Avoid superfluous update of scrollbar
2023-01-02 01:10:01 +09:00
Junegunn Choi
aa71a07fbe
Fix scrollbar rendering ( #3096 )
2023-01-01 21:18:20 +09:00
Junegunn Choi
088293f5e7
Restore mouse drag mode ( #3096 )
2023-01-01 21:04:40 +09:00
Junegunn Choi
7c660aa86e
Allow dragging of scrollbar
2023-01-01 19:01:56 +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
ec20dfe312
Only allow local requests
2022-12-31 23:13:14 +09:00
Junegunn Choi
924ffb5a35
Fix cache being immediately cleared on reload-sync
2022-12-31 09:33:23 +09:00
Junegunn Choi
62c7f59b94
Add transform-prompt(...) action
2022-12-31 09:27:11 +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
44b6336372
Make server channel buffered
...
Not to block an action that calls the API
fzf --listen 6266 --bind 'space:execute-silent:curl localhost:6266 -d up'
2022-12-28 12:52:19 +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
4dbe45640a
Remove $FZF_LISTEN_PORT
...
It is not worth the added complexity.
2022-12-27 22:12:06 +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
8e283f512a
Fix bind spec parser
2022-12-23 15:37:39 +09:00
Junegunn Choi
73162a4bc3
Rewrite bind spec parser
2022-12-23 03:28:16 +09:00
Junegunn Choi
1a9761736e
Add time and size limit to remote requests
2022-12-22 20:44:49 +09:00
Junegunn Choi
fd1f7665a7
Abort fzf if --listen port is unavailable
2022-12-21 13:02:25 +09:00
Junegunn Choi
cf69b836ac
Only trim CR and NF from the submitted expression
...
So the trailing space in the following case is respected.
curl -XPOST localhost:6266 -d "change-prompt:$(date)> "
2022-12-21 01:35:08 +09:00
Junegunn Choi
a7a771b92b
Break out of jump mode when any action is submitted to the server
2022-12-21 01:35:08 +09:00
Junegunn Choi
def011c029
Fix parse error of actions with arguments
2022-12-21 01:35:08 +09:00
Junegunn Choi
4b055bf260
Rewrite HTTP server without net/http
...
This cuts down the binary size from 5.7MB to 3.3MB.
2022-12-21 01:35:08 +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
0ad30063ff
Rename previous-history to prev-history
...
previous-history is still supported for backward compatibility
2022-12-10 22:42:56 +09:00
Junegunn Choi
7812c64a31
Fix uninitialized colors in base themes
...
Fix #3079
2022-12-10 16:55:19 +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