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
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
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
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
c1cd0c09a2
Allow dragging of the preview window
2023-01-03 01:46:37 +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
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
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
fd1f7665a7
Abort fzf if --listen port is unavailable
2022-12-21 13:02:25 +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
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