Vim (most often gVim, but I am fine in the terminal as well) is the only editor that I am really used to using. So, when I installed Windows 8.1 on my trusty old laptop, I immediately wanted to build a brand spanking new 64-bit version (yeah, and this thing can’t deal with 2x2GB properly, but why not?) with all the latest patches. That means, building from source. When I had XP SP3 on this thing, I had set up nice little environments for building every little thing I liked to build from source. On this new OS which really, desperately wants to run on a phone, I did not know how things were going to work (I have heard that things were even worse with 8.0).
After a few false starts (such as trying to do this with Visual Studio 2013 Express Edition for Windows Desktop), I realized the right tool to use is the Windows SDK 7.1.
I installed TortoiseHG and cloned the source:
I realize, green just is not my color … I seriously miss the way you could customize the GUI in XP. But, I digress …
Vim comes with a makefile, Make_mvc.mak
for Microsoft’s compiler. I noticed the cl
that came with SDK 7.1 supported an optimization option called /favor:INTEL64
, so I added that to the OPTFLAG
variable right around line 481 and entered:
C:\…\vim\src> nmake -f Make_mvc.mak OPTIMIZE=SPACE CPU=AMD64 NETBANS=no GETTEXT=no GUI=yes
And, within about 30 seconds, the executable was built.
What now?
The file INSTALLpc.txt
has a lot of information, and tells you what you need to do next, in section 10, at the end of the file:
C:\…\vim\src> mkdir c:\opt\vim\vim74
C:\…\vim\src> copy *.exe c:\opt\vim\vim74
gvim.exe
install.exe
uninstal.exe
vimrun.exe
4 file(s) copied.
C:\…\vim\src> copy GvimExt\gvimext.dll c:\opt\vim\vim74
1 file(s) copied.
C:\…\vim\src> copy xxd\xxd.exe c:\opt\vim\vim74
1 file(s) copied.
C:\…\vim\src> xcopy ..\runtime\* c:\opt\vim\vim74 /e
Then I changed my directory to c:\opt\vim\vim74
, and typed install
. You get a funky text based menu where you enter item numbers to select and toggle options. I think this is what they call old school, but then I grew up with it, but I admit it might be daunting at first:
Originally, I had made a mistake, and staged the vim74
directory in %temp%
. I promptly realized I had made a mistake: I needed those files in a better place, not in my %temp%
. I moved the vim74
directory to c:\opt\vim\vim74
, and typed install
again.
I really don’t want those batch files. So, I typed the digit 1
and pressed enter. The program listed a bunch of directories in my %path%
giving me the option to create batch files in one of those directories. The last option, in my case 12
, was not to create any batch files, and that’s the one I went with.
I am also trying to be a disciplined Vim user, so I disabled the mapping of CTRL-C, CTRL-V … etc in the default _vimrc
to be created. Of course, I had saved my trusted _vimrc
, and that’s going in my %userprofile%
directory.
Finally, I disabled the creation of various icons on the desktop:
Finally, type d
, press Enter, and there you have your “Edit with Vim” context-menu entry.
Hope this helps!
PS: If you also want vim.exe
for console use, do an nmake -f Make_mvc.mak … GUI=yes clean
and then repeat the nmake
command without GUI=yes
. You can simply copy the resulting vim.exe
alongside gvim.exe
.