runtime ftplugin/man.vim set runtimepath^=$HOME/.config/vim/.vim set viminfo= set number set relativenumber set title set bg=dark set go=a set mouse=a set nohlsearch set clipboard+=unnamedplus set noshowmode set noruler set laststatus=0 set noshowcmd set nocompatible set autoindent set cindent set smartindent set nowrap set ignorecase set smartcase set laststatus=2 set incsearch set wildignore=*.o,*.obj,*.bak,*.exe " Use pathogen (plugin manager) filetype off execute pathogen#infect() execute pathogen#helptags() syntax on filetype plugin on filetype plugin indent on " Automatically source .vimrc after saving autocmd BufWritePost ~/.vimrc source $MYVIMRC " Automatically source .inputrc after saving autocmd BufWritePost ~/.inputrc !bind -f ~/.inputrc " Automatically deletes all trailing whitespace and newlines at end of file on save. & reset cursor position autocmd BufWritePre * let currPos = getpos(".") autocmd BufWritePre * %s/\s\+$//e autocmd BufWritePre * %s/\n\+\%$//e autocmd BufWritePre * cal cursor(currPos[1], currPos[2]) " Mappings noremap dBx nnoremap s okzz nnoremap S Ojzz nnoremap Y y$ nnoremap - ddp nnoremap _ ddkP nnoremap "+yy nnoremap "+yW nnoremap "+p nnoremap i nnoremap :tabnew ~/.vimrc nnoremap :TlistToggle nnoremap :NERDTree inoremap /<++>"_c4l vnoremap "+y " show existing tab with 4 spaces width set tabstop=4 " when indenting with '>', use 4 spaces width set shiftwidth=4 " On pressing tab, insert 4 spaces set expandtab " Automatically use black on a Python file autocmd BufWritePost *.py !black --line-length=79 % " Pymode config let g:pymode = 1 let g:pymode_warnings = 0 let g:pymode_trim_whitespaces = 1 let g:pymode_options = 1 let g:pymode_options_max_line_length = 79 let g:pymode_options_colorcolumn = 1 let g:pymode_indent = 1 let g:pymode_indent_hanging_width = &shiftwidth let g:pymode_indent_hanging_width = 4 let g:pymode_doc = 1