Commit Graph

521 Commits (f0fe79dd3bb4b782ad6040c970b4bfc818729f05)

Author SHA1 Message Date
Junegunn Choi f0fe79dd3b
0.17.4 6 years ago
Akinori MUSHA daa1958f86 Provide an option to reverse items only (#1267) 6 years ago
Junegunn Choi 2c26f02f5c
Improve preview window update events
- Update preview window even if there is no match for the query string
  if any of the placeholder expressions evaluates to a non-empty string.
- Also, if the command template contains {q}, preview window will be
  updated if the query string changes even though the focus remains on
  the same item.

An example:

    git log --oneline --color=always |
       fzf --reverse --ansi --preview \
       '[ -n {1} ] && git show --color=always {1} || git show --color=always {q}'

Close #1307
6 years ago
Junegunn Choi 9e753a0d44
Implement ttyname() in case /dev/tty is not available
Close #1266
Close #447
7 years ago
Junegunn Choi f57920ad90
Do not print non-displayable characters
fzf used to print non-displayable characters (ascii code < 32) as '?',
but we will simply ignore those characters with this patch, just like
our terminals do.

\n and \r are exceptions. They will be printed as a space character.

TODO: \H should delete the preceding character, but this is not implemented.

Related: #1253
7 years ago
Junegunn Choi 7dbbbef51a
Add support for alt-{up,down,left,right} keys
Close #1234
7 years ago
ZDNoFYVe 43345fb642 Implement flag for preserving whitespace around field (#1242) 7 years ago
Ryan Boehning 21b94d2de5
Make fzf pass go vet
Add String() methods to types, so they can be printed with %s. Change
some %s format specifiers to %v, when the default string representation
is good enough. In Go 1.10, `go test` triggers a parallel `go vet`. So
this also makes fzf pass `go test`.

Close #1236
Close #1219
7 years ago
Junegunn Choi 417bca03df
Add shift-up and shift-down
For now, they are respectively bound to preview-up and preview-down
by default (TBD).

Not available on tcell build.

Close #1201
7 years ago
Jan Edmund Lazo 7f0caf0683 Update Windows default command to print relative paths (#1200) 7 years ago
Junegunn Choi 390b49653b
0.17.3 7 years ago
Junegunn Choi 9c47739c0e
Fix panic when replace-query is triggered on empty result set 7 years ago
Junegunn Choi 04aa2992e7
Revert "0.17.2"
This reverts commit 2f1edeff78.
7 years ago
Junegunn Choi 2f1edeff78
0.17.2 7 years ago
Junegunn Choi 5a7b41a2cf
Add accept-non-empty action
'accept-non-empty' is similar to 'accept' (which is bound to 'enter' and
'double-click' by default) but it prevents fzf from exiting without any
selection.

Close #1162
7 years ago
Junegunn Choi c20954f020
Add replace-query action
replace-query action replaces the query string with the current
selection. If the selection is too long, it will be truncated.

If the line contains meta-characters of fzf search syntax, it is
possible that the line is no longer included in the updated result.

e.g.

  echo '!hello' | fzf --bind ctrl-v:replace-query

Close #1137
7 years ago
Junegunn Choi f6b1962056
Inject $LINES and $COLUMNS when running preview command
Close #1168
7 years ago
Junegunn Choi b3b101a89c
Support binding of left-click and right-click
left-click and right-click are respectively bound to "ignore" and
"toggle" (after implicitly moving the cursor) by default.

Close #1130
7 years ago
Junegunn Choi 85a75ee035
Revert default command: find with -fstype required
In #1061 we changed the default command to retry with a simpler find
command with fewer arguments if the first find command failed. This was
to support stripped-down verions of find that do not support -fstype
argument.

However, this caused an unwanted side-effect of yielding duplicate
entries when the first command failed after producing some lines.

We revert the change in this commit, so the default command will not
work with find without -fstype support. But we now print better error
message in that case so that the user can set up a working
$FZF_DEFAULT_COMMAND.

Close #1120 #1167
7 years ago
Junegunn Choi 0b33dc6ce1
0.17.1 7 years ago
Junegunn Choi 64a6ced62e
Do not immediately check --height option on Windows (#1082) 7 years ago
Junegunn Choi 438f6c96cd
Fix compilation error of Windows binary 7 years ago
Jan Edmund Lazo c4185e81e8
Fix ExecCommandWith for cmd.exe in Windows (#1072)
Close #1018

Run the command as is in cmd.exe with no parsing and escaping.
Explicity set cmd.SysProcAttr so execCommand does not escape the command.
Technically, the command should be escaped with ^ for special characters,
including ". This allows cmd.exe commands to be chained together.

See https://github.com/neovim/neovim/pull/7343#issuecomment-333350201

This commit also updates quoteEntry to use strings.Replace instead of
strconv.Quote which escapes more than \ and ".
7 years ago
Junegunn Choi ee40212e97
Update FZF_DEFAULT_COMMAND
- Use bash for `set -o pipefail`
- Fall back to simpler find command when the original command failed

Related: #1061
7 years ago
Junegunn Choi e1582b8323
Clean up renderer code
Remove code that is no longer relevant after the removal of ncurses
renderer. This commit also fixes background color issue on tcell-based
FullscreenRenderer (Windows).
7 years ago
Junegunn Choi 7cfa6f0265
Fix custom foreground color inside preview window (addendum)
This fixes foreground color inside preview window when the text has ANSI
attributes except for foreground color.

Close #1046
7 years ago
Junegunn Choi e3973c74e7
Fix custom foreground color inside preview window
Close #1046
7 years ago
Junegunn Choi e3e7b3360c
Delete ncurses implementation 7 years ago
Junegunn Choi e89eebb7ba
0.17.0 7 years ago
Junegunn Choi fee404399a
Make --expect additive
Similarly to --bind or --color.

--expect used to replace the previously specified keys, and
fzf#wrap({'options': '--expect=f1'}) wouldn't work as expected. It
forced us to come up with some ugly hacks like the following:

13b27c45c8/autoload/fzf/vim.vim (L1086)
7 years ago
Junegunn Choi 6b4805ca1a
Optimize rank comparison on x86 (little-endian) 7 years ago
Junegunn Choi 159699b5d7
Remove an unnecessary code branch 7 years ago
Junegunn Choi af809c9661
Minor refactorings 7 years ago
Junegunn Choi 71fdb99a07
Remove bound checkings in inner loops 7 years ago
Junegunn Choi 55ee4186aa
Ignore EvtReadNew if EvtReadFin is already set 7 years ago
Junegunn Choi 941b0a0ff7
Minor optimization of FuzzyMatchV2
Calculate the first row of the score matrix during phase 2
7 years ago
Junegunn Choi 6aae12288e
Extract debug code from FuzzyMatchV2 7 years ago
Junegunn Choi 302cc552ef
Remove unused clear arguments of alloc16 and alloc32 7 years ago
Junegunn Choi a2a4df0886
Pass util.Chars by pointer 7 years ago
Junegunn Choi 87874bba88
Remove redundant read event when --sync is used 7 years ago
Junegunn Choi c304fc4333
Delay slab allocation 7 years ago
Junegunn Choi 6977cf268f
Limit search scope of uppercase letter 7 years ago
Junegunn Choi 931c78a70c
Short-circuit ANSI processing if no ANSI codes are found
Rework of 656963e. Makes --ansi processing around 20% faster on plain
strings without ANSI codes.
7 years ago
Junegunn Choi 8d23646fe6
Revert "Short-circuit ANSI processing if no ANSI codes are found"
This reverts commit 656963e018.
7 years ago
Junegunn Choi 656963e018
Short-circuit ANSI processing if no ANSI codes are found 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 6bc592e6c9
Update FuzzyMatchV1 to use skip optimization used in V2 7 years ago
Junegunn Choi 6c76d8cd1c
Disallow escaping of meta characters except for spaces
https://github.com/junegunn/fzf/issues/444#issuecomment-321719604
7 years ago