Vim Osx

Posted on  by admin
Vim is available for many different systems and there are several versions.This page will help you decide what to download.
  • You simply type vim into the terminal to open it and start a new file. You can pass a filename as an option and it will open that file, e.g. You can open multiple files by passing multiple file arguments. Vim has different modes, unlike most editors you have probably used.
  • Vim is a highly configurable text editor built to make creating and changing any kind of text very efficient. It is included as 'vi' with most UNIX systems and with Apple OS X. Vim is rock stable and is continuously being developed to become even better. Among its features are.
  • Vim usually has its own clipboard and ignores the system keyboards, but sometimes you might want to cut, copy, and/or paste to/from other applications outside of VIM. On OS X, you can access your system clipboard with this line.
  • Using VIM distributed with OSX. Vim: Vim: Caught deadly signal SEGV on multiple files. Python not Working in Vim. Vim '+ register unreachable.
Most popular:

It particularly tends not to work in the Vim that comes pre-installed on many versions of OSX. So here is another way to copy to the system clipboard on OSX: ' Copies the currently selected text to the system clipboard (OSX) let @c = ':w!pbcopy'.

MS-Windows:Click this link to download the self-installing executable(using ftp).
Signed MS-Windows files are available on thevim-win32-installer site(gvim_8.2.0012_x86_signed.exe is recommended)
Unix:See the GitHub page, or Mercurial, if you prefer that.There is also anAppimagewhich is build daily and runs on many Linux systems.
Mac:See the MacVim project for a GUI version and Homebrew for a terminal version

Details and options for:

MirrorsAlternative sites to download Vim files from.
SourcesBuild Vim yourself and/or make changes.
GitHubObtain Vim sources with a git client (recommended).
MercurialObtain Vim sources with a Mercurial client(recommended if you don't like git).
PatchesInclude the latest improvements (requires sources and rebuilding).
RuntimeGet the latest syntax files, documentation, etc..
Script linksLinks to individual syntax, indent, color, compiler and ftplugin scripts.
TranslationsNon-English documentation packages.

Versions before 7.3 can also be obtained withSubversionandCVS.Vim 8.2 is the latest stable version. It is highly recommended, many bugs have been fixed since previous versions.If you have a problem with it (e.g.,when it's too big for your system), you could try version 6.4 or 5.8 instead.

To avoid having to update this page for every new version, there arelinks to the directories. From there select the files you want to download.In the file names ## stands for the version number. For example,vim##src.zipwith version 8.2 is andvim-##-src.tar.gz for version 8.2is vim-8.2-src.tar.gz.Links are provided for quick access to the latest version.
Note that the links point to the latest version (currently 8.2) to avoidthat caching causes you to get an older version.

The best way to install Vim on Unix is to use the sources. This requires acompiler and its support files. Compiling Vim isn't difficult at all.You can simply type 'make install' when you are happy with the defaultfeatures. Edit the Makefile in the 'src' directory to select specificfeatures.

You need to download at the sources and the runtime files.And apply all the latest patches.For Vim 6 up to 7.2 you can optionally get the 'lang' archive, which adds translated messages and menus. For 7.3 and later this is included with the runtime files.

Using git
This is the simplest and most efficient way to obtain the latest version, including all patches. This requires the 'git' command.
The explanations are on the GitHub page.


Using Mercurial
This is another simple and most efficient way to obtain the latest version, including all patches. This requires the 'hg' command.
The explanations are on this page:Mercurial


version 7.x and 8.x
There is one big file to download that contains almost everything.It is found inthe unix directory(ftp):
The runtime and source files together:vim-##.tar.bz2vim-8.2.tar.bz2 (ftp)
The files ending in '.tar.gz' are tar archives that are compressed with gzip.Unpack them with tar -xzf filename.
The single big file ending in '.tar.bz2' is a tar archive compressed withbzip2. Uncompress and unpack it withbunzip2 -c filename tar -xf -.Vim osx end of line
All archives should be unpacked in the same directory.

If you can't compile yourself or don't want to, look at the site of thesupplier of your Unix version for a packaged Vim executable. For Linuxdistributions and FreeBSD these are often available shortly after a new Vimversion has been released. But you can't change the features then.

  • Debian packages are available at:
  • Sun Solaris Vim is included in the Companion Software:
    Vim for other Sun systems can be found at
  • HPUX with GTK GUI for various HPUX versions: or (note that the remark about the GNU GPL is wrong)
For modern MS-Windows systems (starting with XP) you can simply use the executable installer:
gvim82.exe (ftp)
It includes GUI and console versions, for 32 bit and 64 bit systems.You can select what you want to install and includes an uninstaller.

If you want a signed version you can get a build from
It supports many interfaces, such as Perl, Tcl, Lua, Python and Ruby.There are also 64bit versions which only run on 64 bit MS-Windows and use alot more memory, but is compatible with 64 bit plugins.
You can also get a nightly build from there with the most recent improvements,with a small risk that something is broken.

Since there are so many different versions of MS operating systems, there areseveral versions of Vim for them.
For Vim 5.x, Vim 6.x and Vim 7 look inthe pc directory (ftp).

Self-installing executable gvim##.exe gvim82.exe (ftp)
For Vim 6 and later. This includes a GUI versionof Vim - with many features and OLE support - and all the runtime files.It works well on MS-Windows 95/98/ME/NT/2000/XP/Vista/7.Use this if you have enough disk space and memory. It's the simplest way tostart using Vim on the PC. The installer allows you to skip the parts youdon't want.
For Vim 6.3 and later it also includes a console version, both for MS-Windows 95/98/ME and MS-Windows NT/2000/XP/Vista/7. The installer automatically selects the right one.
Runtime files (ftp)
For all the following binary versions you need this runtime archive, whichincludes the documentation, syntax files, etc. Always get this, unless youuse the self-installing executable.

There are three versions that run as an MS-Windows application. These providemenus, scrollbars and a toolbar.

GUI executable (ftp)
This is the 'normal' GUI version.
OLE GUI executable (ftp)
A GUI version with OLE support. This offers a few extra features,such as integration with Visual Developer Studio. But it uses quite a bitmore memory.
There are three versions that run on MS-DOS or in a console window inMS-Windows:
Win32 console executable (ftp)
The Win32 console version works well on MS-Windows NT/2000/XP/Vista/7. It supports long file names and is compiled with 'big' features. It does not runperfectly well on MS-Windows 95/98/ME, especially when resizing the consolewindow (this may crash MS-Windows...).
32 bit DOS executable (ftp)
The 32 bit DOS version works well on MS-Windows 95/98/ME. It requires a DPMImanager, which needs to be installed on MS-DOS. MS-Windows already has one.It supports long file names, but NOT on MS-Windows NT/2000/XP/Vista/7. It is compiled with 'big' features.
Not available for 7.4 and later.
16 bit DOS executable (ftp)
The 16 bit DOS version is the only one that runs on old MS-DOS systems. Onlyuse this if you are really desparate, because it excludes many useful features(such as syntax highlighting and long file names) and quickly runs out ofmemory.
The last version available is 7.1. Version 7.2 and later are too big to fit in the DOS memory model.
There are a few extra files:
iconv librarylibiconv
A library used for converting character sets.Put 'iconv.dll' in the same directory as gvim.exe to be able to edit files inmany encodings. You can find the dll file in the bin directory of the'libiconv-win32' archive.
newer intl librarylibintl
The included libintl.dll does not support encoding conversion.If you have installed the iconv library, as mentioned above, you can install agettext library that uses it.Get 'intl.dll' from the bin directory in the gettext-win32 archive and store itas 'libintl.dll' in the same directory as gvim.exe, overwriting the filethat may already be there.
PC sources (ftp)
The source files, packed for the PC. This only includes the files needed onthe PC, not for other systems. The files are in dos format CR-LF.
PC debug files gvim##.pdb gvim82.pdb (ftp) gvim##ole.pdb gvim82ole.pdb (ftp) vim##w32.pdb vim80w32.pdb (ftp)
When you notice a bug or a crash in Vim these files can be used to help tracing down the problem. In Vim 7 do ':help debug-win32' to see how.
PC translations (ftp)
Only for 7.2 and earlier, for 7.3 and later these are included in the 'rt' archive.Translated messages and menu files, packed for the PC. Use this to seenon-English menus. The messages are only translated when the libintl.dlllibrary is installed.
Windows 3.1 GUI executable and
These are GUI versions for 16 bit windows (Windows 3.1). The 'w16' has manyfeatures, 'm16' has few features (for when you're short on memory).
The files ending in '.zip' can be unpacked with any unzip program.Make sure you unpack them all in the same directory!

Alternate distributions

Yongwei's build
You may also try Yongwei's build,executables with slightly different interfaces supported.
For an unofficial version that used to include all the latest patches andoptionally a bitmore: Cream.The 'one-click installer' mentioned includes the Cream changes.For the 'real Vim' use the 'without Cream' version listed further down.
Unfortunately, it stopped updating since Vim 8.0.
For a Cygwin binary look at others.
Quite a long time ago, Vim development started on the Amiga. Although it's areally old system now, it might still work. However, this has not been tested recently.You may have to use an older version for which Amiga binaries are available.

For Vim 5.x and Vim 6 look inthe amiga directory (ftp).
Vim 7 files can be found This is for AmigaOS 4. Made by Peter Bengtsson.

Runtime files vim##rt.tgz vim64rt.tgz (ftp)
Documentation, syntax files, etc. You always need this.
Executable vim##bin.tgz vim64bin.tgz (ftp)
The executables for Vim and Xxd.For Vim 6 it includes 'big' features, for Vim 5.x itincludes the normal features.For Vim 6.2 it is not available (my Amiga had harddisk problems then, this miraculously healed later).
Big executable vim##big.tgz
Vim with 'big' features and Xxd. Only for Vim 5.x.
Sources vim##src.tgz vim64src.tgz (ftp)
The source files for the Amiga.Only needed when you want to compile Vim yourself.
The files are all tar archives, compressed with gzip. To unpack, firstuncompress them with gzip -d filename. Then unpack withtar xf filename. You need to unpack the archives in the samedirectory.The OS/2 version runs in a console window.

For Vim 5.x and Vim 6 look inthe os2 directory (ftp).Version 6.2 is not available.Versions 6.3 and 6.4 were compiled by David Sanders.
Version 7.0 was compiled by David Sanders.

Runtime files (ftp)
Documentation, syntax files, etc. You always need this.
Executables (ftp)
Vim, Xxd, Tee and EMX libraries.
The files ending in '.zip' can be unpacked with any unzip program.Make sure you both zip archives in the same directory!

If you want to compile the OS/2 version, you need the EMX compiler. Use theUnix source archive, runtime files and the extra archive. After unpacking theruntime archive, move all the files and directories in the 'runtime'directory one level up.

The terminal version of Vim is included as 'vi', you already have it. It'slagging behind a bit though and has limited features, thus you may want toadditionally install a recent version or one with more features.


There most popular version is MacVim. This is being actively developed. Thisbehaves like a Mac application, using a GUI.

MacVim has more a Mac look and feel, is developed actively and most peopleprefer this version. Most of MacVim was made by Björn Winckler.

MacVim can be downloaded here:

New versions are made quite often.Subscribe to thevim-mac maillistto be informed about bugs and updates.


This is a terminal version installed with the 'brew' command.It is updated frequently.It can be downloaded here:


Older binaries for Mac OS/X can be found on thisSourceForge project.Maintained by Nicholas Stallard.

Vim osx clipboard

Here is a multi-byte version of Vim 5.7 (for Japanese, possibly also forKorean and Chinese; not for Unicode):


Most of the work forthe Macintosh port (Classic and Carbon) was done by Dany St-Amant.

If you have OSX and a setup for compiling programs, you can use the source codeand compile yourself. See the Unix section above. The development tools can bedownloaded from Apple's developer web site.

Turn to the vim-mac maillist to meet otherVim-Mac users.

This is a list of links to sites where various versions of Vim can be obtained.These are supported by individuals, use at your own risk.
Android Search for 'Vim Touch' by Momodalo in the Play Store.
i/OS Run Vim on your iPhone or Ipad.
QNX (ftp) Provided by Yakov Zaytsev. Requires QNX 6.3.0/6.3.2 with service pack 2.
Cygwin (with GTK GUI)
Open VMS


Since the 1970’s, Vi and its successor Vim have been included by default on many operating systems, including almost all GNU/Linux distributions.

Vim is free and open-source and is one of the most popular code editors. It can be downloaded on Vim official site.

Vim is a modal text editor, which means that it has a mode for writing text, a mode for running commands, etc.

Vim has a total of 12 different editing modes.

The three main modes are:

  • Command mode (also sometimes reffered to as Normal mode) is where you can run commands. This is the default mode in which Vim starts up.
  • Insert mode is the mode where you insert/write your text.
  • Visual mode is where you visually select a bunch of text so that you can run a command/operation only on that part of the text.

Basic Vim Commands

Let’s start with an easy set of Vim commands to open, save, and exit Vim.

:e filenameOpen filename for edition
:wSave file
:qExit Vim
:q!Quit without saving
:xWrite file (if changes has been made) and exit
:sav filenameSaves file as filename
.Repeats the last change made in normal mode

Moving in the File

While in command mode, the following set of commands will allow you to easily move the cursor in the file, jump to a particular line number, or set the cursor position at the beginning of the file.

k or Up Arrowmove the cursor position up one line
j or Down Arrowmove the cursor down one line
emove the cursor to the end of the word
bmove the cursor to the begining of the word
0move the cursor to the begining of the line
Gmove the cursor to the end of the file
ggmove the cursor to the begining of the file
Lmove the cursor to the bottom of the screen
:59move cursor to line number 59. Replace 59 by the desired line number.
%Move cursor to matching parenthesis
[[Jump to function start
[{Jump to block start

Cut, Copy & Paste

Here are some basic Vim commands to cut, copy and paste portions of text. All the commands below has to be ran in command mode.

yCopy the selected text to clipboard
pPaste clipboard contents
ddCut current line
yyCopy current line
y$Copy to end of line
DCut to end of line


In command mode, you can easily search for any string within a file. This is extremely useful for developers and sysadmins alike.

/wordSearch word from top to bottom
?wordSearch word from bottom to top
*Search the word under cursor
/cstringSearch STRING or string, case insensitive
/jo[ha]nSearch john or joan
/< theSearch the, theatre or then
/the>Search the or breathe
/fred joeSearch fred or joe
/<dddd>Search exactly 4 digits
/^n{3}Find 3 empty lines
:bufdo /searchstr/Search in all open files
bufdo %s/something/somethingelse/gSearch something in all the open buffers and replace it with somethingelse


Vim command line tool is extremely useful to replace many occurences of a string by another within a file. Using more advanced commands, there are a lot of search and replace options available.

:%s/old/new/gReplace all occurences of old by new in file
:%s/onward/forward/giReplace onward by forward, case unsensitive
:%s/old/new/gcReplace all occurences with confirmation
:%s/^/hello/gReplace the begining of each line by hello
:%s/$/Harry/gReplace the end of each line by Harry
:%s/onward/forward/giReplace onward by forward, case unsensitive
:%s/ *$//gDelete all white spaces
:g/string/dDelete all lines containing string
:v/string/dDelete all lines containing which didn’t contain string
:s/Bill/Steve/Replace the first occurence of Bill by Steve in current line
:s/Bill/Steve/gReplace Bill by Steve in current line
:%s/Bill/Steve/gReplace Bill by Steve in all the file
:%s/^M//gDelete DOS carriage returns (^M)
:%s/r/r/gTransform DOS carriage returns in returns
:%s#<[^>]+>##gDelete HTML tags but keeps text
:%s/^(.*)n1$/1/Delete lines which appears twice
Ctrl+aIncrement number under the cursor
Ctrl+xDecrement number under cursor
ggVGg?Change text to Rot13


Vim has some powerful commands to modify the case of text. All the commands below have to be run in command mode.

VuLowercase line
VUUppercase line
g~~Invert case
vEUSwitch word to uppercase
vE~Modify word case
ggguGSet all text to lowercase
gggUGSet all text to uppercase
:set ignorecaseIgnore case in searches
:set smartcaseIgnore case in searches excepted if an uppercase letter is used
:%s/<./u&/gSets first letter of each word to uppercase
:%s/<./l&/gSets first letter of each word to lowercase
:%s/.*/u&Sets first letter of each line to uppercase
:%s/.*/l&Sets first letter of each line to lowercase

Read and Write Files

Vim is clearly one of the most powerful text editors available. This section shows how you can manipulate files, insert the content of a file into another, and export portions of a file into a new file.

:1,10 w outfileSaves lines 1 to 10 in outfile
:1,10 w >> outfileAppends lines 1 to 10 to outfile
:r infileInsert the content of infile
:23r infileInsert the content of infile under line 23

File Explorer

Vim Linux Cheat Sheet

Vim features a built in file explorer, which allows you to explorer the content of your server without exiting the text editor.

:e .Open integrated file explorer
:SexSplit window and open integrated file explorer
:Sex!Same as :Sex but split window vertically
:browse eGraphical file explorer
:lsList buffers
:cd ..Move to parent directory
:argsList files
:args *.phpOpen file list
:grep expression *.phpReturns a list of .php files contening expression
gfOpen file name under cursor

Vim Linux Install

Interact With Unix

Vim is installed by default on most Unix based operating systems, including Mac OS and most GNU/Linux distros. It therefore feature various commands that allows you to interact with the OS.

:!pwdExecute the pwd unix command, then returns to Vi
!!pwdExecute the pwd unix command and insert output in file
:shTemporary returns to Unix
$exitRetourns to Vi


In command mode, you can quickly and easily align a file’s lines for better clarity.

:%!fmtAlign all lines
!}fmtAlign all lines at the current position
5!!fmtAlign the next 5 lines

Tabs and Windows

One of my favorite Vim options is the ability to use tabs to edit various files at the same time. The following Vim commands will let you open, close, and organize your tabs for better productivity.

:tabnewCreates a new tab
gtShow next tab
:tabfirstShow first tab
:tablastShow last tab
:tabm n(position)Rearrange tabs
:tabdo %s/foo/bar/gExecute a command in all tabs
:tab ballPuts all open files in tabs
:new abc.txtEdit abc.txt in new window

Window Spliting

Vim allows you to split the screen horizontally or vertically, so you can edit many files at once using the insert mode.

:e filenameEdit filename in current window
:split filenameSplit the window and open filename
ctrl-w up arrowPuts cursor in top window
ctrl-w ctrl-wPuts cursor in next window
ctrl-w_Maximize current window vertically
ctrl-w Maximize current window horizontally
ctrl-w=Gives the same size to all windows
10 ctrl-w+Add 10 lines to current window
:vsplit fileSplit window vertically
:sview fileSame as :split in readonly mode
:hideClose current window
:­nlyClose all windows, excepted current
:b 2Open #2 in this window


Vim can use external dictionaries to provide auto-completion. This can be a real time saver, so pay attention to the commands below if you want to speed up your workflow.

Ctrl+n Ctrl+p (To be used in insert mode)Complete word
Ctrl+x Ctrl+lComplete line
:set dictionary=dictDefine dict as a dictionnary
Ctrl+x Ctrl+kComplete with dictionnary


When editing large files, it can be tricky to move in the file and remember important sections. Happilly, Vim allows its users to create marks that can easily be accessed later. No need to remember a dozen of line numbers anymore!

m {a-z}Marks current position as {a-z}
‘ {a-z}Move to position {a-z}
Move to previous position



This little known trick lets you define abbreviations that can be reused later and as many times as needed.

:ab mail [email protected]Define mail as abbreviation of [email protected]

Text Indentation

Text indentation is vital when it comes to code readability. Luckily, Vim has a set of commands for the text editor to indent your lines in a clear and readable manner.

:set autoindentTurn on auto-indent
:set smartindentTurn on intelligent auto-indent
:set shiftwidth=4Defines 4 spaces as indent size
ctrl-t, ctrl-dIndent/un-indent in insert mode
=%Indent the code between parenthesis
1GVG=Indent the whole file
Learn Vim from scratch and quickly become more productive.
Design, develop, and deploy end-to-end applications with Vim.

Frequently Asked Questions

How do I Type Commands in Vim?

To type commands, you have to first activate Vim’s command mode. To do so, press the Esc key of your keyboard. You can then type any command of your choice.

How do I Start Typing Text in Vim?

Vim must be in insert mode for you to type text. Simply press the i key when in command mode to enter the insert mode.

On Which Hosting Plans Can You Use Vim?

Basically any Linux hosting will have Vim installed on the server. As long as you are able to access your server via SSH, you’ll be able to use Vim. Please refer to our best web hosting for developers guide to find out which hosts provide a SSH access.