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 highlight ExtraWhitespace guibg=purple match ExtraWhitespace /\s\+$\| \+\ze\t/ autocmd BufWinEnter * match ExtraWhitespace /\s\+$\| \+\ze\t/ autocmd InsertEnter * match ExtraWhitespace /\s\+$%#\@