1
0
mirror of https://github.com/SpaceVim/SpaceVim.git synced 2025-01-23 20:20:05 +08:00
SpaceVim/bundle/vimproc.vim
Bright Chen d0b07bbc78
Update vimproc.vim bundle to latest version 8f40d86 (#3587)
vimproc.vim fixed one issue about .gitignore file, so update it to avoid
an error for vimproc library missing.

The root reason is that when running `make`, the folder lib does not
exist, so it will be failed.

Following output is when I run `make` mannually.

```
$ make
make -f make_unix.mak
make[1]: Entering directory '/home/bright/.SpaceVim/bundle/vimproc.vim'
cc -W -O2 -Wall -Wno-unused -Wno-unused-parameter -std=gnu99 -pedantic -shared -fPIC  -o lib/vimproc_linux64.so src/proc.c -lutil
/usr/bin/ld: cannot open output file lib/vimproc_linux64.so: No such file or directory
collect2: error: ld returned 1 exit status
make[1]: *** [make_unix.mak:17: lib/vimproc_linux64.so] Error 1
make[1]: Leaving directory '/home/bright/.SpaceVim/bundle/vimproc.vim'
make: *** [Makefile:66: all] Error 2
```

Co-authored-by: Bright Chen <bright.chen@autodesk.com>
2020-06-26 20:46:07 +08:00
..
autoload Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
doc Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
lib Update vimproc.vim bundle to latest version 8f40d86 (#3587) 2020-06-26 20:46:07 +08:00
plugin Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
src Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
test Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
tools Update vimproc.vim bundle to latest version 8f40d86 (#3587) 2020-06-26 20:46:07 +08:00
.gitattributes Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
.gitignore Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
.travis.yml Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
appveyor.yml Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_android.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_bsd.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_cygwin64.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_cygwin.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_mac.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_mingw32.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_mingw64.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_msvc.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_sunos.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
make_unix.mak Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
Makefile Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00
README.mkd Add vimproc into bundle dir 2020-06-14 23:42:40 +08:00

vimproc

Travis Build Status AppVeyor Build Status GitHub release

vimproc is a great asynchronous execution library for Vim. It is a fork of proc.vim by Yukihiro Nakadaira. I added some features and fixed some bugs and I'm maintaining it now. Instead of an external shell (example: 'shell'), vimproc uses an external DLL file.

Supported platforms:

  • Windows 32/64bit (Compiled by MinGW or Visual Studio)
  • macOS (10.5 or later)
  • Linux
  • Cygwin
  • Solaris
  • BSD (but cannot check)
  • Android (experimental)

Not supported platforms:

  • Other UNIX platforms

Install

Manual Install

  • Clone this repo
  • Build vimproc's native extensions (see Building for details)
  • Copy autoload/*, lib/* and plugin/* files to your 'runtimepath' directory (see :help runtimepath).

dein.vim

If you use dein.vim, you can update and build vimproc automatically. This is the recommended package manager.

call dein#add('Shougo/vimproc.vim', {'build' : 'make'})

Vim-Plug

If you use vim-plug, you can update and build vimproc automatically.

Plug 'Shougo/vimproc.vim', {'do' : 'make'}

Vundle

If you use Vundle, add the following to your .vimrc.

Plugin 'Shougo/vimproc.vim'

Then compile the plugin manually where it was installed.

i.e. on Linux & Mac

$ cd ~/.vim/bundle/vimproc.vim && make

See building

NeoBundle

If you use neobundle.vim, you can update and build vimproc automatically.

NeoBundle 'Shougo/vimproc.vim', {
\ 'build' : {
\     'windows' : 'tools\\update-dll-mingw',
\     'cygwin' : 'make -f make_cygwin.mak',
\     'mac' : 'make',
\     'linux' : 'make',
\     'unix' : 'gmake',
\    },
\ }

Pathogen

vimproc uses a pathogen compatible structure, so it can be managed with pathogen, however you must remember to compile after cloning the repo.

git clone https://github.com/Shougo/vimproc.vim.git ~/.vim/bundle/vimproc.vim
cd ~/.vim/bundle/vimproc.vim
make

Building

Note: You must use GNU make to build vimproc.

You can install the dll using |VimProcInstall|. If you are having any trouble or want to build manually then read on.

Linux

$ make

macOS

Note: Users of macOS 10.15 (Catalina) cannot directly use this library with the system-provided vi. (SIP prevents binaries in the write-only /usr/bin directory from calling dlopen on unsigned libraries like vimproc_mac.so.) The simplest solution is to build or install another version of vi in a non-SIP protected location. For example, using homebrew, brew install vim (or nvim) will install an unrestricted executable in /usr/local/bin. (Don't forget to set up aliases or $PATH so that you don't accidentally invoke the system vi.)

$ make

Note: If you want to build for multiple architectures, you can use ARCHS and CC variables.

Build for i386 and x86-64:

$ make ARCHS='i386 x86_64'

FreeBSD

$ gmake

If you want to use BSD make, use the platform specific makefile:

$ make -f make_bsd.mak

Solaris

$ gmake

Note: If you want to use Sun Compiler, you can use SUNCC variable.

$ gmake SUNCC=cc

Windows

Note: In Windows, using MinGW is recommended. Note: If you have not "gcc" binary, you must change $CC value.

Windows using MinGW (32bit Vim):

$ mingw32-make -f make_mingw32.mak

Windows using MinGW (If you want to use MinGW compiler in Cygwin):

$ mingw32-make -f make_mingw32.mak CC=mingw32-gcc

Windows using MinGW (64bit Vim):

$ mingw32-make -f make_mingw64.mak

Windows using Visual Studio (32bit/64bit Vim):

$ nmake -f make_msvc.mak

You should run this from VS command prompt. The architecture will be automatically detected, but you can also specify the architecture explicitly. E.g.:

32bit: nmake -f make_msvc.mak CPU=i386
64bit: nmake -f make_msvc.mak CPU=AMD64

Cygwin:

$ make

Note: The vimproc_cygwin.dll compiled in Cygwin won't work with Windows Vim.

Windows Binaries