Junegunn Choi
2a669e9a17
Clear lines even when background color is not set
...
Also revert the workaround in Vim plugin introduced in fa7c897
.
Related: #814
2017-01-22 03:19:50 +09:00
Junegunn Choi
24fa183297
make deps
2017-01-22 02:54:19 +09:00
Junegunn Choi
131aa5dd15
Composable actions in --bind
...
Close #816
2017-01-22 02:32:49 +09:00
Junegunn Choi
62ab8ece5e
0.16.1
2017-01-16 12:27:40 +09:00
Junegunn Choi
8e2e63f9b9
Propertly fill window with background color
...
Close #805
2017-01-16 12:27:32 +09:00
Junegunn Choi
f96173cbe4
Add -L flag to the default find command
...
Close #781
2017-01-16 12:01:58 +09:00
Amos Bird
11015df52f
Add half-page-{up,down} actions ( #784 )
2017-01-16 11:58:13 +09:00
Junegunn Choi
4bece04207
0.16.0
2017-01-16 02:39:37 +09:00
Junegunn Choi
ede7bfb901
Optimize LightRenderer for slow terminals
2017-01-16 02:26:36 +09:00
Junegunn Choi
e0036b5ad2
Add --filepath-word option
...
Close #802
2017-01-15 19:42:28 +09:00
Junegunn Choi
4ecb7f3a16
Replace --normalize with --literal and enable normalization by default
...
Ref #790
2017-01-15 13:22:09 +09:00
Junegunn Choi
03f5ef08c8
Use crypto/ssh/terminal instead of external stty command
2017-01-15 13:10:59 +09:00
Junegunn Choi
d64828ce6d
Print error message to stderr on unexpected exit
2017-01-11 23:01:56 +09:00
Junegunn Choi
2aa739be81
Fix bug where occurrence of the pattern in header lines are highlighted
2017-01-11 22:47:26 +09:00
Junegunn Choi
9977a3e9fc
Make preview renderer suspend early on line wrap
2017-01-11 22:13:40 +09:00
Junegunn Choi
f8082bc53a
No need to use /bin/sh to execute stty and tput
2017-01-11 21:48:36 +09:00
Junegunn Choi
996dcb14a3
Make fzf immediately quit when failed to read /dev/tty
...
Close #798
2017-01-11 02:12:32 +09:00
Junegunn Choi
0c127cfdc1
No need to query row position of the cursor if mouse is disabled
2017-01-10 22:55:55 +09:00
Junegunn Choi
ae274158de
Add experimental support for 24-bit colors
2017-01-10 02:16:12 +09:00
Junegunn Choi
340af463cd
Add --min-height option for percent --height
2017-01-10 01:04:36 +09:00
Junegunn Choi
78a3f81972
Do not use \e[s and \e[u
...
Excerpt from http://www.tldp.org/HOWTO/Bash-Prompt-HOWTO/x361.html :
> - Save cursor position:
> \033[s
> - Restore cursor position:
> \033[u
>
> The latter two codes are NOT honoured by many terminal emulators. The
> only ones that I'm aware of that do are xterm and nxterm - even though
> the majority of terminal emulators are based on xterm code. As far as
> I can tell, rxvt, kvt, xiterm, and Eterm do not support them. They are
> supported on the console.
They are also unsupported by Neovim terminal.
2017-01-09 19:09:30 +09:00
Junegunn Choi
6c6c0a4778
Make util.RuneWidth return 1 for non-displayable characters
...
Fix line wrapping in preview window
2017-01-09 10:49:05 +09:00
Junegunn Choi
a16d8f66a9
Normalize pattern string before passing it to Algo function
2017-01-09 09:52:17 +09:00
Junegunn Choi
45793d75c2
Add --normalize option to normalize latin script characters
...
Close #790
2017-01-09 03:12:23 +09:00
Junegunn Choi
9d545f9578
Fix update of multi-select pointer
2017-01-08 02:29:31 +09:00
Junegunn Choi
a30999a785
Prepare for 0.16.0 release
2017-01-08 02:09:56 +09:00
Junegunn Choi
1448d631a7
Add --height option
2017-01-08 02:09:56 +09:00
Junegunn Choi
7b0d9e1e07
Apply --tabstop to preview window
2016-12-27 01:35:09 +09:00
Junegunn Choi
16b5902aa2
Fix Linux build ( #756 )
2016-12-05 02:27:38 +09:00
Junegunn Choi
a442fe0fd0
Truncate long lines in preview window
...
Add `:wrap` to --preview-window to wrap lines instead
Close #756
2016-12-05 02:13:59 +09:00
Junegunn Choi
67026718c1
Add BUILD.md
2016-11-27 15:16:53 +09:00
Junegunn Choi
a71c471405
0.15.9
2016-11-26 12:36:24 +09:00
Junegunn Choi
3858086047
Always print scroll indicator in preview window
2016-11-26 12:34:16 +09:00
Junegunn Choi
dffef3d9f3
Update build instructions for ncurses 6 and tcell
...
Close #357
Close #738
2016-11-26 11:41:57 +09:00
Junegunn Choi
de1c6b8727
[tcell] 24-bit color support
...
TAGS=tcell make install
printf "\x1b[38;2;100;200;250mTRUECOLOR\x1b[m\n" |
TERM=xterm-truecolor fzf --ansi
2016-11-26 00:36:38 +09:00
Junegunn Choi
6f17f412ba
Workaround for rendering glitch in case of short-lived input process
...
: | fzf --preview 'echo foo'
2016-11-25 14:05:37 +09:00
Junegunn Choi
746961bf43
[ncurses6] Suppress tui.Italic on ncurses 5
2016-11-24 13:42:14 +09:00
Junegunn Choi
182a6d99fd
[ncurses6] Support italics
2016-11-24 00:13:10 +09:00
Junegunn Choi
af31088481
[ncurses6] Use wcolor_set to support more than 256 color pairs
...
To build fzf with ncurses 6 on macOS:
brew install homebrew/dupes/ncurses
LDFLAGS="-L/usr/local/opt/ncurses/lib" make install
2016-11-24 00:12:43 +09:00
Junegunn Choi
43425158f4
Make escape delay configurable via ncurses standard $ESCDELAY
...
Also reduce the default delay to 50ms. We should not set it to 0ms as it
breaks escape sequences on WSL. If 50ms is not enough, one can increase
the delay by setting $ESCDELAY to a larger value.
2016-11-23 02:28:03 +09:00
Junegunn Choi
8524ea7441
Do not ignore resize event from ncurses and tcell
2016-11-23 01:58:46 +09:00
Junegunn Choi
6a65006f55
0.15.8
2016-11-19 23:13:26 +09:00
Junegunn Choi
d75ed841a9
Fix --no-bold on --no-color
2016-11-19 23:12:28 +09:00
Junegunn Choi
3cd2547e91
Reduce ESC delay to 100ms
2016-11-19 23:03:27 +09:00
Junegunn Choi
8c661d4e8c
Revamp escape sequence processing for WSL
...
Also add support for alt-[0-9] and f1[12]
2016-11-19 22:42:15 +09:00
Junegunn Choi
4b332d831e
Add --no-bold option
2016-11-15 23:57:32 +09:00
Junegunn Choi
dc557c0d4c
Update ANSI processor to handle more VT-100 escape sequences
...
The updated regular expression should include not all but most of the
frequently used ANSI sequences. Close #735 .
2016-11-14 02:15:23 +09:00
Junegunn Choi
a2beb159f1
0.15.7
2016-11-09 12:41:46 +09:00
Junegunn Choi
7ce427ff47
Fix panic when color is disabled and header lines contain ANSI colors
...
Close #732
2016-11-09 12:05:45 +09:00
Junegunn Choi
a221c672fb
0.15.6
2016-11-09 01:45:27 +09:00
Junegunn Choi
f87d382ec8
Fix --color=bw on tcell build
2016-11-09 01:45:06 +09:00
Junegunn Choi
2192d8d816
GOOS=windows make release
2016-11-08 03:32:41 +09:00
Junegunn Choi
d206949f62
Wait for additional keys after ESC for up to 100ms
...
Close #661
2016-11-08 03:07:26 +09:00
Junegunn Choi
898d8d94c8
Fix issues in tcell renderer and Windows build
...
- 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-08 02:06:34 +09:00
Michael Kelley
26895da969
Implement tcell-based renderer
2016-11-07 02:32:14 +09:00
Junegunn Choi
0c573b3dff
Prepare for termbox/windows build
...
`TAGS=termbox make` (or `go build -tags termbox`)
2016-11-07 02:32:14 +09:00
Junegunn Choi
06a6ad8bca
Update ANSI processor to ignore ^N and ^O
...
This reverts commit 02c6ad0e59
.
2016-10-30 12:29:29 +09:00
Junegunn Choi
02c6ad0e59
Strip ^N and ^O from preview output
...
https://github.com/junegunn/fzf/issues/391#issuecomment-257090266
e.g. fzf --preview 'printf "$(tput setaf 2)foo$(tput sgr0)bar\nbar\n"'
2016-10-30 11:43:06 +09:00
Junegunn Choi
9f321cbe13
Fix header lines being cleared on toggle-preview
...
Close #722
2016-10-28 03:13:50 +09:00
Junegunn Choi
9f30ca2923
0.15.5
2016-10-23 22:00:32 +09:00
Junegunn Choi
0a8d2996dc
Set foreground color without affecting background
...
Close #712
2016-10-21 19:35:59 +09:00
Junegunn Choi
cfdb00b971
Allow other options to follow --color without spec
2016-10-21 19:20:16 +09:00
Junegunn Choi
0541c0dbcf
Use relative position instead of absolute distance for --tiebreak=end
...
Fix unintuitive result where `*fzf*/install` is ranked higher than
`fzf/src/fzf/*fzf*-linux_386` on --tiebreak=end.
2016-10-18 01:13:57 +09:00
Junegunn Choi
3222d62ddf
0.15.4
2016-10-04 02:17:36 +09:00
Junegunn Choi
aeb957a285
Use exact match by default for inverse search term
...
This is a breaking change, but I believe it makes much more sense. It is
almost impossible to predict which entries will be filtered out due to
a fuzzy inverse term. You can still perform inverse-fuzzy-match by
prepending `!'` to the term.
| Token | Match type | Description |
| -------- | -------------------------- | --------------------------------- |
| `sbtrkt` | fuzzy-match | Items that match `sbtrkt` |
| `^music` | prefix-exact-match | Items that start with `music` |
| `.mp3$` | suffix-exact-match | Items that end with `.mp3` |
| `'wild` | exact-match (quoted) | Items that include `wild` |
| `!fire` | inverse-exact-match | Items that do not include `fire` |
| `!.mp3$` | inverse-suffix-exact-match | Items that do not end with `.mp3` |
2016-10-04 02:09:03 +09:00
Junegunn Choi
154cf22ffa
Display scroll indicator in preview window
2016-10-04 01:40:45 +09:00
Junegunn Choi
51f532697e
Adjust maximum scroll offset
...
It was possible that a few lines at the bottom may not be visible if
there are lines above that span multiple lines.
2016-10-04 01:39:48 +09:00
Junegunn Choi
3066b206af
Support field index expressions in preview and execute action
...
Also close #679 . The placeholder for the current query is {q}.
2016-10-03 14:33:28 +09:00
Junegunn Choi
04492bab10
Use unicode.IsSpace to cover more whitespace characters
2016-09-29 22:40:22 +09:00
Junegunn Choi
8b0d0342d4
0.15.3
2016-09-29 03:05:20 +09:00
Junegunn Choi
957c12e7d7
Fix SEGV when trying to render preview but the window is closed
...
Close #677
2016-09-29 02:53:05 +09:00
Junegunn Choi
3b5ae0f8a2
Fix failing unit tests on ANSI attributes
2016-09-29 01:06:47 +09:00
Junegunn Choi
1fc5659842
Add support for more ANSI color attributes ( #674 )
...
Dim, underline, blink, reverse
2016-09-29 00:54:27 +09:00
Junegunn Choi
1bc223d4b3
0.15.2
2016-09-25 22:20:43 +09:00
Junegunn Choi
bef405bfa5
Ignore VT100-related escape codes
2016-09-25 19:03:08 +09:00
Junegunn Choi
0612074abe
Support high intensity colors
...
Close #671
2016-09-25 18:11:35 +09:00
Junegunn Choi
8c8b5b313e
Add preview-page-up and preview-page-down actions
2016-09-25 04:12:44 +09:00
Junegunn Choi
66d55fd893
Make preview windows scrollable
...
Close #669
You can use your mouse or binadble preview-up and preview-down actions
to scroll the content of the preview window.
fzf --preview 'highlight -O ansi {}' --bind alt-j:preview-down,alt-k:preview-up
2016-09-25 02:02:00 +09:00
Junegunn Choi
7fa5e6c861
0.15.1
2016-09-21 01:28:24 +09:00
Junegunn Choi
00f96aae76
Avoid rendering delay when displaying extremely long lines
...
Related #666
2016-09-21 01:23:41 +09:00
Junegunn Choi
a749e6bd16
Fix temp directory in a test case
2016-09-21 01:15:35 +09:00
Junegunn Choi
791076d366
Fix panic when pattern occurs after 2^15-th column
...
Fix #666
2016-09-21 01:15:06 +09:00
Junegunn Choi
37f43fbb35
Add --print0 option
...
Related: #660
2016-09-19 01:15:38 +09:00
Junegunn Choi
401a5fd5ff
Printable character in --expect set should not affect --print-query
2016-09-18 14:34:50 +09:00
Junegunn Choi
1854922f0c
Truncate the query string if it's too long
...
Use hard-coded limit to keep it simple. An alternative is to dynamically
calculate the width of the visible area and use it as the limit, but it
can cause unwanted truncation of the query on screen resize/split.
2016-09-18 14:34:48 +09:00
Junegunn Choi
2fc7c18747
Revise ranking algorithm
2016-09-18 14:34:46 +09:00
Junegunn Choi
8ef2420677
Update README
2016-09-13 04:12:03 +09:00
ishanray
f44d40f6b4
Update algo.go
2016-09-10 23:40:55 +04:00
Junegunn Choi
b86838c2b0
0.13.5
2016-08-21 05:02:45 +09:00
Junegunn Choi
1f7d1f9b15
Update Centos Dockerfile to use Go 1.7
2016-08-21 04:54:53 +09:00
Junegunn Choi
f8fdf9618a
No need to cache the result in filtering mode (--filter)
2016-08-20 02:06:57 +09:00
Junegunn Choi
827a83efbc
Remove Offset slice from Result struct
2016-08-20 01:53:32 +09:00
Junegunn Choi
608c416207
Add missing sources
2016-08-19 03:27:42 +09:00
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
2016-08-19 02:39:32 +09:00
Junegunn Choi
f7f01d109e
Set the upper limit of the number of search go routines
2016-08-19 01:55:38 +09:00
Junegunn Choi
01ee335521
Remove duplicate code
2016-08-18 03:11:54 +09:00
Junegunn Choi
0e0de29b87
Inline function calls in tight loops
...
By only using leaf functions
2016-08-18 01:48:52 +09:00
Junegunn Choi
babf877fd6
Increase the number of go routines for search
...
Sort performance increases as the size of each sublist decreases (n in
nlog(n) decreases). Merger is then responsible for merging the sorted
lists in order, and since in most cases we are only interesed in the
matches in the first page on the screen so the overhead in the process
is negligible.
2016-08-18 01:46:05 +09:00
Junegunn Choi
935272824e
Setting GOMAXPROCS is no longer needed
...
https://golang.org/doc/go1.5
2016-08-17 02:21:33 +09:00
Junegunn Choi
3a9532c8fd
Increase read buffer size to 64KB
2016-08-16 02:06:15 +09:00
Junegunn Choi
c4c92142a6
0.13.4
2016-08-14 18:10:21 +09:00
Junegunn Choi
d4b6338102
Lint
2016-08-14 17:51:34 +09:00
Junegunn Choi
8df7d962e6
Improve rendering time of long lines
2016-08-14 17:44:11 +09:00
Junegunn Choi
41e916a511
[perf] evaluateBonus can start from sidx - 1
2016-08-14 11:58:47 +09:00
Junegunn Choi
d9c8a9a880
[perf] Remove memory copy when using string delimiter
2016-08-14 04:30:55 +09:00
Junegunn Choi
ddc7bb9064
[perf] Optimize AWK-style tokenizer for --nth
...
Approx. 50% less memory footprint and 40% improvement in query time
2016-08-14 02:19:29 +09:00
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.
2016-08-14 00:41:30 +09:00
Junegunn Choi
1e74dbb937
:hidden property of previous --preview-window should be cleared
...
Fix #636 . Patch suggested by @edi9999.
2016-08-12 01:16:59 +09:00
Junegunn Choi
fccc93176b
0.13.3
2016-07-16 01:06:53 +09:00
Junegunn Choi
a9a29dff4f
Fix duplicate rendering of the last line in preview window
2016-07-15 23:24:14 +09:00
Junegunn Choi
5759d50d4a
0.13.2
2016-06-16 02:16:13 +09:00
Junegunn Choi
e455836cc9
Fix race condition where preview window is not properly cleared
2016-06-15 13:15:17 +09:00
Junegunn Choi
8a90f26c8a
0.13.1
2016-06-14 21:53:00 +09:00
Junegunn Choi
24e1fabf2e
Do not process ANSI codes in --preview output at once
...
Close #598
2016-06-14 21:52:47 +09:00
Junegunn Choi
3e1d6a7bcf
0.13.0
2016-06-12 02:15:11 +09:00
Junegunn Choi
2bbc12063c
Add --preview and --preview-window
...
Close #587
2016-06-11 19:59:12 +09:00
Junegunn Choi
b8737b724b
Ignore controls chars for bracketed paste mode
...
Close #594
2016-06-11 12:14:34 +09:00
Junegunn Choi
56fb2f00b3
Use single-quoted strings in execute action
...
Close #590
2016-06-08 00:54:21 +09:00
Junegunn Choi
2f364c62f4
0.12.2
2016-05-19 01:55:54 +09:00
Junegunn Choi
7ed9f83662
Validate jump label characters
...
Also extend default jump labels
2016-05-19 01:46:22 +09:00
Junegunn Choi
f498a9b3fb
Revert version number
2016-05-18 22:47:57 +09:00
Junegunn Choi
13330738b8
Do not match jump labels beyond the screen limit
2016-05-18 22:45:34 +09:00
Junegunn Choi
e53535cc61
Update default jump labels
2016-05-18 22:44:31 +09:00
Junegunn Choi
c62fc5e75c
More named keys: F5 ~ F10, ALT-/
2016-05-18 22:25:09 +09:00
Junegunn Choi
70245ad98c
[make] Reduce the size of the binaries with -ldflags -w
...
Related: #555
2016-05-18 13:29:27 +09:00
Junegunn Choi
6d235bceee
Add jump and jump-accept actions for --bind
...
jump and jump-accept implement EasyMotion-like movement in fzf.
Suggested by @mhrebenyuk. Close #569 .
2016-05-18 02:10:03 +09:00
Junegunn Choi
9078688baf
Add print-query action for --bind
...
Close #571
2016-05-13 00:51:15 +09:00
Junegunn Choi
dd4be1da38
Allow alt-enter and alt-space for --bind ( #571 )
2016-05-13 00:43:50 +09:00
Junegunn Choi
88a80e3c2c
Determine 256-color capability using tigetnum("colors")
...
Close #570
2016-05-11 01:07:06 +09:00
Junegunn Choi
7f64fba80f
Update Makefile to allow build on i686 ( #555 )
2016-04-26 01:49:02 +09:00
Gene Pavlovsky
d1b402a23c
Fix missing reference to UNAME_M
...
The `Build on $(UNAME_M) is not supported, yet` message was referencing an undefined UNAME_M. Fixed that.
2016-04-24 21:24:10 +03:00
Junegunn Choi
35a9aff8e1
0.12.1
2016-04-25 01:23:52 +09:00
Junegunn Choi
85ef3263fc
Fix incorrect cache reference in --exact mode ( #547 )
...
When we prepend a single quote to our query in --exact mode, we are not
supposed to limit the scope of the new search to the previous
exact-match result.
2016-04-24 03:43:24 +09:00
Junegunn Choi
4bde8de63f
Apply new ranking algorithm to exact match as well
2016-04-23 19:48:06 +09:00
Junegunn Choi
879ead210f
0.11.2
2016-04-16 14:37:16 +09:00
Junegunn Choi
2f6d23b91e
Enhanced ranking algorithm
...
Based on the patch by Matt Westcott (@mjwestcott).
But with a more conservative approach:
- Does not use linearly increasing penalties; It is agreed upon that we
should prefer matching characters at the beginnings of the words, but
it's not always clear that the relevance is inversely proportional to
the distance from the beginning.
- The approach here is more conservative in that the bonus is never
large enough to override the matchlen, so it can be thought of as the
first implicit tiebreak criterion.
- One may argue the change breaks the contract of --tiebreak, but the
judgement depends on the definition of "tie".
2016-04-16 14:33:38 +09:00
Junegunn Choi
74d1694be9
Fix #541 - Print double-click when --expect=double-click is set
2016-04-14 04:18:59 +09:00
Matt Westcott
2ca704405a
Fix algorithm tests
2016-04-01 00:06:09 +01:00
Junegunn Choi
6ea760a336
Make 32-bit linux binary (partially) static ( #523 )
2016-03-15 20:17:29 +09:00
Junegunn Choi
b47ab633e2
0.11.4
2016-03-03 01:57:28 +09:00
Junegunn Choi
2ccdf21a1f
Add --hscroll-off=COL option
...
Close #513
2016-03-02 03:14:35 +09:00
Junegunn Choi
1b9ca314b8
Update build script
...
- GOPATH is no longer required
- fzf repository does not have to be in GOPATH
- Build Linux binary with Go 1.5.3
2016-02-20 21:16:24 +09:00
Junegunn Choi
e72a360337
Minor refactoring
...
- Slightly more efficient processing of Options
- Do not return reference type arguments that are mutated inside the
function
- Use util.Constrain function when appropriate
2016-02-18 01:46:18 +09:00
Sergey Vlasov
e3401a0645
Go 1.3 compatibility
2016-02-16 11:28:40 +02:00
Junegunn Choi
40d934e378
0.11.3
2016-02-07 11:00:10 +09:00
Junegunn Choi
e95d82748f
Use $SHELL to start $FZF_DEFAULT_COMMAND ( #481 )
2016-02-07 01:49:29 +09:00
Junegunn Choi
30bd0b53db
Fix #481 - Use $SHELL instead of sh in execute action
...
Note that $SHELL only points to the default shell instead of the current
shell. If you're on a non-default shell, you might want to override the
value like follows.
SHELL=zsh fzf --bind 'enter:execute:echo $ZSH_VERSION; sleep 1'
2016-02-03 04:46:02 +09:00
Junegunn Choi
1893eca41a
Handle SIGTERM gracefully ( #482 )
2016-02-02 17:51:21 +09:00
Junegunn Choi
8695b5e319
Reduce the initial delay when --tac is not given
...
fzf defers the initial rendering of the screen up to 100ms if the input
stream is ongoing to prevent unnecessary redraw during the initial
phase. However, 100ms delay is quite noticeable and might give the
impression that fzf is not snappy enough. This commit reduces the
maximum delay down to 20ms when --tac is not specified, in which case
the input list quickly fills the entire screen.
2016-01-16 18:07:50 +09:00
Junegunn Choi
95970164ad
0.11.2
2016-01-14 02:54:08 +09:00