" -- 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 '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 'airblade/vim-gitgutter' 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 -- " 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 /ƒ/ " keyword completion inoremap ;; " -- 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 monokai 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' " 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' \ }