The script setup.sh
should be enough to make symbolic links and install required
dependencies. However, some dependencies should be manually installed. Make sure you
have installed: curl, npm, git, bundler, exuberant-ctags, silver searcher. It is tested
in both linux(Ubuntu 12.10, 13.04) and OSX(Lion and Mountain Lion).
The most important plugins I use are:
- NeoBundle - package manager based on Vundle but way better in features and support.
- unimpaired.vim - many useful mappings for back and forth operations
- surround.vim - modify surrounding delimiters with a single keystroke
- repeat.vim - add repeat funcionality with
.
command for many of Tim Pope's plugins - dispatch.vim - from within vim, run many shell commands with assynchronous support
- endwise.vim - closes blocks like
if
,for
automagically - abolish.vim - abolish typos with a smart abbreviation schema and some other cool features
- vim-css-color - highlight colors written in css files
- NerdCommenter - easily comment and uncomment lines, blocks, etc.
- ctrlp.vim - fucking killer command to open files
- ctrlp-modified.vim - ctrlp.vim extension to open files modified since last commit and since branch creation
- Tagbar - adds a nice bar based on the tags for the current file.
- vim-snippets - snippets repository for many languages for both [Snipmate], UltiSnip Snippets and NeoSnippet. Currently, I help maintaining Ruby and Elixir snippets.
- NeoSnippet - snippets engine
- delimitMate - auto close of
()
,[]
,{}
- vim-airline - light and powerful status line plugin all written in VimL
- scala-vim-support - scala indentation and syntax highlight
- undotree - fucking awesome way to not loose nothing while undoing things
- Syntastic - syntactic rules for many languages
- vim-textobj-user - helps you define custom text objects
- CamelCaseMotion - move between camel case and snake case words
- vim-tags - easily generate ctags from within Vim
- xml.vim - some goodies for our beloved xml editting
- vim-visual-star-search - fix strange behaviour for
*
in visual mode - SwapIt - improves Vim
<C-A>
and<C-X>
to work on words likeyes
,no
,true
,false
and some others - vim-instant-markdown - automatically preview markdown edited within Vim
- fugitive.vim - cool git wrapper
- gitv - fugitive.vim extension to view git logs beautifully
- [vim-signify] - adds nice signs warning about file modifications in a git tracked repository
- gist-vim - creates, lists, reads, edits gists from within Vim
- vim-ruby - helps editing Ruby source code
- rails.vim - adds syntax highlight and helps editing Rails apps
- vim-textobj-rubyblock - creates Vim text objects for ruby code(
ir
,ar
). Also lets you use%
to move betweendo .. end
,if .. end
and other paired ruby keywords
This repository is organized in such a way to avoid what I call .vimrc hell. I created it based on a friend's vim files.
All editor settings are place in conf
directory. General settings are placed in
conf/autocmd.vim
and conf/defaults.vim
. Shortcuts that are plugin independent
are placed in conf/shortcuts.vim
file.
Each plugin has its entry in conf/bundles.vim
file. This file is going to be
used by NeoBundle install/enable the plugins. Plugins that need custom settings
have a file with its name in plugin
directory. All shortcuts plugins, plugin
variables will be placed there. Vim automatically loads all these files when it
is starting up.
TODO