set encoding=utf8 " Stop word wrapping set nowrap " Except... on Makrdown. That's good stuff. autocmd FileType markdown setlocal wrap " Adjust system undo levels set undolevels=100 " Use system clipboard set clipboard=unnamed " Set tab width and convert tabs to spaces set tabstop=2 set softtabstop=2 set shiftwidth=2 set expandtab " Don't let Vim hide characters or make loud dings set conceallevel=1 set noerrorbells " Number gutter with relative line numbers " Relative lines encourage smarter movements in vim set number set relativenumber " Use search highlighting set hlsearch " Space above/beside cursor from screen edges set scrolloff=1 set sidescrolloff=5 " Disable mouse support set mouse=r let $NVIM_TUI_ENABLE_CURSOR_SHAPE=1 " Plugins with vim-plug if empty(glob('~/.vim/autoload/plug.vim')) silent !curl -fLo ~/.vim/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim autocmd VimEnter * PlugInstall | source $MYVIMRC endif call plug#begin('~/.vim/plugged') " Required Plug 'Shougo/unite.vim' " Visuals Plug 'dracula/vim' Plug 'vim-airline/vim-airline' Plug 'vim-airline/vim-airline-themes' Plug 'Yggdroot/indentLine' Plug 'airblade/vim-gitgutter' " Navigating Project Files Plug 'ctrlpvim/ctrlp.vim', { 'on': 'CtrlP' } Plug 'mhinz/vim-grepper' Plug 'Shougo/vimfiler.vim', { 'on': 'VimFiler' } " Languages Plug 'pangloss/vim-javascript' Plug 'helino/vim-json' " Code Editing Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } Plug 'w0rp/ale' " Movement Plug 'justinmk/vim-sneak' call plug#end() " Configuration " Theme: Dracula color dracula " vim-airline let g:airline#extensions#tabline#enabled=1 let g:airline_powerline_fonts=1 set laststatus=2 " indentLine let g:indentLine_enabled = 1 let g:indentLine_char = "⟩" " Leader let mapleader="\" " Return to last opened file nmap " adding empty lines nnoremap [ :put! =repeat(nr2char(10), v:count1)'[ nnoremap ] :put =repeat(nr2char(10), v:count1) " moving current line nnoremap m[ :execute 'move -1-'. v:count1 nnoremap m] :execute 'move +'. v:count1 " arrow keys resize pane nnoremap :vertical resize -1 nnoremap :vertical resize +1 nnoremap :resize -1 nnoremap :resize +1 " disable arrow keys in insert mode imap imap imap imap " Grepper nnoremap fp :Grepper-query nnoremap fb :Grepper-buffers-query- " File Buffer nnoremap :bnext! nnoremap :bprev! " Fuzzy Finder nnoremap p :CtrlP nnoremap t :CtrlP " vimfiler map ` :VimFiler -explorer map ~ :VimFilerCurrentDir -explorer -find " deoplete let g:deoplete#enable_at_startup = 1 inoremap pumvisible() ? "\" : "\" " sneak let g:sneak#s_next = 1 nmap f Sneak_f nmap F Sneak_F xmap f Sneak_f xmap F Sneak_F omap f Sneak_f omap F Sneak_F