set nocompatible " be iMproved, required filetype off " required set background=dark set rtp+=~/.vim/bundle/Vundle.vim call vundle#begin() Plugin 'ervandew/supertab' Plugin 'vim-scripts/DrawIt' Plugin 'takac/vim-hardtime' " tpope goodness Plugin 'tpope/vim-abolish' Plugin 'tpope/vim-surround' Plugin 'tpope/vim-repeat' " fancy ass ide stuff Plugin 'Shougo/deoplete.nvim' Plugin 'zchee/deoplete-clang' "Plugin 'Valloric/YouCompleteMe' Plugin 'SirVer/ultisnips' Plugin 'honza/vim-snippets' " make it look good Plugin 'junegunn/goyo.vim' " neomutt support Plugin 'neomutt/neomutt.vim' " dissaprove indented code to far "Plugin 'dodie/vim-disapprove-deep-indentation' call vundle#end() " required filetype plugin indent on " required filetype plugin on "General syntax on set showcmd " Show (partial) command in status line. "set showmatch " Show matching brackets. "set gdefault set ignorecase " Do case insensitive matching set smartcase " Do smart case matching set incsearch " Incremental search set hlsearch "set autowrite " Automatically save before commands like :next and :make "set hidden " Hide buffers when they are abandoned "set mouse=a " Enable mouse usage (all modes) set laststatus=0 " Hide the useless statusbar set relativenumber set number "set spell set ruler "Remove annoying ESC delay set ttimeout ttimeoutlen=20 "Change cursor to | when in insert let $NVIM_TUI_ENABLE_CURSOR_SHAPE = 1 "Autosave and Autoread set autoread set autowriteall set noswapfile set nobackup au CursorHold,CursorHoldI * checktime au CursorHold,CursorHoldI * silent! wa set updatetime=2000 "Persisten-undo magic set undofile "Disable the super annoying autocomment autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o "Make j and k not jump when wraping nnoremap j gj nnoremap k gk "set leader to comma let mapleader = "," "Math with qalc nnoremap m :.!~/bin/calc nnoremap i :read !latestimage nnoremap v :!open '' "read spaces in path's set isfname+=32 "Set tab to two spaces set expandtab set shiftwidth=2 set softtabstop=2 "Make tab into another escape "nnoremap "vnoremap gV "onoremap "inoremap `^ "inoremap set enc=utf-8 "sync paste buffer and vims register set clipboard^=unnamed " don't clobber up the directory with dot undo file set undodir=~/.vim/undodir/ "disable mouse set mouse= "Open new file nnoremap o :CtrlP nnoremap w :w " Hard time options let g:hardtime_maxcount = 2 let g:hardtime_default_on = 1 let g:hardtime_showmsg = 0 let g:hardtime_allow_different_key = 1 "Deoplete enable let g:deoplete#enable_at_startup = 1 let g:deoplete#sources#clang#libclang_path = '/usr/lib/libclang.so' let g:deoplete#sources#clang#clang_header = '/usr/lib/clang/' " supertab let g:SuperTabDefaultCompletionType = '' let g:SuperTabCrMapping = 0 " ultisnips let g:UltiSnipsSnippetsDir='~/.vim/snippets' let g:UltiSnipsEditSplit='vertical' let g:UltiSnipsExpandTrigger = '' let g:UltiSnipsJumpForwardTrigger = '' let g:UltiSnipsJumpBackwardTrigger = '' """"""""""""""""""""""" " CUSTOM TEXT-OBJECTS " """"""""""""""""""""""" for char in [ '_', '.', ':', ',', ';', '', '/', '', '*', '+', '%', '-', '#' ] execute 'xnoremap i' . char . ' :normal! T' . char . 'vt' . char . '' execute 'onoremap i' . char . ' :normal vi' . char . '' execute 'xnoremap a' . char . ' :normal! F' . char . 'vf' . char . '' execute 'onoremap a' . char . ' :normal va' . char . '' endfor