MacVim + essential plugins + my custom .vimrc
I don't see this as another collection of dotfiles, but a practical selection of the best plugins and configs for those willing to enjoy the power of Vim on their Mac. I was inspired by YADR and spf13-vim, or other famous alternatives like Janus, but I did not wanted to have such a big package, I wanted to keep it even simpler.
If you don't like the idea of the complete package, I strongly encourage you to scrabble and take anything you may like in here! But I expect you to (at least) say hi if you like it :P This includes GNU/Linux users, because most of the code in here must work as well for you (I'm using it actually :P).
Installation ------------
I provide you with two options (the easy or the easiest):
Clone this repositoty and execute the installation script:
git clone git://github.com/fbeeper/fMacVim.git
cd fMacVim
./install.sh
Besides the opportunity of re-customization, this installation includes terminal support for the customized Vim, including the Solarized theme.
Note that you will find an uninstaller too ;)
./uninstall.sh
I took MacVim, included all plugins and configs in the package for you to drag and drop it into your /Applications directory:
Details -------
fMacVim includes:
- The best .vimrc I've been able to curate (no blogger/githubber was harmed on this process :P). Even though I didn't kept it minimal, I've made an effort to organize and comment everything. You should take a look at it!
* A personal selection of essential vim plugins:
-
Pathogen.vim (super easy plugin management) by Tim Pope
-
Solarized (pleasant colorscheme) by Ethan Schoonover
-
Powerline (cool statusline replacement) by Kim Silkebækken
-
Menlo patched for powerline (nice font with support for Powerline coolness) by Steve Losh
-
NERDTree (useful file system explorer) by Martin Grenfell
-
NERDCommenter (comment your code easily ,cl ,cu) by Martin Grenfell
-
Signature (easy marks and signs) by kshenoy
-
Clang complete (C/C++ completion using clang) by Xavier Deguillard
-
Supertab (handy addition for text completion) by Eric Van Dewoestine
-
SnipMate (snippets galore!) originally by Michael Sanders but current package by Rok Garbas
-
Fugitive.vim (nice git integration) by Tim Pope
-
Gitv ('gitk clone' plugin for fugitive) by Greg Sexton
-
Gundo (Missing Lion's file versioning at Vim? :P) by Steve Losh
-
OpenGL and GLSL syntax hl (the missing highlighting) by Marc Costa
* Custom key bindings:
Quick access to useful commands:
F1
Toggle Gundo, navigate and use the history tree of your editionsF2
Toggle NERDTree, navigate your FS right from VimF3
Toggle PASTE mode, paste without breaking indentationF4
Toggle Gitv, explore git history right from VimF5
/F6
Change theme mode Dark/LightF7
Toggle invisiblesF8
Run makeF9
Activate auto-closing bracketsF10
De-activate auto-closing brackets
Safari-like tab switching
Ctrl
+Tab
/Ctrl
+Shift
+Tab
Circle back and forthCmd
+1-9
Go to specific tabs
Search
#
and*
To search back and forth (working for visual selections too!),
Enter
To remove search highlighting
Other bindings
,
is mapped as Vim's<leader>
(just in case you look for it),
cl
/cu
Comment/uncomment lines thanks to NERDCommenterz
f
/d
Create/Delete folds (configured to work manually and will be preserved between sessions)Space
Will toggle folds in normal mode,
n
Toggle line numbering mode in normal mode- And a huge list of things Vim could do
Anyway, I strongly encourage you to have a look at my .vimrc to discover what changes/customizations I've done! :D
What's the future of fMacVim? -----------------------------
This is nowhere near to be perfect, so I expect to bring future updates.
- An updater would be really necessary!
- I should build .vimrc and .gvimrc separately, I know!
- I should consider splitting the .vimrc to make it easier to navigate/maintain.
- I will consider creating a custom Toolbar/Menu.
- A better documentation would be interesting, wouldn't it?
- I've got some shortcuts/functions I haven't added to this release I might add in the future. Or not... because it would mean not keeping this simple.
- I'm thinking to remove OpenGL highlighting from this package, it may be too specific for my needs.
- I really want to make this package compatible for Linux too, with gtk-vim instead of MacVim :)
I'd be pleased to hear any comments, ideas, code, questions, or whatever you may want to say!
You'll easily find me at: github.com/fbeeper, or @fbeeper.
License -------
JIC anybody asks, the Vim licence seems a good fit for any of the "work" I've done packing this ;) For any other concerns about licensing, take a look at:
:help license