se nocompatible filetype off call plug#begin('~/.vim/plugged') Plug 'tpope/vim-sensible' Plug 'ntpeters/vim-better-whitespace' Plug 'nathanaelkane/vim-indent-guides' Plug 'chrisbra/Recover.vim' " Plug 'Valloric/YouCompleteMe', { 'do': './install.sh --clang-completer --system-libclang' } Plug 'Shougo/vimproc.vim' , { 'do': 'make -f make_unix.mak' } Plug 'Shougo/unite.vim' Plug 'tsukkee/unite-tag' Plug 'Shougo/neomru.vim' Plug 'ciaranm/securemodelines' Plug 'chrisbra/SudoEdit.vim' Plug 'nanotech/jellybeans.vim' Plug 'majutsushi/tagbar' Plug 'bling/vim-airline' Plug 'scrooloose/syntastic' Plug 'tomtom/tcomment_vim' "Plug 'Raimondi/delimitMate' " Plug 'jalcine/cmake.vim' --slow Plug 'editorconfig/editorconfig-vim' Plug 'kchmck/vim-coffee-script' Plug 'pangloss/vim-javascript' Plug 'mtscout6/vim-cjsx' Plug 'mxw/vim-jsx' Plug 'ledger/vim-ledger' Plug 'dag/vim2hs' Plug 'eagletmt/ghcmod-vim' Plug 'eagletmt/neco-ghc' " clojure Plug 'tpope/vim-leiningen' Plug 'tpope/vim-projectionist' Plug 'tpope/vim-dispatch' Plug 'tpope/vim-fireplace' Plug 'marijnh/tern_for_vim' Plug 'jnwhiteh/vim-golang' Plug 'Blackrush/vim-gocode' Plug 'zah/nimrod.vim' Plug 'wting/rust.vim' Plug 'derekwyatt/vim-scala' " Plug 'ensime/ensime-vim' Plug 'othree/html5.vim' Plug 'dogrover/vim-pentadactyl' Plug 'superbrothers/vim-vimperator' Plug 'idris-hackers/idris-vim' Plug 'tpope/vim-fugitive' " git integration Plug 'kana/vim-textobj-user' Plug 'rbonvall/vim-textobj-latex' Plug 'kana/vim-textobj-indent' Plug 'bps/vim-textobj-python' Plug 'kana/vim-textobj-function' Plug 'rhysd/vim-grammarous' Plug 'tpope/vim-surround' Plug 'Lokaltog/vim-easymotion' Plug 'peterhoeg/vim-qml' Plug 'ekalinin/Dockerfile.vim' Plug 'digitaltoad/vim-jade' Plug 'jvoorhis/coq.vim' Plug 'MarcWeber/vim-addon-mw-utils' Plug 'tomtom/tlib_vim' Plug 'MarcWeber/vim-addon-actions' Plug 'MarcWeber/vim-addon-completion' Plug 'MarcWeber/vim-addon-goto-thing-at-cursor' Plug 'MarcWeber/vim-addon-errorformats' Plug 'MarcWeber/vim-addon-nix' " vim-sleuth? Plug 'urbit/hoon.vim' Plug 'ahf/twelf-syntax' Plug 'c-cube/vim-tptp' call plug#end() filetype plugin indent on set tw=0 expandtab ts=8 sts=2 sw=2 sm ai si set noml mls=5 " scan 5 lines for modelines syn on " enable syntax highlighting set hls " highlight search set bg=dark " dark background filetype plugin on au BufNewFile,BufRead *.vala setf cs au BufNewFile,BufRead *.md set ft=markdown au syntax java set ts=4 sts=4 sw=4 au BufNewFile,BufRead *.i set ft=swig au BufNewFile,BufRead *.s set ft=tptp au BufNewFile,BufRead *.s.out set ft=tptp au BufNewFile,BufRead *.tptp set ft=tptp au BufReadCmd *.epub call zip#Browse(expand("")) au syntax haskell setl omnifunc=necoghc#omnifunc let g:necoghc_enable_detailed_browse=1 let g:haskell_conceal = 0 au syntax tex setl iskeyword+=: let g:syntastic_tex_checkers=['lacheck'] let g:syntastic_scala_checkers=[] call tcomment#DefineType('nix', '# %s') " better paragraph object for tex files FIXME call textobj#user#plugin('latexparagraph', { \ 'paragraph': { \ 'pattern': ['\n\s*\n\\|\\end\\|\\begin', '\n\s*\n\\|\\begin\\|\\end'], \ 'select-a': 'al', \ 'select-i': 'il', \ }, \ }) " disable annoying "file is read-only" warnings au FileChangedRO * set noreadonly se foldlevel=99 set vb " turn on the "visual bell" - which is much quieter than the "audio blink" set nobackup se bs=2 let g:ycm_filetype_blacklist = { 'sql': 1 } let g:ycm_semantic_triggers = {'haskell' : ['.']} let g:ycm_show_diagnostics_ui = 1 let g:EclimCompletionMethod = 'omnifunc' " WIP function LedgerGeneratePostings() '<,'>!ledger -f - print --generated '<,'>s/\s\s\s+/ /g endfunction let g:jellybeans_background_color = '000000' if &term == "screen" || &term == "screen-bce" set t_ts=k set t_fs=\ endif set title " unite bindings if executable('ag') let g:unite_source_grep_command = 'ag' let g:unite_source_grep_default_opts = '--noheading --nocolor' let g:unite_source_rec_async_command= 'ag --nocolor --nogroup -g ""' endif call unite#filters#matcher_default#use(['matcher_fuzzy']) call unite#filters#sorter_default#use(['sorter_selecta']) call unite#custom#profile('default', 'context', { \ 'ignorecase': 1, \ 'smartcase': 1, \ }) " The prefix key nnoremap [unite] nmap [unite] " General purpose nnoremap [unite] :Unite -start-insert source " Files nnoremap [unite]f :Unite -start-insert file_rec/async " Grepping nnoremap [unite]g :Unite grep:. nnoremap [unite]d :Unite grep:.:-s:\(TODO\|FIXME\) " Content nnoremap [unite]o :Unite -start-insert -auto-preview outline nnoremap [unite]l :Unite -start-insert line nnoremap [unite]t :Unite -auto-preview -start-insert tag " Quickly switch between recent things nnoremap [unite]F :Unite buffer tab file_mru directory_mru nnoremap [unite]b :Unite buffer nnoremap [unite]m :Unite file_mru " Yank history nnoremap [unite]y :Unite history/yank