Junegunn Choi
e7718b92b7
Kitty image support improvements
...
* Use `--unicode-placeholder` for consistent result in and out of tmux
* Use updated version of junegunn/go-runewidth that handles diacritics
used in Kitty Unicode placeholder
Close #3567
2024-01-17 00:17:22 +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
b92a843c5f
Use Ubuntu 22 to match GitHub Actions environment
2024-01-07 15:10:06 +09:00
Junegunn Choi
91bea9c5b3
Use forked version of go-runewidth
...
Fix #3558
go get github.com/junegunn/go-runewidth@fzf
2024-01-07 15:09:46 +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
8d20f3d5c4
ADVANCED.md: Add toggling example with transform and {fzf:prompt}
...
Courtesy of @LangLangBart
2023-12-29 12:27:12 +09:00
Junegunn Choi
5d360180af
Add {fzf:prompt} placeholder expression
...
Close #3354
2023-12-28 17:10:06 +09:00
Junegunn Choi
f0fbed6007
Fix RuboCop error
2023-12-27 01:33:34 +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
c4df0dd06e
Add TRANSFORM ACTIONS section to man page
2023-12-26 12:21:06 +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
Junegunn Choi
e8b34cb00d
Clarification on accept-or-print-query vs. become
2023-12-14 23:13:52 +09:00
Junegunn Choi
50f092551b
Lint: RuboCop
2023-12-10 16:04:30 +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
Junegunn Choi
d7d2ac3951
0.44.1
2023-11-17 19:17:00 +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
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
f5f0b9ecaa
Fix a typo
2023-11-08 11:18:36 +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
250d507bdf
Fix a typo on CHANGELOG
2023-11-07 10:50:08 +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
69176fc5f4
fzf-preview.sh: Fall back to stty size ( #2544 )
2023-11-02 00:15:39 +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
1cfa3ee4c7
fzf-preview.sh: Check the number of arguments
2023-10-30 00:05:54 +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
ec208af474
Go 1.18 or above is required
...
Close #3492
2023-10-26 23:30:46 +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
d3a9a0615b
Fix kitty icat handling
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
Junegunn Choi
70c461c60b
[bash] Preserve existing completion for ssh
...
Fix #3484
2023-10-19 09:58:36 +09:00
Junegunn Choi
d3311d9f43
0.43.0
2023-10-15 01:56:05 +09:00
Junegunn Choi
de7ef7eace
[fzf-tmux] Fix 'empty command' error on tmux 3.2
...
Fix #3474
2023-10-13 20:13:28 +09:00
Junegunn Choi
f212bafe46
[bash] Remove implicit bash-completion dependency
2023-10-13 01:00: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
a0d61b4c37
[install] Remove redundant interactiveness check
...
Related #3449
/cc @calestyo
2023-10-09 10:00:55 +09:00
Junegunn Choi
2952737755
Update README: Experimental support for Kitty graphics protocol
2023-10-09 01:29:03 +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
488a236b7a
[shell] Avoid side-effects during eval ( #3459 )
...
Take two.
* Avoid eval if the prefix contains `:=`
* This is not to evaluate variable assignment. e.g. ${FOO:=BAR}
* [zsh] Prevent `>(...)` form
* Suppress error message from prefix evaluation
* Stop completion when prefix evaluation failed
Thanks to @calestyo
2023-10-04 21:43:11 +09:00
Junegunn Choi
ee4ba104e7
[completion] Prevent running a command during 'eval'
...
Do not attempt to provide fuzzy completion if the prefix contains a
pattern that may start an arbitraty command.
* $(...)
* `...`
* <(...)
Close #3459
2023-10-02 20:40:49 +09:00
Junegunn Choi
a3ff49aaf1
[bash] CTRL-R on bash 3: Use backticks to avoid delay
...
https://github.com/junegunn/fzf/commit/e0b29e437be458066fca4dab39b282dfc11466f6
2023-09-27 09:16:16 +09:00
Junegunn Choi
76364ea767
Remove unnecessary escaping in the default command
2023-09-24 13:23:40 +09:00
Junegunn Choi
00809909ae
Update CHANGELOG
2023-09-22 21:59:47 +09:00
Junegunn Choi
2bed7d370e
[shell] Use --scheme=path when appropriate
...
Without the option, you may get suboptimal results if you have many
paths with spaces in their names.
e.g. https://github.com/junegunn/fzf/issues/2909#issuecomment-1207690770
Close #3433
2023-09-19 13:39:57 +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
3982c9a552
[vimdoc] Replace unicode figure space (U+2007) with regular space
...
Related: https://github.com/junegunn/fzf.vim/pull/1507
Thanks to @balki
2023-09-17 23:55:39 +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
c5e4b83de3
Update sponsor list once a week
2023-09-02 20:48:10 +09:00
Junegunn Choi
f50a7058d6
Fix center-alignment of border/preview label
...
Fix #3421
2023-09-01 20:30:44 +09:00
Junegunn Choi
58835e40f3
Run GitHub Sponsors action once a day
2023-08-29 19:42:30 +09:00
Junegunn Choi
5f66786ef1
[install] Replace go get with go install
...
Fix #3365
2023-08-26 20:00:16 +09:00
Junegunn Choi
3a965856a5
[vim] Keep jump list unaffected when calling term_start
...
Fix #3415
2023-08-26 19:53:57 +09:00
Junegunn Choi
ffd2314120
Restore --no-clear option in man page
...
Close #3411
2023-08-25 17:59:50 +09:00
Junegunn Choi
11e56403dd
[man] Clarify --scheme option
...
Close #3387
2023-08-22 15:16:51 +09:00
Junegunn Choi
1894304d33
[bash] Disable pipefail in command substitution
...
Fix #3382
2023-08-18 13:37:56 +09:00
Junegunn Choi
6509f09961
Set up GitHub Sponsors Readme Action ( #3398 )
2023-08-14 16:39:39 +09:00
Junegunn Choi
89b9189efa
[fzf-tmux] Pass $RUNEWIDTH_EASTASIAN
...
Close #3385
2023-08-03 16:47:19 +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
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
Junegunn Choi
a7c41f3fcd
Add '--info=right' to the man page
...
Close #3333
2023-06-17 19:15:29 +09:00
Junegunn Choi
d471067e3f
0.42.0
2023-06-15 00:37:41 +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
Junegunn Choi
3e9efd1401
[vim] Only prepend --border option in $FZF_DEFAULT_OPTS
...
Fix #3318
2023-06-03 09:03:04 +09:00
Junegunn Choi
20340190b5
[fzf-tmux] Pass $BAT_THEME
...
This may anger some purists, but bat is widely used as the previewer so
I think it's worth it.
2023-05-31 20:16:30 +09:00
Junegunn Choi
265040a78c
[vim] Respect --border optin in $FZF_DEFAULT_OPTS
2023-05-31 20:09:14 +09:00
Junegunn Choi
448d7e0c5a
Update test case
2023-05-27 16:01:30 +09:00