Extends stock zipPlugin.vim
to allow recursively browsing and writing Zip files.
VimL and system calls only (zip, unzip and copy file).
- Vim 7.4✝ or Neovim 0.1.7.
✝ Confirmed working on Vim 7.4-1024 for Windows.
In $PATH
:
- an unzip compatible command.
In $PATH
:
- a zip compatible command.
If you're using Vim 8.0 or greater (if :echo has("packages")
returns 1), you
can add vim-rzip
as a package.
When you're done with the following steps make sure to read about packages:
:h packages
.
- If your .vim folder is NOT a Git repository:
$ mkdir -p ~/.vim/pack/bundle/start/vim-rzip
$ unzip ~/Downloads/vim-rzip.zip -d ~/.vim/pack/bundle/start/vim-rzip
Or you can clone the Git repository:
$ mkdir -p ~/.vim/pack/bundle/start
$ cd ~/.vim/pack/bundle/start
start $ git clone 'https://github.com/lbrayner/vim-rzip'
- If your .vim folder IS a Git repository:
$ mkdir -p ~/.vim/pack/bundle/start
$ cd ~/.vim
.vim $ git submodule add 'https://github.com/lbrayner/vim-rzip' pack/bundle/start/vim-rzip
This will install vim-rzip
as a
git submodule.
Either vim-pathogen or Vundle are recommended.
When you open a file with any of these extensions (per default) —
.apk, .celzip, .crtx, .docm, .docx, .dotm, .dotx, .ear, .epub,
.gcsx, .glox, .gqsx, .ja, .jar, .kmz, .oxt, .potm, .potx,
.ppam, .ppsm, .ppsx, .pptm, .pptx, .sldx, .thmx, .vdw, .war,
.wsz, .xap, .xlam, .xlam, .xlsb, .xlsm, .xlsx, .xltm, .xltx,
.xpi, .zip — you'll see the default zipPlugin.vim
message, except that:
the plugin name is rzip.vim; and the version, on the first line, should read
something like v014.
Extra file extensions can be added with g:rzipPlugin_extra_ext. For example:
let g:rzipPlugin_extra_ext = '*.odt,*.mfh'
On Unix-like operating systems, just install the zip
and unzip
packages.
You can get the unzip.exe binary for Windows here.
A zip-compatible program need only implement the -u (update) command line switch. An example of a zip-compatible dosbatch script for Windows using 7zip:
@echo off
if "%~1" == "-u" (
if not "%~2" == "" (
if not "%~3" == "" (
if "%~4" == "" (
7z u %2 %3
exit /b 0
)
)
)
)
7z %*
Save this as zip.bat
and put in your $PATH
.