181 lines
		
	
	
	
		
			4.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
			
		
		
	
	
			181 lines
		
	
	
	
		
			4.8 KiB
		
	
	
	
		
			Text
		
	
	
	
	
	
set nocompatible              " required
 | 
						|
set splitright
 | 
						|
filetype off                  " required
 | 
						|
" Handy hack to force a write using sudo when you forget to 'sudo vi'
 | 
						|
cmap w!! w !sudo tee > /dev/null %
 | 
						|
 | 
						|
set pastetoggle=<F10>
 | 
						|
 | 
						|
set incsearch
 | 
						|
set encoding=utf-8
 | 
						|
set wrap
 | 
						|
set linebreak
 | 
						|
set nolist
 | 
						|
 | 
						|
" Attempt to fix python/python3 issue
 | 
						|
" To run py2 stuff, you can force with "vim --cmd 'let py2 = 1'
 | 
						|
"if exists('py2') && has('python')
 | 
						|
"elseif has('python3')
 | 
						|
if !has('patch-8.1.201')
 | 
						|
	silent! python3 1
 | 
						|
endif
 | 
						|
" 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 'gmarik/Vundle.vim'
 | 
						|
"
 | 
						|
" Python Plugins
 | 
						|
Plugin 'Valloric/YouCompleteMe'
 | 
						|
Plugin 'vim-syntastic/syntastic'
 | 
						|
Plugin 'nvie/vim-flake8'
 | 
						|
Plugin 'python-mode/python-mode'
 | 
						|
Plugin 'airblade/vim-gitgutter'
 | 
						|
"
 | 
						|
"general development plugins
 | 
						|
Plugin 'scrooloose/nerdtree'
 | 
						|
Plugin 'powerline/powerline', {'rtp': 'powerline/bindings/vim'}
 | 
						|
Plugin 'flazz/vim-colorschemes'
 | 
						|
Plugin 'davidhalter/jedi-vim'
 | 
						|
Plugin 'ervandew/supertab'
 | 
						|
Plugin 'ryanoasis/vim-webdevicons'
 | 
						|
Plugin 'direnv/direnv.vim'
 | 
						|
" This was fun and all, but getting data out sucked, so if they ever get an
 | 
						|
" update, maybe try again
 | 
						|
"Plugin 'ActivityWatch/aw-watcher-vim'
 | 
						|
"
 | 
						|
" Bind zonefile stuff
 | 
						|
Plugin 'seveas/bind.vim'
 | 
						|
"
 | 
						|
" extline extends rst stuff
 | 
						|
Plugin 'drmikehenry/vim-extline'
 | 
						|
Plugin 'tpope/vim-surround.git'
 | 
						|
Plugin 'brookhong/DBGPavim'
 | 
						|
Plugin 'dhruvasagar/vim-table-mode'
 | 
						|
Plugin 'godlygeek/tabular'
 | 
						|
Plugin 'plasticboy/vim-markdown'
 | 
						|
" Additional languages
 | 
						|
Plugin 'nathanielc/vim-tickscript'
 | 
						|
Plugin 'fatih/vim-go'
 | 
						|
Plugin 'dbeniamine/cheat.sh-vim'
 | 
						|
Plugin 'jacqueswww/vim-vyper'
 | 
						|
Plugin 'tomlion/vim-solidity'
 | 
						|
Plugin 'kien/ctrlp.vim'
 | 
						|
Plugin 'kmonad/kmonad-vim'
 | 
						|
 | 
						|
 | 
						|
"let g:deoplete#enable_at_startup = 1
 | 
						|
"Plugin 'Shougo/deoplete.nvim'
 | 
						|
 | 
						|
" Add all your plugins here (note older versions of Vundle used Bundle instead
 | 
						|
" of Plugin)
 | 
						|
 | 
						|
" All of your Plugins must be added before the following line
 | 
						|
call vundle#end()            " required
 | 
						|
filetype plugin indent on    " required
 | 
						|
"Powerline setup
 | 
						|
"set guifont=PowerLineSymbols\ DejaVu\ Sans\ Mono\ for\ Powerline\ 9
 | 
						|
" set guifont=DejaVu\ Sans\ Mono\ for\ Powerline\ Plus\ Nerd\ File\ Types\ 9
 | 
						|
set guifont=Sauce\ Code\ Powerline\ Plus\ Nerd\ File\ Types\ 9
 | 
						|
" set guifont=Anonymous\ Pro\ for\ Powerline\ Regular/9
 | 
						|
let g:Powerline_symbols = 'fancy'
 | 
						|
let g:airline_powerline_fonts = 1
 | 
						|
set laststatus=2
 | 
						|
 | 
						|
"NerdTree map to <f2>
 | 
						|
map <F2> :NERDTreeToggle<CR>
 | 
						|
 | 
						|
colorscheme jellybeans
 | 
						|
 | 
						|
"Make python-friendly tabs
 | 
						|
set tabstop=4
 | 
						|
set shiftwidth=4
 | 
						|
set smarttab
 | 
						|
set softtabstop=4
 | 
						|
set autoindent
 | 
						|
set expandtab
 | 
						|
let &colorcolumn="80,".join(range(81,999),",")
 | 
						|
 | 
						|
augroup vimrc_autocmds
 | 
						|
	autocmd!
 | 
						|
	"highlight characters past col 80
 | 
						|
	autocmd FileType python highlight Excess ctermbg=DarkGrey guibg=Black
 | 
						|
	autocmd FileType python match Excess /\%80v.*/
 | 
						|
	autocmd FileType python set nowrap
 | 
						|
"    autocmd FileType rst set textwidth=80
 | 
						|
    autocmd FileType markdown set textwidth=80
 | 
						|
augroup END
 | 
						|
 | 
						|
set mouse=a
 | 
						|
 | 
						|
" python-mode settings
 | 
						|
" 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"
 | 
						|
let g:pymode_lint_checker = "flake8,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
 | 
						|
nnoremap <space> za
 | 
						|
 | 
						|
let g:dbgPavimPort = 9000
 | 
						|
let g:dbgPavimBreakAtEntry = 0
 | 
						|
let g:dbgPavimOnce = 1
 | 
						|
 | 
						|
let python_highlight_all=1
 | 
						|
syntax on
 | 
						|
 | 
						|
let g:pymode_python = 'python3'
 | 
						|
 | 
						|
" For table mode RST friendliness
 | 
						|
let g:table_mode_corner_corner='+'
 | 
						|
let g:table_mode_header_fillchar='='
 | 
						|
let g:webdevicons_enable = 1
 | 
						|
let g:webdevicons_enable_nerdtree = 1
 | 
						|
set relativenumber
 | 
						|
set number
 | 
						|
let g:indentLine_fileTypeExclude = ['markdown']
 |