set nocompatible " Vundle stuff filetype off set rtp+=~/.vim/bundle/vundle/ call vundle#rc() Bundle 'gmarik/vundle' Bundle 'groenewege/vim-less' Bundle 'digitaltoad/vim-jade' Bundle 'pangloss/vim-javascript' Bundle 'kchmck/vim-coffee-script' Bundle 'jQuery' Bundle 'vim-ruby/vim-ruby' Bundle 'tpope/vim-rails' Bundle 'tpope/vim-repeat' Bundle 'tpope/vim-surround' Bundle 'tpope/vim-fugitive' Bundle 'tpope/vim-endwise' Bundle 'tpope/vim-rsi' Bundle 'mileszs/ack.vim' Bundle 'Lokaltog/vim-powerline.git' Bundle 'Lokaltog/vim-easymotion' Bundle 'bkad/CamelCaseMotion' Bundle 'majutsushi/tagbar' Bundle 'scrooloose/syntastic' Bundle 'scrooloose/nerdcommenter' " Bundle 'scrooloose/nerdtree' Bundle 'altercation/vim-colors-solarized' " Bundle 'ervandew/supertab' Bundle 'kien/ctrlp.vim' Bundle 'gregsexton/MatchTag' " Bundle 'closetag' Bundle 'kana/vim-smartinput' Bundle 'rstacruz/sparkup', {'rtp': 'vim/'} Bundle 'mbbill/undotree' Bundle 'coderifous/textobj-word-column.vim' " Bundle 'myusuf3/numbers' Bundle 'benmills/vimux' Bundle 'lukaszkorecki/workflowish' Bundle 'searchfold.vim' Bundle 'godlygeek/tabular' Bundle 'kshenoy/vim-signature' "Bundle 'SirVer/ultisnips' Bundle 'fmoralesc/vim-pad' Bundle 'lukerandall/haskellmode-vim' Bundle 'Shougo/neocomplcache' Bundle 'ujihisa/neco-ghc' filetype plugin indent on " last Vundle requirement " mouse set mouse=a set ttymouse=xterm " general goodness set shell=/bin/bash " Syntastic breaks when trying to write to /var/folders syntax enable let mapleader="," let maplocalleader="\\" set hidden " allow hidden unsaved buffers set history=1000 " longer history set noswapfile " turn off swapfiles set number " line numbers "set relativenumber " TODO make a command to toggle this. n maybe.. set showcmd " show the command as it is typed set showmode set wildmenu set backspace=indent,eol,start set ttyfast "set wildmode=longest:full set wildmode=list:longest " try this on for a while set autoread " when a file is changed externally set ruler set cursorline " Highlight current line set encoding=utf-8 " Necessary to show unicode glyphs set laststatus=2 " Always show the statusline set scrolloff=5 " Give us a few lines before and after the cursor " long lines set wrap set formatoptions=rqn1 set textwidth=80 if version > 702 set colorcolumn=80 endif " persistent undo if v:version > 703 set undodir=~/.vim/undodir set undofile endif " indentation set autoindent set smartindent " search set hlsearch set incsearch set ignorecase set gdefault " now substitutions assume /g set smartcase " if we include uppercase, it will be case sensitive set showmatch " matching brackets set matchtime=2 " blink brackets " turn off highlighting nnoremap :noh " regex " thanks stevelosh set magic nnoremap / /\v vnoremap / /\v " tab stops set tabstop=4 set softtabstop=4 set shiftwidth=4 set expandtab set smarttab " pretty line endings and trailing spaces set list set listchars=tab:»·,trail:·,eol:¬ " so we get html goodies in php files au BufRead *.php set ft=php.html au BufNewFile *.php set ft=php.html set thesaurus+=~/.wordlists/mthesaur.txt set dictionary+=/usr/share/dict/words " hide toolbar in macvim, etc if has("gui_running") set gfn=Terminus\ 8 set go=-t endif " Powerline " let g:Powerline_symbols='fancy' " Colors "set background=dark " colorscheme default " Solarized set background=dark let g:solarized_termtrans=1 let g:solarized_termcolors=256 "default value is 16 let g:solarized_contrast="high" "default value is normal let g:solarized_visibility="high" "default value is normal let g:solarized_diffmode="high" "default value is normal let g:solarized_hitrail=1 "default value is 0 colorscheme solarized " NERDTree "nnoremap n :NERDTreeToggle "let NERDTreeMinimalUI=1 "let NERDTreeDirArrows=1 " Tagbar nnoremap t :TagbarToggle " disable tagbar in old Vim if v:version < 703 let g:loaded_tagbar=1 endif " Syntastic if v:version > 700 let g:syntastic_enable_signs=1 let g:syntastic_auto_loc_list=1 else let g:loaded_syntastic_plugin=1 endif nnoremap S :SyntasticToggleMode " Supertab " let g:SuperTabDefaultCompletionType="context" " UltiSnpis let g:UltiSnipsJumpForwardTrigger="" let g:UltiSnipsJumpBackwardTrigger="" " open the current file for edit in Perforce nnoremap 4 :! p4 edit % " open vsplit and switch to it nnoremap v vl " trim whitespace nnoremap W :%s/\s\+$//e " open Ack nnoremap a :Ack " Marked nnoremap m :silent !open -a Marked.app '%:p' " Clam " nnoremap ! :Clam " Buffer selection nnoremap l :ls:b " Set the max files let g:ctrlp_max_files = 10000 " Workflowish stuff. Search for #todo nnoremap T :vimgrep /\v^\s*\*+.*#todo.*/i %:copen:30wincmd _ nnoremap TT /\v^\s*\*+.*#todo.*/i " Vimux stuff nnoremap vp :VimuxPromptCommand nnoremap vl :VimuxRunLastCommand nnoremap vi :VimuxInspectRunner nnoremap vq :VimuxCloseRunner nnoremap vs :VimuxInterruptRunner nnoremap vx :VimuxClosePanes nnoremap vc :VimuxClearRunnerHistory " Vim-Pad let g:pad_dir = "~/Dropbox/notes/" let g:pad_search_backend = "ack" " Haskellmode let g:ghc = "/usr/bin/ghc" let g:haddock_browser = "open" let g:haddock_browser_callformat = "%s %s" " NeoComplCache " let g:neocomplcache_enable_at_startup = 1 " Undotree nnoremap u :UndotreeToggle " Move between splits map j_ map k_ map l_ map h_