Junegunn Choi
212de25409
Fix incorrect header array mutation
5 years ago
Junegunn Choi
2b725a4db5
Defer resetting multi-selection on reload
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
751aa1944a
Remove trailing whitespaces when using --with-nth
5 years ago
Junegunn Choi
7e1c0f39e7
'reload' action should reset --header-lines
5 years ago
Junegunn Choi
73c0a645e0
Remove unnecessary reader barrier on --filter mode
5 years ago
Junegunn Choi
78da928727
Experimental implementation of "reload" action
...
# Reload input list with different sources
seq 10 | fzf --bind 'ctrl-a:reload(seq 100),ctrl-b:reload(seq 1000)'
# Reload as you type
seq 10 | fzf --bind 'change:reload:seq {q}' --phony
# Integration with ripgrep
RG_PREFIX="rg --column --line-number --no-heading --color=always --smart-case "
INITIAL_QUERY=""
FZF_DEFAULT_COMMAND="$RG_PREFIX '$INITIAL_QUERY'" \
fzf --bind "change:reload:$RG_PREFIX {q} || true" \
--ansi --phony --query "$INITIAL_QUERY"
Close #751
Close #965
Close #974
Close #1736
Related #1723
5 years ago
Junegunn Choi
11962dabba
Add --phony option for disabling search
...
With --phony, fzf becomes a simply selector interface without its own
search functionality. The query string is only used for building the
command for preview or execute action.
Close #1723
5 years ago
Junegunn Choi
85c1f8a9e0
Always prepend ANSI reset code before re-assembling tokens
6 years ago
Junegunn Choi
e00e7e1e56
Remove unnecessary ANSI code injection
6 years ago
Junegunn Choi
ef577a6509
Preserve the original color of each token when using --with-nth with --ansi
...
Close #1500
6 years ago
Junegunn Choi
5624a89231
Inverse-only matches should not reorder the remaining results
...
Fix #1458
6 years ago
Junegunn Choi
55ee4186aa
Ignore EvtReadNew if EvtReadFin is already set
7 years ago
Junegunn Choi
87874bba88
Remove redundant read event when --sync is used
7 years ago
Junegunn Choi
0558dfee79
Remove count field from ChunkList
7 years ago
Junegunn Choi
487c8fe88f
Make Reader event notification asynchronous
...
Instead of notifying the event coordinator (EventBox) whenever a new
line is arrived, start a background goroutine that periodically does the
task. Atomic.StoreInt32 is much cheaper than mutex synchronization
that happens during EventBox update.
7 years ago
Junegunn Choi
0d171ba1d8
Remove special nilItem
7 years ago
Junegunn Choi
37370f057f
Do not use defer in performance-sensitive contexts
7 years ago
Junegunn Choi
bd98f988f0
Further reduce unnecessary rune array conversion
...
I was too quick to release 0.16.9, this commit makes --ansi processing
even faster.
7 years ago
Junegunn Choi
c9f16b6430
Avoid unconditionally storsing input as runes
...
When --with-nth is used, fzf used to preprocess each line and store the
result as rune array, which was wasteful if the line only contains ascii
characters.
7 years ago
Junegunn Choi
9e85cba0d0
Reduce memory footprint of Item struct
7 years ago
Junegunn Choi
d4f3d5a164
Remove pointer indirection by changing Chunk definition
7 years ago
Junegunn Choi
07ef2b051c
Print [ERROR] on info line when the default command failed
...
With zero result.
Related: https://github.com/junegunn/fzf.vim/issues/22#issuecomment-311869805
7 years ago
Junegunn Choi
83e9af6601
Add git revision to --version output
7 years ago
Junegunn Choi
2e3dc75425
Fix inconsistent tiebreak scores when --nth is used
...
Make sure to consistently calculate tiebreak scores based on the
original line.
This change may not be preferable if you filter aligned tabular input on
a subset of columns using --nth. However, if we calculate length
tiebreak only on the matched components instead of the entire line, the
result can be very confusing when multiple --nth components are
specified, so let's keep it simple and consistent.
Close #926
7 years ago
Junegunn Choi
d85a69a709
0.16.3
8 years ago
Junegunn Choi
45793d75c2
Add --normalize option to normalize latin script characters
...
Close #790
8 years ago
Junegunn Choi
37f43fbb35
Add --print0 option
...
Related: #660
8 years ago
Junegunn Choi
2fc7c18747
Revise ranking algorithm
8 years ago
Junegunn Choi
f8fdf9618a
No need to cache the result in filtering mode (--filter)
8 years ago
Junegunn Choi
827a83efbc
Remove Offset slice from Result struct
8 years ago
Junegunn Choi
37dc273148
Micro-optimizations
...
- Make structs smaller
- Introduce Result struct and use it to represent matched items instead of
reusing Item struct for that purpose
- Avoid unnecessary memory allocation
- Avoid growing slice from the initial capacity
- Code cleanup
8 years ago
Junegunn Choi
935272824e
Setting GOMAXPROCS is no longer needed
...
https://golang.org/doc/go1.5
8 years ago
Junegunn Choi
1d4057c209
[perf] Avoid allocating rune array for ascii string
...
In the best case (all ascii), this reduces the memory footprint by 60%
and the response time by 15% to 20%. In the worst case (every line has
non-ascii characters), 3 to 4% overhead is observed.
8 years ago
Junegunn Choi
24e1fabf2e
Do not process ANSI codes in --preview output at once
...
Close #598
8 years ago
Junegunn Choi
8d3a302a17
Simplify Item structure
...
This commit compensates for the performance overhead from the
extended tiebreak option.
9 years ago
Junegunn Choi
1d2d32c847
Accept comma-separated list of sort criteria
9 years ago
Junegunn Choi
d635b3fd3c
Update license: 2016
9 years ago
Junegunn Choi
81a88693c1
Make --extended default
...
Close #400
9 years ago
Junegunn Choi
2022a3ad96
Replace --header-file with --header ( #346 )
...
and allow using --header and --header-lines at the same time.
Close #346 .
9 years ago
Junegunn Choi
65d9d416b4
Change exit status (0: OK, 1: No match, 2: Error/Interrupted)
...
A la grep. Close #345
9 years ago
Junegunn Choi
64443221aa
Fix #344 - Backward scan when `--tiebreak=end`
9 years ago
Junegunn Choi
90b0cd44ac
Should not strip ANSI codes when --ansi is not set
9 years ago
Junegunn Choi
e13bafc1ab
Performance fix - unnecessary rune convertion on --ansi
...
> time cat /tmp/list | fzf-0.10.1-darwin_amd64 --ansi -fqwerty > /dev/null
real 0m4.364s
user 0m8.231s
sys 0m0.820s
> time cat /tmp/list | fzf --ansi -fqwerty > /dev/null
real 0m4.624s
user 0m5.755s
sys 0m0.732s
9 years ago
Junegunn Choi
0ea66329b8
Performance tuning - eager rune array conversion
...
> wc -l /tmp/list2
2594098 /tmp/list2
> time cat /tmp/list2 | fzf-0.10.1-darwin_amd64 -fqwerty > /dev/null
real 0m5.418s
user 0m10.990s
sys 0m1.302s
> time cat /tmp/list2 | fzf-head -fqwerty > /dev/null
real 0m4.862s
user 0m6.619s
sys 0m0.982s
9 years ago
Junegunn Choi
634670e3ea
Lint
9 years ago
Junegunn Choi
4e0e03403e
Fix --header-lines unaffected by --with-nth
9 years ago
Junegunn Choi
5e3cb3a4ea
Fix ANSI processor to handle multi-line regions
9 years ago
Junegunn Choi
f469c25730
Add --header-lines option
9 years ago