summaryrefslogtreecommitdiff
path: root/src/reader.go
AgeCommit message (Collapse)Author
2024-05-07Refactor the code to remove global variablesJunegunn Choi
2024-05-07Refactor the code so that fzf can be used as a library (#3769)Junegunn Choi
2024-04-27Add --with-shell for shelling out with different command and flags (#3746)Junegunn Choi
Close #3732
2024-04-25Fix 'reload' not terminating closed standard input streamJunegunn Choi
Fix #3750
2024-04-14Improve search performance by limiting the search scopeJunegunn Choi
Find the last occurrence of the last character in the pattern and perform the search algorithm only up to that point. The effectiveness of this mechanism depends a lot on the shape of the input and the pattern.
2024-04-04Do not trim CR on Windows when --read0 is setJunegunn Choi
2024-04-02Improve ingestion performance (by around 40%)Junegunn Choi
Summary fzf --sync --bind load:accept < 27M-lines ran 1.16 ± 0.01 times faster than fzf-41b3511 --sync --bind load:accept < 27M-lines 1.44 ± 0.01 times faster than fzf-0.48.1 --sync --bind load:accept < 27M-lines
2024-04-01Improve ingestion performance (by around 20%)Junegunn Choi
2024-03-13Add walker options and replace 'find' with the built-in walker (#3649)Junegunn Choi
2024-02-19Export FZF_* variables to 'reload' process as wellJunegunn Choi
2024-02-15Code cleanup: Remove unused argumentJunegunn Choi
2024-02-15Replace "default find command" with built-in directory traversalJunegunn Choi
2023-07-12Use $SHELL instead of bash if it's known to support 'pipefail'Junegunn Choi
when running the default find command Close #3339 Close #3364
2020-03-14[windows] Do not include directories in the listJunegunn Choi
Fix #1926
2020-02-04[windows] Use native walker since output of DOS command is not UTF-8 encoded ↵mattn
(#1847) Makes scanning 300x faster on Windows
2019-11-11Remove unnecessary reader barrier on --filter modeJunegunn Choi
2019-11-10Experimental implementation of "reload" actionJunegunn Choi
# 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
2018-09-28Kill running preview process after 500ms when focus has changedJunegunn Choi
Close #1383 Close #1384
2017-09-28Update FZF_DEFAULT_COMMANDJunegunn Choi
- Use bash for `set -o pipefail` - Fall back to simpler find command when the original command failed Related: #1061
2017-08-26Minor refactoringsJunegunn Choi
2017-08-16Make Reader event notification asynchronousJunegunn Choi
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.
2017-07-01Print [ERROR] on info line when the default command failedJunegunn Choi
With zero result. Related: https://github.com/junegunn/fzf.vim/issues/22#issuecomment-311869805
2016-11-08Fix issues in tcell renderer and Windows buildJunegunn Choi
- Fix display of CJK wide characters - Fix horizontal offset of header lines - Add support for keys with ALT modifier, shift-tab, page-up and down - Fix util.ExecCommand to properly parse command-line arguments - Fix redraw on resize - Implement Pause/Resume for execute action - Remove runtime check of GOOS - Change exit status to 2 when tcell failed to start - TBD: Travis CI build for tcell renderer - Pending. tcell cannot reliably ingest keys from tmux send-keys
2016-11-07Implement tcell-based rendererMichael Kelley
2016-08-16Increase read buffer size to 64KBJunegunn Choi
2016-02-07Use $SHELL to start $FZF_DEFAULT_COMMAND (#481)Junegunn Choi
2015-08-02Performance fix - unnecessary rune convertion on --ansiJunegunn Choi
> 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
2015-08-02Performance tuning - eager rune array conversionJunegunn Choi
> 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
2015-07-22Add --header-lines optionJunegunn Choi
2015-06-08add support to nil-byte separated input strings, closes #121Giulio Iotti
2015-06-03Fix #248 - Premature termination of Reader on long inputJunegunn Choi
2015-04-17Improvements in performance and memory usageJunegunn Choi
I profiled fzf and it turned out that it was spending significant amount of time repeatedly converting character arrays into Unicode codepoints. This commit greatly improves search performance after the initial scan by memoizing the converted results. This commit also addresses the problem of unbounded memory usage of fzf. fzf is a short-lived process that usually processes small input, so it was implemented to cache the intermediate results very aggressively with no notion of cache expiration/eviction. I still think a proper implementation of caching scheme is definitely an overkill. Instead this commit introduces limits to the maximum size (or minimum selectivity) of the intermediate results that can be cached.
2015-01-12Reorganize source codeJunegunn Choi
2015-01-12LintJunegunn Choi
2015-01-07Remove extraneous quote-escapeJunegunn Choi
2015-01-04Rewrite fzf in GoJunegunn Choi