" -- BEGIN: Vundle config -- set nocompatible " be iMproved, required filetype off " required " set the runtime path to include Vundle and initialize set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() " alternatively, pass a path where Vundle should install plugins "call vundle#begin('~/some/path/here') " let Vundle manage Vundle, required Plugin 'VundleVim/Vundle.vim' " The following are examples of different formats supported. " Keep Plugin commands between vundle#begin/end. " plugin on GitHub repo Plugin 'tpope/vim-fugitive' " All of your Plugins must be added before the following line Plugin 'Raimondi/delimitMate' Plugin 'Valloric/YouCompleteMe' Plugin 'airblade/vim-gitgutter' Plugin 'kien/ctrlp.vim' Plugin 'mileszs/ack.vim' Plugin 'pangloss/vim-javascript' Plugin 'scrooloose/nerdtree' Plugin 'scrooloose/syntastic' Plugin 'sickill/vim-monokai' Plugin 'sjl/clam.vim' Plugin 'terryma/vim-multiple-cursors' call vundle#end() " required filetype plugin indent on " required " To ignore plugin indent changes, instead use: "filetype plugin on " " Brief help " :PluginList - lists configured plugins " :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate " :PluginSearch foo - searches for foo; append `!` to refresh local cache " :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal " " see :h vundle for more details or wiki for FAQ " Put your non-Plugin stuff after this line " -- END: Vundle config -- set noswapfile set grepprg=ack\ -k " backspace settings set backspace=2 set backspace=indent,eol,start " Javascript specific variables let g:javascript_plugin_jsdoc = 1 " set foldmethod=syntax " GlobalListchars set list set listchars=eol:¶,trail:~,nbsp:␣ " Keeps everything concealed at all times. Even when my cursor is on the word. set conceallevel=1 set concealcursor=nvic " JavaScript thanks to pangloss/vim-javascript " let g:javascript_conceal_function = "ƒ" " match ErrorMsg /ƒ/ " Ultisnips " Track the engine. Plugin 'SirVer/ultisnips' " Snippets are separated from the engine. Add this if you want them: Plugin 'honza/vim-snippets' " Trigger configuration. Do not use if you use https://github.com/Valloric/YouCompleteMe. let g:UltiSnipsExpandTrigger="" " let g:UltiSnipsJumpForwardTrigger="" " let g:UltiSnipsJumpBackwardTrigger="" " keyword completion inoremap ;; " tab movement bindings nnoremap gT nnoremap gt " scrolling and maintaing mouse position nnoremap j nnoremap k " reload file after git changes nnoremap :e " resize vertical and horizontal splits nnoremap :vertical resize +3 nnoremap :vertical resize -3 nnoremap :resize +3 nnoremap :resize -3 " -- Syntastic Settings -- set statusline+=%#warningmsg# set statusline+=%{SyntasticStatuslineFlag()} set statusline+=%* let g:syntastic_always_populate_loc_list = 1 let g:syntastic_auto_loc_list = 1 let g:syntastic_check_on_open = 1 let g:syntastic_check_on_wq = 1 let g:syntastic_javascript_checkers = ['gjslint'] " Basic settings syntax on set number set tabstop=2 set expandtab set shiftwidth=2 colorscheme elflord set t_Co=255 " Ensure that
is "," character let mapleader = "," " Define highlighting groups highlight InterestingWord1 ctermbg=Cyan ctermfg=Black highlight InterestingWord2 ctermbg=Yellow ctermfg=Black highlight InterestingWord3 ctermbg=Magenta ctermfg=Black " h1 highlighting nnoremap h1 :execute 'match InterestingWord1 /\<\>/' nnoremap xh1 :execute 'match none' " h2 highlighting nnoremap h2 :execute '2match InterestingWord2 /\<\>/' nnoremap xh2 :execute '2match none' " h3 highlighting nnoremap h3 :execute '3match InterestingWord3 /\<\>/' nnoremap xh3 :execute '3match none' "clear all highlighted groups nnoremap xhh :execute 'match none' :execute '2match none' :execute '3match none' " pasteboard copy & paste nnoremap V"+y vnoremap "+y nnoremap o"+p vnoremap "+p " add 80 character wrap line highlight OverLength ctermbg=red ctermfg=white guibg=#592929 match OverLength /\%81v.\+/ " map jj to imap jj " map ctrl + n to :NERDTree map :NERDTreeToggle " BOL and EOL nnoremap H ^ nnoremap L $ " set -o emacs line-editor defaults inoremap I inoremap A " trim trailing whitespace on save autocmd BufWritePre *.{js,py,tpl,html} :%s/\s\+$//e " set default font and size set guifont=Operator\ Mono:h16 " -- fuzzy-finder -- set runtimepath^=~/.vim/bundle/ctrlp.vim let g:ctrlp_map = '' let g:ctrlp_cmd = 'CtrlP' let g:ctrlp_custom_ignore = { \ 'dir': 'node_modules' \ }