mirror of
https://github.com/Llewellynvdm/fzf.git
synced 2024-06-12 04:02:23 +00:00
Compare commits
2 Commits
e86b81bbf5
...
f97d275413
Author | SHA1 | Date | |
---|---|---|---|
|
f97d275413 | ||
|
3acb4ca90e |
34
CHANGELOG.md
34
CHANGELOG.md
|
@ -4,38 +4,13 @@ CHANGELOG
|
||||||
0.50.0
|
0.50.0
|
||||||
------
|
------
|
||||||
- Search performance optimization. You can observe 50%+ improvement in some scenarios.
|
- Search performance optimization. You can observe 50%+ improvement in some scenarios.
|
||||||
```sh
|
```
|
||||||
$ time wc < $DATA
|
$ rg --line-number --no-heading --smart-case . > $DATA
|
||||||
|
|
||||||
|
$ wc < $DATA
|
||||||
5520118 26862362 897487793
|
5520118 26862362 897487793
|
||||||
|
|
||||||
real 0m1.320s
|
|
||||||
user 0m1.236s
|
|
||||||
sys 0m0.075s
|
|
||||||
|
|
||||||
$ time fzf --sync --bind load:abort < $DATA
|
|
||||||
|
|
||||||
real 0m0.479s
|
|
||||||
user 0m0.427s
|
|
||||||
sys 0m0.176s
|
|
||||||
|
|
||||||
$ hyperfine -w 1 -L bin fzf-0.49.0,fzf-7ce6452,fzf-a5447b8,fzf '{bin} --filter "///" < $DATA | head -30'
|
$ hyperfine -w 1 -L bin fzf-0.49.0,fzf-7ce6452,fzf-a5447b8,fzf '{bin} --filter "///" < $DATA | head -30'
|
||||||
|
|
||||||
Benchmark 1: fzf-0.49.0 --filter "///" < $DATA | head -30
|
|
||||||
Time (mean ± σ): 2.002 s ± 0.024 s [User: 14.447 s, System: 0.300 s]
|
|
||||||
Range (min … max): 1.964 s … 2.042 s 10 runs
|
|
||||||
|
|
||||||
Benchmark 2: fzf-7ce6452 --filter "///" < $DATA | head -30
|
|
||||||
Time (mean ± σ): 1.627 s ± 0.019 s [User: 10.828 s, System: 0.271 s]
|
|
||||||
Range (min … max): 1.596 s … 1.651 s 10 runs
|
|
||||||
|
|
||||||
Benchmark 3: fzf-a5447b8 --filter "///" < $DATA | head -30
|
|
||||||
Time (mean ± σ): 1.524 s ± 0.025 s [User: 9.818 s, System: 0.269 s]
|
|
||||||
Range (min … max): 1.478 s … 1.569 s 10 runs
|
|
||||||
|
|
||||||
Benchmark 4: fzf --filter "///" < $DATA | head -30
|
|
||||||
Time (mean ± σ): 1.318 s ± 0.025 s [User: 8.005 s, System: 0.262 s]
|
|
||||||
Range (min … max): 1.282 s … 1.366 s 10 runs
|
|
||||||
|
|
||||||
Summary
|
Summary
|
||||||
fzf --filter "///" < $DATA | head -30 ran
|
fzf --filter "///" < $DATA | head -30 ran
|
||||||
1.16 ± 0.03 times faster than fzf-a5447b8 --filter "///" < $DATA | head -30
|
1.16 ± 0.03 times faster than fzf-a5447b8 --filter "///" < $DATA | head -30
|
||||||
|
@ -60,6 +35,7 @@ CHANGELOG
|
||||||
```sh
|
```sh
|
||||||
fzf --bind 'space:jump,jump:accept,jump-cancel:transform:[[ $FZF_KEY =~ ctrl-c ]] && echo abort'
|
fzf --bind 'space:jump,jump:accept,jump-cancel:transform:[[ $FZF_KEY =~ ctrl-c ]] && echo abort'
|
||||||
```
|
```
|
||||||
|
- fzf can be built with profiling options. See [BUILD.md](BUILD.md) for more information.
|
||||||
- Bug fixes
|
- Bug fixes
|
||||||
|
|
||||||
0.49.0
|
0.49.0
|
||||||
|
|
2
install
2
install
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
set -u
|
set -u
|
||||||
|
|
||||||
version=0.49.0
|
version=0.50.0
|
||||||
auto_completion=
|
auto_completion=
|
||||||
key_bindings=
|
key_bindings=
|
||||||
update_config=2
|
update_config=2
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
$version="0.49.0"
|
$version="0.50.0"
|
||||||
|
|
||||||
$fzf_base=Split-Path -Parent $MyInvocation.MyCommand.Definition
|
$fzf_base=Split-Path -Parent $MyInvocation.MyCommand.Definition
|
||||||
|
|
||||||
|
|
2
main.go
2
main.go
|
@ -9,7 +9,7 @@ import (
|
||||||
"github.com/junegunn/fzf/src/protector"
|
"github.com/junegunn/fzf/src/protector"
|
||||||
)
|
)
|
||||||
|
|
||||||
var version string = "0.49"
|
var version string = "0.50"
|
||||||
var revision string = "devel"
|
var revision string = "devel"
|
||||||
|
|
||||||
//go:embed shell/key-bindings.bash
|
//go:embed shell/key-bindings.bash
|
||||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
..
|
..
|
||||||
.TH fzf-tmux 1 "Apr 2024" "fzf 0.49.0" "fzf-tmux - open fzf in tmux split pane"
|
.TH fzf-tmux 1 "Apr 2024" "fzf 0.50.0" "fzf-tmux - open fzf in tmux split pane"
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
fzf-tmux - open fzf in tmux split pane
|
fzf-tmux - open fzf in tmux split pane
|
||||||
|
|
|
@ -21,7 +21,7 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
||||||
THE SOFTWARE.
|
THE SOFTWARE.
|
||||||
..
|
..
|
||||||
.TH fzf 1 "Apr 2024" "fzf 0.49.0" "fzf - a command-line fuzzy finder"
|
.TH fzf 1 "Apr 2024" "fzf 0.50.0" "fzf - a command-line fuzzy finder"
|
||||||
|
|
||||||
.SH NAME
|
.SH NAME
|
||||||
fzf - a command-line fuzzy finder
|
fzf - a command-line fuzzy finder
|
||||||
|
|
|
@ -3,6 +3,7 @@ package fzf
|
||||||
|
|
||||||
import (
|
import (
|
||||||
"fmt"
|
"fmt"
|
||||||
|
"sync"
|
||||||
"time"
|
"time"
|
||||||
"unsafe"
|
"unsafe"
|
||||||
|
|
||||||
|
@ -164,14 +165,17 @@ func Run(opts *Options, version string, revision string) {
|
||||||
found := false
|
found := false
|
||||||
if streamingFilter {
|
if streamingFilter {
|
||||||
slab := util.MakeSlab(slab16Size, slab32Size)
|
slab := util.MakeSlab(slab16Size, slab32Size)
|
||||||
|
mutex := sync.Mutex{}
|
||||||
reader := NewReader(
|
reader := NewReader(
|
||||||
func(runes []byte) bool {
|
func(runes []byte) bool {
|
||||||
item := Item{}
|
item := Item{}
|
||||||
if chunkList.trans(&item, runes) {
|
if chunkList.trans(&item, runes) {
|
||||||
|
mutex.Lock()
|
||||||
if result, _, _ := pattern.MatchItem(&item, false, slab); result != nil {
|
if result, _, _ := pattern.MatchItem(&item, false, slab); result != nil {
|
||||||
opts.Printer(item.text.ToString())
|
opts.Printer(item.text.ToString())
|
||||||
found = true
|
found = true
|
||||||
}
|
}
|
||||||
|
mutex.Unlock()
|
||||||
}
|
}
|
||||||
return false
|
return false
|
||||||
}, eventBox, opts.ReadZero, false)
|
}, eventBox, opts.ReadZero, false)
|
||||||
|
|
Loading…
Reference in New Issue
Block a user