dotfiles/vim/vimrc

104 lines
2.6 KiB
VimL

set nocompatible
set splitright
filetype off
" Handy hack to force a write using sudo when you forget to sudo vi
cmap w!! w !sudo tee > /dev/null %
"Make python-friendly tabs
set tabstop=4
set shiftwidth=4
set smarttab
set softtabstop=4
set autoindent
set rtp+=~/.vim/bundle/vundle/
set pastetoggle=<F10>
set incsearch
call vundle#rc()
"We are going to try the wrapping functions. We'll see how that works
"Python has nowrap set, so this generally shouldn't suck
set wrap
set linebreak
set nolist
" let Vundle manage Vundle
" required!
Plugin 'gmarik/vundle'
Plugin 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}
Plugin 'tpope/vim-fugitive'
Plugin 'scrooloose/nerdtree'
Plugin 'klen/python-mode'
Plugin 'davidhalter/jedi-vim'
Plugin 'ervandew/supertab'
Plugin 'Rykka/riv.vim'
Plugin 'Rykka/clickable.vim'
Plugin 'seveas/bind.vim'
Plugin 'altercation/vim-colors-solarized'
Plugin 'flazz/vim-colorschemes'
filetype plugin indent on
augroup vimrc_autocmds
autocmd!
" highlight characters past column 80
autocmd FileType python highlight Excess ctermbg=DarkGrey guibg=Black
autocmd FileType python match Excess /\%80v.*/
autocmd FileType python set nowrap
augroup END
"Powerline setup
set guifont=PowerLineSymbols\ DejaVu\ Sans\ Mono\ for\ Powerline\ 9
let g:Powerline_symbols = 'fancy'
set laststatus=2
"NerdTree map to <f2>
map <F2> :NERDTreeToggle<CR>
" Python-mode
" Activate rope
" Keys:
" K Show python docs
" <Ctrl-Space> Rope autocomplete
" <Ctrl-c>g Rope goto definition
" <Ctrl-c>d Rope show documentation
" <Ctrl-c>f Rope find occurrences
" <Leader>b Set, unset breakpoint (g:pymode_breakpoint enabled)
" [[ Jump on previous class or function (normal, visual, operator
" modes)
" ]] Jump on next class or function (normal, visual, operator
" modes)
" [M Jump on previous class or method (normal, visual, operator
" modes)
" ]M Jump on next class or method (normal, visual, operator
" modes)
let g:pymode_rope = 0
" Documentation
let g:pymode_doc = 1
let g:pymode_doc_key = 'K'
"Linting
let g:pymode_lint = 1
let g:pymode_lint_checker = "pyflakes,pep8"
" Auto check on save
let g:pymode_lint_write = 1
" Support virtualenv
let g:pymode_virtualenv = 1
" Enable breakpoints plugin
let g:pymode_breakpoint = 1
let g:pymode_breakpoint_key = '<leader>b'
" syntax highlighting
let g:pymode_syntax = 1
let g:pymode_syntax_all = 1
let g:pymode_syntax_indent_errors = g:pymode_syntax_all
let g:pymode_syntax_space_errors = g:pymode_syntax_all
" Don't autofold code
let g:pymode_folding = 0
let g:riv_fold_level = 0
let g:riv_fold_auto_update = 0
colorscheme jellybeans