Commit Graph

289 Commits (98ee5e651a38acb03c7f947a9f543b2ee72d9ab4)

Author SHA1 Message Date
Junegunn Choi 569be4c6c9
[vim] Allow 'border': 'no' to be consistent with --color=no 4 years ago
Junegunn Choi 0d5f862daf
0.24.0 4 years ago
Junegunn Choi 51dfacd542
Merge branch 'devel' into master 4 years ago
Junegunn Choi de3d09fe79
fixup 4 years ago
nekowasabi 407205e52b
Fix: barbled multibyte text(exe. Japanese). 4 years ago
Junegunn Choi 607081bbaa
[vim] Download latest binary to meet version requirement 4 years ago
Junegunn Choi e73383fbbb
[vim] Add 'none' option for popup border 4 years ago
Junegunn Choi 2e8e63fb0b
Add more --border options
Instead of drawing the window border in Vim using an extra window,
extend the --border option so that we do can it natively.

Close #2223
Fix #2184
4 years ago
Junegunn Choi c60ed17583
[vim] Change the default layout to use popup window
The new default is

  { 'window' : { 'width': 0.9, 'height': 0.6, 'highlight': 'Normal' } }

The default highlight group for the border of the popup window is
'Comment', but 'Normal' seems to be a safer choice.

If you prefer the previous default, add this to your Vim configuration file:

  let g:fzf_layout = { 'down': '40%' }

(fzf will fall back to this if popup window is not supported)
4 years ago
Junegunn Choi 9e96073128
[vim] Expose fzf#exec() function 4 years ago
Junegunn Choi 0db65c22d3
[vim] Allow specifying popup width and height in absolute integer value
Fix https://github.com/junegunn/fzf.vim/issues/1116
4 years ago
yuki yano c0a83b27eb
Fix failure of w:fzf_pushd unlet depending on timing (#2119) 4 years ago
Yanlin Sun f79b1f71b8
[vim] Preserve current directory in case someone changes it (#2096)
Preserve current directory in case current directory is changed by others
after the call of s:open

Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
4 years ago
Junegunn Choi bdde69d011
[vim] Disable height calculation when 'preview' is found in the option string
Fix #2093

And we'll phase out height specification with `~` prefix.
4 years ago
Jan Edmund Lazo 3e36f2b0ac
[nvim] Fix floating window requirements (#2089)
Vim 8.1.2371
05ad5ff0ab

Nvim 0.4.0
9a1675b065
4 years ago
Junegunn Choi 07a03b3e73
[vim] Make fzf#wrap support v:true and v:false as well
Fix #2087
4 years ago
lacygoill ace92ba281
[vim] Don't set wfw, wfh, bh options when opening popup (#2042)
* No need to restore &wfw and &wfh when using popup window

Co-authored-by: lacygoill <lacygoill@lacygoill.me>
Co-authored-by: Junegunn Choi <junegunn.c@gmail.com>
4 years ago
ichizok d631c76e8d
[vim] Don't start extra process when opening popup (#2000)
Fix #2038
4 years ago
Junegunn Choi 71e573d082
[vim] Add 'tmux' layout option to use fzf-tmux
e.g.

  if exists('$TMUX')
    let g:fzf_layout = { 'tmux': '-p90%,60%' }
  else
    let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }
  endif
4 years ago
lacygoill 0f5c6e8f04
[vim] Fix issue with multiple popups (#1927)
Invoking fzf from an existing Vim popup terminal is a special case.
It requires some new code to avoid E994 from being raised and the user
being stuck in a non-closable popup window.

Fix #1916
4 years ago
Junegunn Choi 242c0db26b
[vim] Fix height calculation
Fix #1418

e.g.
  call fzf#run({'source': [1, 2, 3], 'down': '~50%', 'options': "--border --header $'1\n2'"})
4 years ago
Junegunn Choi 6db15e8693
[vim] Throw error when popup support is unavailable
https://github.com/junegunn/fzf.vim/issues/943
https://github.com/junegunn/fzf.vim/issues/959
4 years ago
Junegunn Choi b57e6cff7e
[vim] Pick up fzf-tmux on $PATH when bin/fzf-tmux is not found
Close #1874
4 years ago
Junegunn Choi 5b99f19dac
[vim] Remove unnecessary statement 4 years ago
Junegunn Choi 6c03571887
[vim] Add fzf#install() for downloading fzf binary 4 years ago
Junegunn Choi 4fb410a93c
[vim] More border styles
e.g.

  let g:fzf_layout = { 'window': { 'width': 0.4, 'height': 1, 'xoffset': 0, 'border': 'right' } }
  let g:fzf_layout = { 'window': { 'width': 0.4, 'height': 1, 'xoffset': 1, 'border': 'left' } }
  let g:fzf_layout = { 'window': { 'width': 1, 'height': 0.5, 'yoffset': 1, 'border': 'top' } }
  let g:fzf_layout = { 'window': { 'width': 1, 'height': 0.5, 'yoffset': 0, 'border': 'bottom' } }
4 years ago
Junegunn Choi 5e1db9fdd3
[vim] Do not pipe FZF_DEFAULT_COMMAND
Revert the change introduced in #552. It seems that the startup time
difference between bash and fish is not much of an issue now.

  > time bash -c 'date'
  Thu Feb 13 21:15:03 KST 2020

  real    0m0.008s
  user    0m0.003s
  sys     0m0.003s

  > time fish -c 'date'
  Thu Feb 13 21:15:05 KST 2020

  real    0m0.014s
  user    0m0.007s
  sys     0m0.006s

When we explicitly *pipe* $FZF_DEFAULT_COMMAND instead of making fzf
internally start the process ($FZF_DEFAULT_COMMAND | fzf), fzf may hang
if the input process doesn't quickly process SIGPIPE and abort.

Also, fzf#vim#grep temporarily swaps $FZF_DEFAULT_COMMAND instead of
setting 'sink' so fzf can kill the default command on 'reload'.

https://github.com/junegunn/fzf.vim/issues/927

However, because of the "pipe conversion", the trick wasn't working as
expected.

467c327788/autoload/fzf/vim.vim (L720-L726)

We can go even further and always set $FZF_DEFAULT_COMMAND instead of
piping source command.
4 years ago
Junegunn Choi 9d7480ae3c
[vim] Use install.ps1 to download binary on Windows
Credits to @jiangjianshan
4 years ago
Kyoichiro Yamada 001d116884 [vim] Consider ambiwidth for border (#1861)
Close #1856
Close #1857
4 years ago
Junegunn Choi 446df07b62
[vim] Border style for popup window (rounded | sharp | horizontal) 4 years ago
Junegunn Choi a859aa72ee
[vim] Add support for xoffset and yoffset options for popup
Close https://github.com/junegunn/fzf.vim/issues/942
4 years ago
Junegunn Choi 0896036266
[vim] Set &bufhidden=hide before starting terminal buffer 4 years ago
Junegunn Choi 7ceb58b2aa
[vim] Popup window support for both Vim and Neovim
e.g.
  let g:fzf_layout = { 'window': { 'width': 0.9, 'height': 0.6 } }

Based on the code from https://github.com/junegunn/fzf.vim/issues/821#issuecomment-581273191
by @lacygoill.
4 years ago
Jan Edmund Lazo e21b001116 [vim] Use iconv only if +iconv is enabled (#1813) 4 years ago
Jan Edmund Lazo 5da8bbf45a [vim] Encode list source to codepage (#1794) 5 years ago
Jan Edmund Lazo aa0e10ead7 [vim] Use cterm colors on Windows (#1793)
Truecolor does not work on default Windows terminal.
It is a problem in neovim GUIs.

https://github.com/sainnhe/edge/issues/5#issuecomment-565748240
5 years ago
msr1k a9906c7c29 Add MSYS2 support as a vim plugin (#1677)
* Add MSYS2 support as a vim plugin

Add &shellcmdflag and TERM environment variable treatment.

- Make &shellcmdflag `/C` when &shell turns into `cmd.exe`
- Delete %TERM% environment variable before fzf execution

* Change shellescape default value depending on s:is_win flag

* Make TERM environment empty only when gui is running

* Stop checking &shell in fzf#shellescape function

This funcion's behavior is controlled by only if it is Windows or not.
So there is no need to check &shell.

* Take neovim into consideration when to set shellcmdflag

* Add &shellxquote control
5 years ago
Junegunn Choi f68017d21e [windows/vim] Encode batchfile in current codepage
Backport https://github.com/junegunn/vim-plug/pull/913
5 years ago
Marco Hinz 16fc6862a8 [nvim] Handle SIGHUP in exit handler (#1749)
In recent Nvim versions, an "Error running ..." message is shown even for normal
use cases, such as:

    :Files
    <c-\><c-n>
    :close

Closing the window will :bwipeout! the terminal buffer, because fzf sets
bufhiden=wipe.

When deleting the terminal buffer while fzf is still running, Nvim sends SIGHUP.
This happens for quite some time already, but the bug only manifests since this
commit:

  https://github.com/neovim/neovim/commit/939d9053b

It's The Right Thing to do when the application exited due to a signal.

Before that commit, no "Error running ..." message was shown, because 1 (instead
of 128 + 1 == SIGHUP) was returned which the exit handler in fzf.vim treats as
"NO MATCH".
5 years ago
Junegunn Choi 6390140539
[vim/windows] Use chcp only if sed is in PATH
https://github.com/junegunn/vim-plug/pull/891
5 years ago
Junegunn Choi 3089880f18
[vim/windows] Fix chcp parsing for the current codepage
https://github.com/junegunn/vim-plug/pull/888
5 years ago
Junegunn Choi ab11b74be4
[vim] Output of chcp was not parsed correctly
By @gh4w and @janlazo

See 68b31a4a66
5 years ago
Junegunn Choi 80b5bc1b68
[vim] Shell-escape `--color` option generated by fzf#wrap
Fix https://github.com/junegunn/fzf.vim/issues/855
5 years ago
charlton1 c1dbc800e5 [vim] Fix name-based colors for GVim/8.0 w/o builtin terminal (#1634)
(i.e. spawn xterm)
5 years ago
Junegunn Choi e7d60aac9c
[vim] Do not restore cwd when autochdir is set and buffer changed
Close #1539
5 years ago
Junegunn Choi a0bfbdd49c
[vim] Increase window height by 2 when --border is set
Close #1535
5 years ago
Junegunn Choi 8c6fcee3ca
[vim] Fix directory switching around sink function
Close #1356

Related:
- #612
- https://github.com/junegunn/fzf.vim/issues/308
6 years ago
Junegunn Choi 13803d0dbb
[vim] Clear temporary window-local working directory
Close #1085
Close #1086
Close https://github.com/junegunn/fzf.vim/issues/678
6 years ago
Jan Edmund Lazo cce17ad0a0 [vim] Use CRLF in batchfile for multibyte codepage (#1289)
Close #1288
6 years ago
Junegunn Choi 6eac4af7db
[vim] Ignore Vim:Interrupt when "Abort" selected on E325
Close #1268
6 years ago
Junegunn Choi eb3afc03b5
[vim] Make list options compatible with layout options
Fix #1205
6 years ago
Junegunn Choi 5c34ab6692
[vim] Fix terminal buffer cleanup on Vim 8
Close #1172
7 years ago
Junegunn Choi 54a026525a
[vim] Remove unnecessary term_wait workaround
The issue is fixed in 1232624ae5
7 years ago
Jan Edmund Lazo 37d4015d56 [vim] Don't use :terminal on msys2 or Cygwin (#1155)
Close #1152

msys2 terminal Vim assumes that it runs in mintty
so `:terminal` uses `TERM=xterm`.
fzf doesn't support `TERM=xterm` on Windows.
7 years ago
Junegunn Choi c2614467cf
[neovim] Fix Neovim plugin to use terminal instead of --height
Close #1066
Close #1068
7 years ago
Junegunn Choi 077ae51f05
[vim] Use Vim 8 terminal when appropriate
Close #1055
7 years ago
Jan Edmund Lazo 79d2ef4616 [vim] Do not pathshorten prompt in cygwin (#1043)
Prevents the following case:
before pathshorten - /usr/bin
after pathshorten - /u/bin
piped to cmd.exe - U:/bin
7 years ago
Junegunn Choi 5edc3f755c
[vim] Update FZF command not set up lengthy prompt on narrow screen
Port of e7928d154a

Since :FZF does not enable preview window, we determine based on full
&columns instead of &columns / 2.
7 years ago
Jan Edmund Lazo 26d7896877 [vim] Bind Ctrl-J in Vim terminal to fix enter key
Temporary workaround for non-Windows environment

Reference:
https://github.com/vim/vim/issues/1998
https://github.com/junegunn/fzf/pull/1019#issuecomment-327008348
7 years ago
Jan Edmund Lazo fd6bc7308f [vim] Use s:execute_term in Windows
IMPORTANT:
cmd.exe and powershell are fine in default Windows terminal.
cmd.exe prompt is broken on ConEmu because it natively supports ucs-2 only.
utf-16 support is exclusive to .Net (ie. powershell).
utf-8 supports requires chcp, external program, but does not fix the cmd.exe prompt.
Use powershell on ConEmu to avoid corrupted text on display
7 years ago
Jan Edmund Lazo 6c41c95f28 [vim] s:execute_term works in GVim on Windows
Requirements:
- compiled with +terminal
- has patch-8.0.995
- has('gui_running') returns 1
7 years ago
Jan Edmund Lazo 446e04469d [neovim] use batchfile for s:execute_term in Windows 7 years ago
Michael Smith 5097e563df [neovim] Fix terminal buffer marker on Windows
Original Patch: a9bf29b65e
7 years ago
Jan Edmund Lazo c7ad97c641 [neovim] use terminal in Windows for v0.2.1+ 7 years ago
Junegunn Choi 48adad5454
[neovim] Set &shell to sh (again) after opening a new window
Close #1031
7 years ago
Jack O'Connor b27dc3eb17 [vim] Add parens around piped source commands (#1029)
Previously a command like `echo a && echo b` would get transformed into
`echo a && echo b | fzf`, which only pipes the output of the second
command. Adding parentheses around the source command avoids this issue,
and works on both Unix and Windows.
7 years ago
Junegunn Choi e825b07e85
[neovim] Allow running FZF in multiple windows
Close #1023
7 years ago
Jan Edmund Lazo 3399e39968 [vim] Escape backslashes in fzf#shellescape (#1021) 7 years ago
Junegunn Choi 2069bbc8b5
[vim] Allow Funcref in g:fzf_action
https://github.com/junegunn/fzf.vim/issues/185
7 years ago
Junegunn Choi 462c68b625
[vim] Fix issues with other plugins changing working directory
Close #1005
7 years ago
Jan Edmund Lazo 1fcc07e54e
[vim] Fix escape of backslash in s:shortpath
Close #1000
7 years ago
Junegunn Choi a2604c0963
[nvim] Disable number in fzf buffer
https://github.com/junegunn/fzf.vim/issues/396#issuecomment-317214036

One can override the setting on FileType fzf autocmd.
7 years ago
Junegunn Choi 7727ad43af
[vim] Use fnameescape to escape command line arguments
Fix https://github.com/junegunn/fzf.vim/issues/404

Thanks to @janlazo.
7 years ago
Jan Edmund Lazo 940214a1a2 [neovim] Fix lcd when fzf job exits on Windows (#970)
Related: #960 (relative filepaths)
7 years ago
Jan Edmund Lazo 68bd410159 [vim] Don't pipe FZF_DEFAULT_COMMAND in Windows (#969)
Related #960, #552
7 years ago
Junegunn Choi 5efdeccdbb
[vim] Expand 'dir' on Cygwin to handle Windows-style paths
See https://github.com/junegunn/fzf/pull/933#discussion_r120011934

Close https://github.com/junegunn/fzf.vim/pull/386
7 years ago
Jan Edmund Lazo 7e483b0c25 [vim] Add support for Cygwin (#933) 7 years ago
Junegunn Choi 773133c4ce
[vim] Allow running install --bin on Cygwin 7 years ago
Junegunn Choi 35d407021c
[vim] Replace invalid s:escape calls with fzf#shellescape 7 years ago
Junegunn Choi 076f49d447
[vim] Make sure to delete temporary batchfile on Windows 7 years ago
Junegunn Choi 0665fe0413
[vim] Remove unnecessary ternary expression
Related: https://github.com/junegunn/fzf.vim/issues/378
7 years ago
Jan Edmund Lazo 669a6fee40 [vim] Use utf-8 for cmd.exe (#929) 7 years ago
Jan Edmund Lazo 8aab0fc189 [vim] Replace s:fzf_shellescape and s:shellesc with fzf#shellescape (#916) 7 years ago
Junegunn Choi 3a5086796d
[vim] Prevent 'wildignore' from affecting expand() (#917) 7 years ago
Junegunn Choi 11300913a4
[vim] Do not expand s:fzf_go
expand() may return an empty string depending on the value of
&wildignore. Since expand('<sfile>') always returns an absolute path, we
can remove expand() call here. Close #917.
7 years ago
Junegunn Choi eba9e04e2e
Export FZF_PREVIEW_HEIGHT instead of FZF_HEIGHT
https://github.com/junegunn/fzf.vim/issues/361
7 years ago
Junegunn Choi 93b8f61551
[vim] Export $FZF_HEIGHT for previewer scripts
Preview script cannot properly determine the height of fzf finder if
`--height` option is used.

https://github.com/junegunn/fzf.vim/issues/361
7 years ago
Jan Edmund Lazo 7a11a06cbd [vim] Use backslash for Windows filepaths (#896)
- Fix shellescaping issues for filepaths
    - Supports both forward slashes or backslashes
    - Paths with spaces
- Use jobstart for neovim in s:execute (Windows)
    - https://github.com/neovim/neovim/pull/6497
- Make 2 s:fzf_shellescape functions
    - (Windows) Substitute \" with \\" to escape the last backslash
    - (Default) Regular shellescape
- Support list 'options'
- Add "@echo off" to the batchfile used to execute fzf
7 years ago
Daniel Hahler d295d20dc4 fzf#run: improve "is already running" message (#885)
This displays the buffer(s) in this case, which is useful when FZF got
stuck, and you have to manually remove the buffer.
7 years ago
Junegunn Choi a484811f78
[vim] Capitalize exception messages 7 years ago
Junegunn Choi 111d1934c4
[vim] Throw error if g:fzf_layout is incorrectly used
https://github.com/junegunn/fzf.vim/issues/327
https://github.com/junegunn/fzf.vim/issues/317
7 years ago
Junegunn Choi cd59e5d07b
[neovim] Set 'dir' to the current direcotry
Close https://github.com/junegunn/fzf.vim/issues/308
7 years ago
Junegunn Choi b29375c844
[vim] Minor refactoring 7 years ago
Junegunn Choi 76d3f6d248
[vim] Escape ! when using :! to execute command
- call fzf#run({'source': "echo '!'"})
- call fzf#run({'source': "echo '!'", 'down': '40%'})

Close https://github.com/junegunn/fzf.vim/issues/315
7 years ago
Junegunn Choi c2db67c1c0
[vim] Prepend @echo off to $FZF_DEFAULT_COMMAND on Windows (#847) 7 years ago
Junegunn Choi 9526594905
[vim] Fix FZF_DEFAULT_COMMAND on Windows
Close #847. Patch submitted by @wontoncc.
7 years ago
Junegunn Choi fc274c2ba4
[vim] Do not escape % when using system() instead of !
Close https://github.com/junegunn/fzf.vim/issues/309
7 years ago
Prabir Shrestha a847fe8754 Use "type" instead of "cat" on windows (#836) 7 years ago
Junegunn Choi 02ceae15a2
[vim] Download instruction for Windows 7 years ago
Junegunn Choi 72265298f9
[vim] Apply --no-height when running fzf in full screen mode
To override --height option in FZF_DEFAULT_OPTS
7 years ago